using System;
using System.Collections.Generic;
using System.Data;
using System.Data.OleDb;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Data.SqlClient;
namespace WpfApplication1
{
public partial class MainWindow : Window
{
public MainWindow ()
{
InitializeComponent ();
}
public class ConnDb
{
OleDbConnection conn = null;//连接数据库的对象
//下面是构造函数连接数据库
public ConnDb ()
{
if (conn == null)//判断连接是否为空
{
conn = new OleDbConnection ();
conn.ConnectionString = "provider=sqloledb.1;data source=.;initial catalog=capucivar;user id=sa;pwd=";//连接数据库的字符串 }
if (conn.State == ConnectionState.Closed)
{
conn.Open ();//打开数据库连接
}
}
}
//下面这个方法是从数据库中查找数据的方法
public DataSet query (string sql)
{
DataSet ds = new DataSet ();//DataSet是表的集合
OleDbDataAdapter da = new OleDbDataAdapter (sql, conn);//从数据库中查询
da.Fill (ds);//将数据填充到DataSet
connClose ();//关闭连接
return ds;//返回结果
}
//下面的方法是对数据库进行更新
public int update (string sql)
{
OleDbCommand oc = new OleDbCommand ();//表示要对数据源执行的SQL语句或存储过程
oc.CommandText = sql;//设置命令的文本
oc.CommandType = CommandType.Text;//设置命令的类型
oc.Connection = conn;//设置命令的连接
int x = oc.ExecuteNonQuery ();//执行SQL语句
connClose ();//关闭连接
return x; //返回一个影响行数
}
//下面的connClose()方法是关闭数据库连接
public void connClose ()
{
if (conn.State == ConnectionState.Open)
{//判断数据库的连接状态,如果状态是打开的话就将它关闭
conn.Close ();
}
}
}
private void button_Click (object sender, RoutedEventArgs e)
{
string uname = this.textBox.Text; string upass = this.textBox1.Text;
string sql = string.Format ("insert into users values('{0}','{1}')", uname, upass);//拼写sql语句将该用户信息插入到数据库中
int x = new ConnDb ().update (sql);//通过ConnDb()对象的update()方法执行sql语句并返回一个影响行数
if (x > 0)
{//如果影响行数大于0则说明插入成功,否则的话插入失败
MessageBox.Show ("添加成功!");
}
else
{
MessageBox.Show ("添加失败!");
}
}
public void refurbish ()
{
string sql = "select * from users";//sql语句查询数据
DataSet ds = new ConnDb ().query (sql);//查询返回一个DataSet
this.listBox.DisplayMemberPath = "username";//listBox中要显示的列
this.listBox.DataContext = ds.Tables[0];// listBox的数据源
}
private void button1_Click (object sender, RoutedEventArgs e)
{
{
string uname = this.listBox.ToString();//得到listBox中所选的值
string sql = string.Format ("delete from users where username='{0}'", uname);//拼写sql语句删除用户
int x = new ConnDb ().update (sql);//调用update()方法返回影响行数
if (x > 0)
{//根据返回的影响行数判断删除是否成功
MessageBox.Show ("删除成功!");
}
else
{
MessageBox.Show ("删除失败!");
}
}
}
private void button2_Click (object sender, RoutedEventArgs e)
{
}
}
}
这个源代码来自在“”https://developer.51cto.com/article/115491.html
纯不懂,所以是全抄的