VS连接SQL Server数据库,增删改查详细教程(C#代码)_转载

工具:
1.Visual Studio (我使用的是vs2013)
2.SQL Server  (我使用的是sql server2008)
操作:
1.打开SQL Server,打开后会看到数据库的初始链接界面。(如下图)
 

 

2.复制上图中的“服务器名称”,然后点击“连接”,进入数据库。
3.打开vs,创建好自己要用的项目,我写的项目名称叫做:‘RestaurantSystem’
4.工具->连接到数据库->在服务器名里面,粘贴复制的服务器名
5.在下面选择自己要连接的数据库名称(也可以手动输入,我连接的是我自己创建的数据库:RestaurantDBMS),确定。
 

 

6.打开“服务器资源管理器”,会看到有下图信息,点击“表”可以看到数据库里面创建的数据表
 

 

连接代码:
完后上述操作后只是把数据库添加到了vs里,要想在项目里对数据库进行编辑,还需要写一些代码。
1.打开自己的项目,打开解决方案资源管理器,右击项目名称添加一个类文件(类名根据自己项目取)
 

 

2.打开类文件,写入以下代码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.SqlClient;
using System.Data;              //这几个命名空间是一定要有的;
namespace RestaurantSystem
{
    class ResM        //这是我项目里写的,命名为ResM;
    {
        private string MySqlCon =              //在下面我会介绍这部分怎么填写;
        public DataTable ExecuteQuery(string sqlStr)      //用于查询;其实是相当于提供一个可以传参的函数,到时候写一个sql语句,存在string里,传给这个函数,就会自动执行。
        {
            SqlConnection con = new SqlConnection(@MySqlCon);
            con.Open();
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = con;
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = sqlStr;
            DataTable dt = new DataTable();
            SqlDataAdapter msda;
            msda = new SqlDataAdapter(cmd);
            msda.Fill(dt);
            con.Close();
            return dt;
        }
        public int ExecuteUpdate(string sqlStr)      //用于增删改;
        {
            SqlConnection con = new SqlConnection(@MySqlCon);
            con.Open();
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = con;
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = sqlStr;
            int iud = 0;
            iud = cmd.ExecuteNonQuery();
            con.Close();
            return iud;
        }
    }
}
3.修改代码里的MySqlCon,这一步用来连接到数据库,至关重要。
在“服务器资源管理”处选中数据库,然后可以在“属性”窗口找到“连接字符串”,复制其内容,赋给MySqlCon。比如我修改后是:
MySqlCon = "Data Source=DESKTOP-0RC5ORD\\SQLEXPRESS;Initial Catalog=RestaurantDBMS;Integrated Security=True";
 

 

完成这些操作后,就可以在form里写代码来修改数据库了。
增删改查:
增删改查的实现都是sql语句,把写好的sql语句赋给字符串,然后执行。这里需要注意的是,增删改是用上面的
ExecuteUpdate()函数,而查询是用的ExecuteQuery()函数。接下来以我的代码进行举例:
1.查询,不显示查询结果(数据表名字是ADMINISTRATE):
String str1 = Account.Text;       //form里面有输入账号密码的文本框,这一步是获取其内容;
String str2 = Password.Text;
String str3 = "select A#,PASS FROM ADMINISTRATE WHERE A#='" + str1 + "'AND PASS='" + str2 + "'";   //编写sql语句,这句话读者可以输出一下,其实结果是一个标准的sql语句,所以读者在编写自己代码的时候也需要这样的格式来写一个sql,赋值给一个string变量,然后传给ExecuteQuery来执行;
                ResM r1 = new ResM();   //我写的那个用来连接数据库的类是ResM,所以用其创建对象;
                DataTable d1 = new DataTable();   //因为查询是会有结果返回的,所以需要用DataTable的对象来承接返回的结果。
                d1 = r1.ExecuteQuery(str3);          //使用ExecuteQuery()执行sql语句;
                if (d1 != null && d1.Rows.Count > 0)    //查询有结果
                {
                    MessageBox.Show("欢迎使用!", "登录成功",
                               MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
                    Form StoMes = new Storage();     //这三行代码是实现界面跳转;
                    Hide();
                    StoMes.Show();
                }
2.查询,显示查询结果(实现这一步需要在form里面添加dataGridView控件,用来存放结果)
String str1 = textBox1.Text;
String str2 = "SELECT NAME,SEX FROM PERSON WHERE P#='"+ str1 +"'";
                    d1 = r1.ExecuteQuery(str2);
                    if(d1!=null&&d1.Rows.Count>0)
                    {
                        dataGridView1.DataSource = d1;   //将查询结果放入到dataGridView;
            }
dataGridView控件的显示格式可以通过代码来修改,自行百度,在此不做介绍。
3.增删改非常相似,只要有数据库的基础,可以自行编写,在此只举例增加数据;
String str1 = textBox1.Text; //人员编号;
String str2 = textBox2.Text;  //人员姓名;
String str3 = textBox3.Text;  //人员性别;
String str4 = "INSERT INTO PERSON (P#,PNAME,SEX) VALUES('" +str1 + "','" + str2 + "','" + str3 + "')";
ResM r2 = new ResM();
 int d2 = r2.ExecuteUpdate(str3);//执行后会有返回值,是int类型,如果执行失败会返回0;
 if (d2 != 0)
 {
      MessageBox.Show("添加成功!", "添加结果",
      MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
      MessageBox.Show("添加失败!此工号已存在!", "添加结果",
      MessageBoxButtons.OK, MessageBoxIcon.Information);
}

转载: https://blog.csdn.net/kiss__soul/article/details/80316788
posted @ 2019-01-23 15:51  你的雷哥  阅读(17534)  评论(0编辑  收藏  举报