在对SQL进行操作之前,建议对SQL语句的指令有多了解,熟悉。在写程序要先条件相应的引用using System.Data.SqlClient;
要实现SQL Server的增删改查功能,需要做以下步奏:
1.创建连接字符串
string constr = "Data Source=.;Initial Catalog=Book;User ID=sa;Password=123";
Data Source的服务器实例如果是.或者127.0.0.1,表示本地服务器实例。
2.创建连接对象--实例化Sqlconnection这个类,并using
3.创建SqlCammand字符指令
string sql = "insert into LIbrary values('C#程序设计教程','中华出版社',7724992,18)";
4.创建SqlCamman连接对象--实例化SqlCammand这个,并using
5.打开数据库
6.执行 SqlCamman指令
//selectSQL.ExecuteNonQuery();
//多用于insert,delete,update。ExecuteNonQuery()返回一个int类型的返回值,表示受影响的行数;
//只有insert,delete,update,适用于其它sql语句只会返回一个-1的值
//selectSQL.ExecuteScalar();//当执行返回单个结果的时候
//selectSQL.ExecuteReader();//当查询多行多列结果的时候
7.关闭
(1)向数据库中插入一条数据,在下列代码段中,用到insert对数据进行插入。
insert into (这里不加条件表示对插入表中所有的数据)表名 values(表中字段元素)
使用SqlCommand对象中的ExecuteNonQuery()方法捕获数据表中受影响的行数(int)
#region 向数据库insert一条数据
数据库连接步骤
//1.创建连接字符串
//Data Source=服务实例;
//Initial Catalog=数据库库名;
//integrated Security=ture;使用wibndows账户登录实例
//string constr = "Data Source=127.0.0.1;Initial Catalog=Book;integrated Security=ture";
//使用数据库账户登录UserID=用户名;Password=用户密码
string constr = "Data Source=.;Initial Catalog=Book;User ID=sa;Password=123";
//2.创建连接对象
using (SqlConnection con = new SqlConnection(constr))
{
//3.创建sql数据查询语句
string sql = "insert into LIbrary values('C#程序设计教程','中华出版社',7724992,18)";
//insert into SQL语句 insert into 表名 values(列1,列2,...列n)
//4.创建SQL执行对象 SqlCommand
using (SqlCommand sqlCommand = new SqlCommand(sql, con))
{
int r = 0;
//5.打开连接
con.Open();
//r = sqlCommand.ExecuteNonQuery();//ExecuteNonQuery方法计算sql语句对表的影响行数
//6.执行sql语句
try
{
r = Convert.ToInt32(sqlCommand.ExecuteNonQuery());//ExecuteNonQuery方法计算sql语句对表的影响行数
}
catch (Exception)
{
Exception ex = new Exception();
Console.WriteLine(ex);
}
Console.WriteLine("Library表中受影响的行数有{0}行", r);
Console.ReadKey();
}
}
#endregion
(2)从数据库中删除数据
string deleteSql = "delete from Library where ID=1";
delete(这里可以写要删除的特定数据)from 表名 where 条件
truncate 表名
使用delete或truncate都可以对数据进行删除,前者根据条件来对数据进行删除,后者则直接删除所有表数据,保留表结构,当然前者也可以删除表中所有数据,不过在效率上truncate的效率更高。
#region 从数据库中删除一条数据
//1.创建数据库连接字符串
string constr3 = "Data Source=127.0.0.1;Initial Catalog=Book;User ID=sa;Password=123";
//2.创建连接对象
using (SqlConnection sqlConnection = new SqlConnection(constr3))
{
//3.创建SQL语句
string deleteSql = "delete from Library where ID=1";
//4.创建SqlCammand对象
using (SqlCommand delete = new SqlCommand(deleteSql, sqlConnection))
{
//5.打开数据库
sqlConnection.Open();
//6.执行sql语句
delete.ExecuteNonQuery();
Console.ReadKey();
}
}
#endregion
(3)更新数据库中的数据
string UpdateSql = "update Library set BookName= 'C#编程指导技术2' where ID=5";
update 表名 set 字段名=内容 where 条件
#region 更新数据库的数据
//1、创建连接字符串
string constr1 = "Data Source=.;Initial Catalog=Book;Integrated Security=True";
//2、创建连接对象
using (SqlConnection update=new SqlConnection(constr1))
{
//3、创建SQL语句
string UpdateSql = "update Library set BookName= 'C#编程指导技术2' where ID=5";
//4、创建SqlCammand对象
using (SqlCommand updateCommand=new SqlCommand(UpdateSql, update))
{
//5、打开数据库
update.Open();
// 6、执行SQL语句
updateCommand.ExecuteNonQuery();
}
}
#endregion
(4)从数据库中查询数据
string selectSql = "select BookName from Library where ID=5";
select (查询条件) from 表名 where 条件
#region 从数据库查询数据
//1.创建连接字符串
string constr2 = "Data Source=.;Initial Catalog=Book;Integrated Security=true";
//2.创建连接对象
using (SqlConnection select = new SqlConnection(constr2))
{
//3.创建sql语句
string selectSql = "select BookName from Library where ID=5";
//4.创建SqlCommand对象
using (SqlCommand selectSQL=new SqlCommand(selectSql, select))
{
//5.打开数据库
select.Open();
//6.执行SQL语句
string r=Convert.ToString(selectSQL.ExecuteScalar());
//selectSQL.ExecuteNonQuery(); //多用于insert,delete,update。ExecuteNonQuery()返回一个int类型的返回值,表示受影响的行数;
//只有insert,delete,update,适用于其它sql语句只会返回一个-1的值
//selectSQL.ExecuteScalar();//当执行返回单个结果的时候
//selectSQL.ExecuteReader();//当查询多行多列结果的时候
Console.WriteLine(r);
Console.ReadKey();
}
}
#endregion
以上内容通过控制台演示,详细源码链接