C#WinForm连接查询数据库sql

目录

一、建立WinForm文件

二、开始设计窗体的板面

1.添加控件

2.修改控件属性

三、连接数据库sql

1.先点击工具栏,然后选择连接到数据库

2.选择sql server

3.开始选择想要的数据库

4.双击Button控件,进出button的C#编辑的地方

四、用C#查询数据库数据

1.加一个命名空间

2.在button控件代码里写查询数据库语句

五、总结



一、建立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是个巨大的工程,学习也是很漫长,也会很痛苦,但是只要你理解了,也会变得很简单,很有趣