ASP.NET(C#)操作SQL Server数据库

准备工作开发环境:Web环境:ASP.NET(C#)、SQL Server开发工具:Visual Studio、SQL Server Management Studio测试环境:Windows 10、Google Chrome数据库设计:本次教程中,假设数据库名为

News
,并且我们要操作的数据表名为
Users
。表的结构设计如下图所示:
引入相关命名空间代码语言:javascript代码运行次数:0运行复制
using System.Data;using System.Data.Sql;using System.Data.SqlClient;

在用c#操作sql server数据库时,必须在.cs文件头部加入以上命名空间。

创建数据库连接对象代码语言:javascript代码运行次数:0运行复制
//配置连接信息:string Conf = "Data Source = .; Initial Catalog = News; Integrated Security = SSPI";//创建SQL连接对象:SqlConnection SqlCon = new SqlConnection(Conf);

该段代码写在需要创建数据库对象的地方。其中

Data Source
为数据库服务器来源,本地服务器可用小数点表示;
Initial Catalog
为欲连接的数据库名称;
Integrated Security
为身份验证方式,如果是“SQL Server身份验证”则需要提供用户名和密码,如果是“Windows身份验证”则填写“SSPI”。

打开/关闭数据库代码语言:javascript代码运行次数:0运行复制
//打开数据库:SqlCon.Open();//关闭数据库:SqlCon.Close();

每次进行数据库操作时,都必须先打开数据库,操作结束后,都必须关闭数据库,否则程序会运行出错。这里的SqlCon为上面创建的SQL数据库连接对象。

执行SQL语句代码语言:javascript代码运行次数:0运行复制
//创建数据库操作对象SqlCommand SqlCmd = new SqlCommand(SqlStr, SqlCon);//执行SQL语句SqlCmd.ExecuteNonQuery();

其中SqlStr为SQL语句字符串变量,SqlCon为前面创建的SQL连接对象。

插入操作示例(增)

Users
表中插入一条用户数据:

代码语言:javascript代码运行次数:0运行复制
//打开数据库:SqlCon.Open();   //获取表单控件信息:string name = Username.Text.Trim();string pwd  = Password.Text;string sex  = Male.Checked ? "1" : "0";string date = Convert.ToDateTime(Birthday.Text).ToString("yyyy-MM-dd");string tel  = Phone.Text.Trim();//编写SQL插入语句:string SqlStr = "INSERT INTO Users(Username, Password, Sex, Birthday, Phone) ";SqlStr += "VALUES('" + name + "', '" + pwd + "', " + sex + ", '" + date + "', '" + tel + "')";//执行数据库操作:SqlCommand SqlCmd = new SqlCommand(SqlStr, SqlCon);SqlCmd.ExecuteNonQuery();//关闭数据库:SqlCon.Close();
删除操作示例(删)

将数据库表

Users
中“UserID = 3”这条数据删除掉:

代码语言:javascript代码运行次数:0运行复制
//打开数据库:SqlCon.Open();//编写数据库语句:string SqlStr = "DELETE FROM Users WHERE UserID = 3";//执行数据库操作:SqlCommand SqlCmd = new SqlCommand(SqlStr, SqlCon);SqlCmd.ExecuteNonQuery();//关闭数据库:SqlCon.Close();
查询操作示例(查)

查询数据库表

Users
中“UserID = 4”这条数据库的“Username”的值:

代码语言:javascript代码运行次数:0运行复制
//打开数据库SqlCon.Open();//编写SQL语句:string SqlStr = "SELECT * FROM Users WHERE UserID = 4";//创建数据库操作对象:SqlCommand SqlCmd = new SqlCommand(SqlStr, SqlCon);//创建数据库数据读取对象,并绑定查询到的数据:SqlDataReader SqlData = SqlCmd.ExecuteReader();//判断是否查询到有数据:if(!SqlData.Read())  Response.Write("查询无结果!");else{    //获取查询到的内容:    string name = SqlData["Username"].ToString();    Response.Write("查询到的用户名是:" + name);}//关闭数据库:SqlCon.Close();
更新操作示例(改)

修改数据表

Users
中“UserID = 12”这条数据的“Birthday”和“Phone”:

代码语言:javascript代码运行次数:0运行复制
//打开数据库SqlCon.Open();//获取表单控件信息:string date = Convert.ToDateTime(Birthday.Text).ToString("yyyy-MM-dd");string tel  = Phone.Text.Trim();//编写SQL语句:string SqlStr = "UPDATE Users SET Birthday = '" + date + "', Phone = '" + tel + "' WHERE UserID = 12";//执行数据库操作SqlCommand SqlCmd = new SqlCommand(SqlStr, SqlCon);SqlCmd.ExecuteNonQuery();//关闭数据库:SqlCon.Close();
后语