社区
C#
帖子详情
用1个SqlCommand对象执行多个不同的命令,会有什么影响吗?
greenery
2003-11-14 09:19:44
在一个讲述ASP.Net的微软的培训资料中,提到不要用1个SqlCommand对象执行多个不同的命令,不知道是不是我记错了
...全文
581
15
打赏
收藏
用1个SqlCommand对象执行多个不同的命令,会有什么影响吗?
在一个讲述ASP.Net的微软的培训资料中,提到不要用1个SqlCommand对象执行多个不同的命令,不知道是不是我记错了
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
greenery
2003-11-20
打赏
举报
回复
谢谢gpontop()和各位的解析,我清楚了。
我会调整我得代码的。
greenery
2003-11-18
打赏
举报
回复
to: gpontop
现在我除了delete没有用到以外,其它3个我都在这个SqlCommand用到了,这样是不是会影响什么的啊。
Edifier0709
2003-11-18
打赏
举报
回复
UP
gpontop
2003-11-18
打赏
举报
回复
首先,从.net framework sdk上面关于DataAdapter的文档并不能直接看出会有什么潜在的影响,然而,UpdateCommand、InsertCommand和DeleteCommand都是用于执行DataAdapter.Update()方法的,并且文档行上还提到了“自动生成命令”的问题,所以这种潜在的影响是很难估量的。
其次,从程序结构的可读性和避免意外错误的角度,我觉得还是分别建立不同的commands好些。总是将一个变量用在不同的地方会导致含义模糊、难以控制和调试的问题,如果多输入些字符可以换来有效减少调试和控制时间,我宁愿多敲几下键盘。
gpontop
2003-11-17
打赏
举报
回复
引用:
to:gpontop
好像不会,我都是打开一个连接,付给SqlCommand使用
然后这个SqlCommand就执行命令、查询等等
在培训教材中提到:
如果使用SqlDataAdapter生成DataSet或DataTable,需要注意:
1。。。
2。。。
3尽管能重复使用同一个SqlCommand对象多执行相同的命令,但不要重复使用此对象执行不同的命令
4。。。
我一次处理用到5个Sql命令,难道我要new5个SqlCommand来用吗?
---------------------------------------------------------------------------------
我说的情况并非用在SqlDataAdapter上,而是用在SqlDataReader上的问题。对于脱机的DataSet,如果您使用服务器管理器自动生成数据集,您会发现wizard为我们分别生成了四个SqlCommand对象,分别处理“SELECT”、“UPDATE”、“INSERT”和“DELETE”指令。再加上您引用的教材上的原话,我觉得原意应该是不要用一条SqlCommand分别执行上述的四种命令,但可以执行同类的命令。
zhpsam109
2003-11-16
打赏
举报
回复
可以呀,得到自己要的结果后,就可以再次利用sqlcommand了!
greenery
2003-11-16
打赏
举报
回复
to:gpontop
好像不会,我都是打开一个连接,付给SqlCommand使用
然后这个SqlCommand就执行命令、查询等等
在培训教材中提到:
如果使用SqlDataAdapter生成DataSet或DataTable,需要注意:
1。。。
2。。。
3尽管能重复使用同一个SqlCommand对象多执行相同的命令,但不要重复使用此对象执行不同的命令
4。。。
我一次处理用到5个Sql命令,难道我要new5个SqlCommand来用吗?
Lorenes
2003-11-16
打赏
举报
回复
最规矩的方法是一次操作就断开一次SqlConn,
虽然感觉比较怪,但程序结构比较清爽.也好DEBUG
gordenfl
2003-11-16
打赏
举报
回复
可以使用但不提倡!
这样可能打乱你系统架构的某些设计之类的。
这样使用程序员会比较累!
brightheroes
2003-11-16
打赏
举报
回复
可以放到一个sqlCommand里面执行
但是这种情况,建议用事务来处理
一旦有一个执行不成功,就会回滚
如果你用一个sqlCommand来执行5个sql语句
如果其中一个失败,那么这个之后的也就不会执行,但是这个之前的已经提交了数据库
所以,还是用事务来控制
feigehao
2003-11-15
打赏
举报
回复
一个sqlcmmand与一个sqlconnection联系。用完后,关闭sqlconeciton.
然后continue下一个sqlcmmand与一个sqlconnection联系
gpontop
2003-11-15
打赏
举报
回复
在执行SqlCommand前,它所连接的SqlConnection对象要处于关闭状态,否则会报错。这是我遇到过的问题。解决方法就是每次记得及时关闭SqlConnection对象。
Abac
2003-11-15
打赏
举报
回复
应该没什么问题,直接赋值给CommandText执行,我觉得还好一些。
lvyiwen
2003-11-15
打赏
举报
回复
可以的,不会有什么影响。
greenery
2003-11-14
打赏
举报
回复
没人知道?帮我顶一下啊,各位兄弟。
sql server远程
执行
cmd
命令
在C# Winform应用中,要调用`xp_cmdshell`,你需要创建一个SQL
命令
对象
,设置其CommandText属性为CMD
命令
,然后通过SqlConnection
执行
该
命令
。以下是一个简单的示例: ```csharp using System; using System.Data....
WPF mvvm 同时连接
多个
sqlserver
执行
指定sql
命令
本话题聚焦于如何在MVVM架构下,同时连接
多个
SQL Server实例
执行
特定的SQL
命令
,这在数据库维护或数据同步场景中尤为常见。 首先,我们需要理解MVVM的基本概念。MVVM由三个主要部分组成:Model(模型)负责业务逻辑...
C#中实现一次
执行
多条带GO的sql语句实例
首先,我们来看`ExecuteSqlWithGo`方法,这个方法通过正则表达式将带有`GO`的SQL语句分割成
多个
单独的SQL
命令
。`Regex.Split(sql.Trim(), "\r\n\\s*go", RegexOptions.IgnoreCase)`这一行代码将字符串按`\r\n`(换行...
针对SQL Server将
多个
SQL语句作为一个
执行
在开始一个事务后,可以连续
执行
多个
SQL语句,这些语句
会
作为一个整体被提交或回滚。以下是一个简单的示例: ```csharp using (SqlConnection connection = new SqlConnection(connectionString)) { connection....
SqlCommand
_ExecuteScalar方法
ExecuteScalar方法则是
SqlCommand
对象
的一个成员,它的主要作用是
执行
命令
并返回第一行第一列的值。如果
命令
没有返回任何结果,ExecuteScalar将返回null。如果
命令
返回的是多行多列的结果集,ExecuteScalar只
会
返回...
C#
111,095
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章