据我的了解可以用: DataAdpter, Command,DataSet,还有一种Paramters.Add的方法. 其实我真没搞清楚究竟有哪方法?
12 个解决方案
#1
其实你已经说啦。
1.通过DataAdpter,DataSet来批处理更新
2.通过Command来用Sql语句更新,update .....
3.通过Command调用存储过程更新
上面,Command就有可能要Paramters.Add...了。。。
1.通过DataAdpter,DataSet来批处理更新
2.通过Command来用Sql语句更新,update .....
3.通过Command调用存储过程更新
上面,Command就有可能要Paramters.Add...了。。。
#2
主要还是通过SQL语句
操作SQL语句的主要类还是 Command类
Command.ExecuteNonQuery() 执行一个没有返回值得SQL语句
如设置Command.CommandText="Update xxx SET dd=dd",或者“Delete xx From xx”之类的语句
Command.ExecuteReader() 执行有返回的SQL
像一个游标一样 一行一行读
DataAdpter的主要方法是Fill
一般是 “Select * FROM xx”
返回一个数据集
DataAapter也有Update方法 但是较少使用
DataAdapter算是批处理操作吧 1.x下应该还是一行一行处理 只是用户看不见而以
操作SQL语句的主要类还是 Command类
Command.ExecuteNonQuery() 执行一个没有返回值得SQL语句
如设置Command.CommandText="Update xxx SET dd=dd",或者“Delete xx From xx”之类的语句
Command.ExecuteReader() 执行有返回的SQL
像一个游标一样 一行一行读
DataAdpter的主要方法是Fill
一般是 “Select * FROM xx”
返回一个数据集
DataAapter也有Update方法 但是较少使用
DataAdapter算是批处理操作吧 1.x下应该还是一行一行处理 只是用户看不见而以
#3
1、自己构造sql语句,如 insert into A(**,**) values(**,**),再用SqlCommand.ExecuteNonQuery来对数据库进行操作。
2、通过SqlCommandBuilder来构建sql语句,DataAdapter.Update方法其实也是以此为基础。
这种方法,要求待操作的表必须有主键,不然不能对其Update/Delete/操作。
3、自己构建带Paramter的sql语句,包括两种:一种是SqlCommand有CommandText来构成,另一种就是用存储过程。
2、通过SqlCommandBuilder来构建sql语句,DataAdapter.Update方法其实也是以此为基础。
这种方法,要求待操作的表必须有主键,不然不能对其Update/Delete/操作。
3、自己构建带Paramter的sql语句,包括两种:一种是SqlCommand有CommandText来构成,另一种就是用存储过程。
#4
ref:
http://blog.csdn.net/knight94/archive/2006/04/15/664530.aspx
http://blog.csdn.net/knight94/archive/2006/04/15/664530.aspx
#5
都说完了
jf
jf
#6
CommandBuilder 与 sqlCommand 的区别是什么呢?
#7
我一共只有100分,不好意思.大家这么热情,真想给每人100分.真心感谢!
#8
mark
#9
再次谢谢你们,对我的帮助很大。
特别是Knight94(愚翁) 那篇,写得很详细,还有例子。
特别是Knight94(愚翁) 那篇,写得很详细,还有例子。
#10
我最近也在做 c#连接数据库。。新手,看了很多例子,感觉也很迷惑。。借楼主宝地来学习一下。
#11
A.SQL指令
i. 检查SQL的输入,并使用参数,直接使用字符连接容易遭受注入式攻击。
ii. 仅返回需要的行和例
iii. 对大的数据集使用分页功能
iv. 批次执行SQL,避免多次往返。
v. 如果没有数据返回则使用ExecuteNonQuery方法
vi. 当返回一个标量时,使用ExecuteScalar方法
vii. 不要在运行时间使用CommandBuilder,尽管很省事,但是开销很大。
B.存储过程
i. 尽量使用存储过程
ii. 对于OleDbCommand,指令类型为CommandType.Text
iii. 使用SqlCommand,指令类型为CommandType.StoredProcedure
iv. 尽可能使用输出参数
v. 考虑在SQL Server中SET NOCOUNT ON,即关闭SQL Server的记数功能。
i. 检查SQL的输入,并使用参数,直接使用字符连接容易遭受注入式攻击。
ii. 仅返回需要的行和例
iii. 对大的数据集使用分页功能
iv. 批次执行SQL,避免多次往返。
v. 如果没有数据返回则使用ExecuteNonQuery方法
vi. 当返回一个标量时,使用ExecuteScalar方法
vii. 不要在运行时间使用CommandBuilder,尽管很省事,但是开销很大。
B.存储过程
i. 尽量使用存储过程
ii. 对于OleDbCommand,指令类型为CommandType.Text
iii. 使用SqlCommand,指令类型为CommandType.StoredProcedure
iv. 尽可能使用输出参数
v. 考虑在SQL Server中SET NOCOUNT ON,即关闭SQL Server的记数功能。
#12
标记,学习。
#1
其实你已经说啦。
1.通过DataAdpter,DataSet来批处理更新
2.通过Command来用Sql语句更新,update .....
3.通过Command调用存储过程更新
上面,Command就有可能要Paramters.Add...了。。。
1.通过DataAdpter,DataSet来批处理更新
2.通过Command来用Sql语句更新,update .....
3.通过Command调用存储过程更新
上面,Command就有可能要Paramters.Add...了。。。
#2
主要还是通过SQL语句
操作SQL语句的主要类还是 Command类
Command.ExecuteNonQuery() 执行一个没有返回值得SQL语句
如设置Command.CommandText="Update xxx SET dd=dd",或者“Delete xx From xx”之类的语句
Command.ExecuteReader() 执行有返回的SQL
像一个游标一样 一行一行读
DataAdpter的主要方法是Fill
一般是 “Select * FROM xx”
返回一个数据集
DataAapter也有Update方法 但是较少使用
DataAdapter算是批处理操作吧 1.x下应该还是一行一行处理 只是用户看不见而以
操作SQL语句的主要类还是 Command类
Command.ExecuteNonQuery() 执行一个没有返回值得SQL语句
如设置Command.CommandText="Update xxx SET dd=dd",或者“Delete xx From xx”之类的语句
Command.ExecuteReader() 执行有返回的SQL
像一个游标一样 一行一行读
DataAdpter的主要方法是Fill
一般是 “Select * FROM xx”
返回一个数据集
DataAapter也有Update方法 但是较少使用
DataAdapter算是批处理操作吧 1.x下应该还是一行一行处理 只是用户看不见而以
#3
1、自己构造sql语句,如 insert into A(**,**) values(**,**),再用SqlCommand.ExecuteNonQuery来对数据库进行操作。
2、通过SqlCommandBuilder来构建sql语句,DataAdapter.Update方法其实也是以此为基础。
这种方法,要求待操作的表必须有主键,不然不能对其Update/Delete/操作。
3、自己构建带Paramter的sql语句,包括两种:一种是SqlCommand有CommandText来构成,另一种就是用存储过程。
2、通过SqlCommandBuilder来构建sql语句,DataAdapter.Update方法其实也是以此为基础。
这种方法,要求待操作的表必须有主键,不然不能对其Update/Delete/操作。
3、自己构建带Paramter的sql语句,包括两种:一种是SqlCommand有CommandText来构成,另一种就是用存储过程。
#4
ref:
http://blog.csdn.net/knight94/archive/2006/04/15/664530.aspx
http://blog.csdn.net/knight94/archive/2006/04/15/664530.aspx
#5
都说完了
jf
jf
#6
CommandBuilder 与 sqlCommand 的区别是什么呢?
#7
我一共只有100分,不好意思.大家这么热情,真想给每人100分.真心感谢!
#8
mark
#9
再次谢谢你们,对我的帮助很大。
特别是Knight94(愚翁) 那篇,写得很详细,还有例子。
特别是Knight94(愚翁) 那篇,写得很详细,还有例子。
#10
我最近也在做 c#连接数据库。。新手,看了很多例子,感觉也很迷惑。。借楼主宝地来学习一下。
#11
A.SQL指令
i. 检查SQL的输入,并使用参数,直接使用字符连接容易遭受注入式攻击。
ii. 仅返回需要的行和例
iii. 对大的数据集使用分页功能
iv. 批次执行SQL,避免多次往返。
v. 如果没有数据返回则使用ExecuteNonQuery方法
vi. 当返回一个标量时,使用ExecuteScalar方法
vii. 不要在运行时间使用CommandBuilder,尽管很省事,但是开销很大。
B.存储过程
i. 尽量使用存储过程
ii. 对于OleDbCommand,指令类型为CommandType.Text
iii. 使用SqlCommand,指令类型为CommandType.StoredProcedure
iv. 尽可能使用输出参数
v. 考虑在SQL Server中SET NOCOUNT ON,即关闭SQL Server的记数功能。
i. 检查SQL的输入,并使用参数,直接使用字符连接容易遭受注入式攻击。
ii. 仅返回需要的行和例
iii. 对大的数据集使用分页功能
iv. 批次执行SQL,避免多次往返。
v. 如果没有数据返回则使用ExecuteNonQuery方法
vi. 当返回一个标量时,使用ExecuteScalar方法
vii. 不要在运行时间使用CommandBuilder,尽管很省事,但是开销很大。
B.存储过程
i. 尽量使用存储过程
ii. 对于OleDbCommand,指令类型为CommandType.Text
iii. 使用SqlCommand,指令类型为CommandType.StoredProcedure
iv. 尽可能使用输出参数
v. 考虑在SQL Server中SET NOCOUNT ON,即关闭SQL Server的记数功能。
#12
标记,学习。