C#WinForm连接查询数据库sql
目录
一、建立WinForm文件
建立一个你想要的项目,选择Windows桌面的Windows窗体应用(.NET Framework)框架可以选择.NET Framework 4.7.2,版本较低可以选择.NET Framework 4.7.1
二、开始设计窗体的板面
1.添加控件
添加两个控件button和DataGridView
2.修改控件属性
Button属性:name:btnInquiry(驼峰命名法,前面是控件名的缩写,后面是控件要执行的内容),BackColor:可以选择一个你自己想要的控件颜色,text:查询,Anchor属性为Top, Left, Right
DataGridView属性:更改Anchor属性为Top, Left, Right让它跟随主窗体大小变大变小
三、连接数据库sql
1.先点击工具栏,然后选择连接到数据库
2.选择sql server
3.开始选择想要的数据库
4.双击Button控件,进出button的点击事件中编写C#
四、用C#查询数据库数据
1.加一个命名空间
要在命名空间上加入下面一串代码,免得不支持sql
using System.Data.SqlClient;
2.在button控件代码里写查询数据库语句
查询:
private void btnInquiry_Click(object sender, EventArgs e)
{
//连接数据库
//server:自己电脑服务器名
//user id:SQL server 验证后的用户名
//password:SQL server 验证后的密码
//database:所要用的数据库
string conStr = "server=不想写作业;user id=sa;password=1256;database=student";
SqlConnection con = new SqlConnection(conStr);
//打开数据库
con.Open();
//查询sql语句
string sql = "select *from Student";
//创建SqlDataAdapter对象,并将查询语句和连接对象并联
SqlDataAdapter da = new SqlDataAdapter(sql, con);
//创建DataTable对象,用于存储数据结果
DataTable ds = new DataTable();
//填充数据集
da.Fill(ds);
//关闭数据库
con.Close();
//把储存的数据结果绑定到dataGridView表格中
dataGridView1.DataSource = ds;
}
然后就可以把所有数据都给查询出来了,这是个简单的查询
添加数据:
//1、创建链接
SqlConnection conn = new
SqlConnection("server=.;database=studentmanage;uid=sa;pwd=123456;");
//打开
conn.Open();
//创建命令
SqlCommand cmd = new SqlCommand("select * from department where deptname like
'%"+textBox2.Text+"%'",conn);
//执行命令
//object obj = cmd.ExecuteScalar();
//textBox1.Text = obj.ToString();
SqlDataReader sdr=cmd.ExecuteReader();
while (sdr.Read())
{
txtDataView.AppendText(sdr["id"] + "|");
txtDataView.AppendText(sdr["deptname"] + "|");
txtDataView.AppendText(sdr["parentid"] + "|");
txtDataView.AppendText(sdr["testname"] + "|");
txtDataView.AppendText("\r\n");
}
conn.Close();
txtDataView.AppendText(sdr["id"] + "|");可以根据自己的需要来添加字段,\r\n是换行,|是输入自己的内容的地方,还有就是ExecuteNonQuery()方法是实现增删查的
以上两种方法在button里写,是比较简单的查询和添加,更为复杂的还有comboBox控件下拉查询
comboBox控件下拉查询:(这里要在comboBox控件里面写)
//先连接数据库,和上面步骤一样
string sql = "select * from student"; //查询数据所有信息
2 DataTable dt = SqlHelper.DataTable(sql);
3 cmbName.DataSource = dt; //下拉框数据源为dt
4 cmbName.DisplayMember = "RoleName";//显示成员
5 cmbName.ValueMember = "RoleID"; //值成员(类似与索引)
然后赋值list.Add(new DictionaryEntry("stuname", "学生姓名"));stuname是数据库的字段,学生姓名是给它的命名
comboBox1.Items.Add(new { key = "key", value = "value" });
ArrayList list = new ArrayList();
list.Add(new DictionaryEntry("ID", "ID"));
list.Add(new DictionaryEntry("stuname", "学生姓名"));
list.Add(new DictionaryEntry("sex", "性别"));
list.Add(new DictionaryEntry("age", "年龄"));
comboBox1.DataSource = list;
comboBox1.DisplayMember = "Value";//显示出来的。Text
comboBox1.ValueMember = "Key";// value值。
如果还想要更好的在DataGridView中显示可以让DataGridView连接数据库,在编辑列然后让每个字段给它们赋值
然后再DataGridView连接自己所需要的数据库
在dataGridView中写语句给每个字段赋值
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
int rowindex = dataGridView1.CurrentCell.RowIndex;
int id = int.Parse(dataGridView1.Rows[rowindex].Cells["col_id"].Value.ToString());
string deptname = dataGridView1.Rows[rowindex].Cells["col_dept_name"].Value.ToString();
int pid = int.Parse(dataGridView1.Rows[rowindex].Cells["col_pid"].Value.ToString());
txtId.Text = id.ToString();
txtDeptName.Text = deptname;
cboParent.SelectedValue = pid;
}
五、总结
总体来说C#WinForm连接查询数据库sql还相对比较简单的,想要达到美观的效果还需要进一步的学习,通过语句可以查询到自己想要的内容,查询语句和sql语句相关
还有就是C#WinForm连接查询数据库sql运用的也比较广泛,比如:图书馆管理系统,学生管理系统,汽车管理系统,商店管理系统等,在一定程度上方便了大家,减轻了大家的工作压力。
使用C#WinForm连接查询数据库sql有什么好处呢?好处有很多,他可以收集强大的数据库,然后再让我们更简便的,更清楚的知道数据,在复杂的数据也会变得简便起来
C#winform是个巨大的工程,学习也是很漫长,也会很痛苦,但是只要你理解了,也会变得很简单,很有趣