社区
C#
帖子详情
用1个SqlCommand对象执行多个不同的命令,会有什么影响吗?
greenery
2003-11-14 09:19:44
在一个讲述ASP.Net的微软的培训资料中,提到不要用1个SqlCommand对象执行多个不同的命令,不知道是不是我记错了
...全文
643
15
打赏
收藏
用1个SqlCommand对象执行多个不同的命令,会有什么影响吗?
在一个讲述ASP.Net的微软的培训资料中,提到不要用1个SqlCommand对象执行多个不同的命令,不知道是不是我记错了
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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
打赏
举报
回复
没人知道?帮我顶一下啊,各位兄弟。
UG 2023 64bit 64 位系统设计软件.rar
UG NX 2023(Unigraphics NX,中文名交互式 CAD/CAM 系统),是西门子 Siemens PLM Software 研发的 CAD/CAE/CAM 一体化产品工程解决方案,提供全套数字化造型与仿真验证手段。软件功能强悍,可轻松完成各类复杂实体、曲面造型构建,广泛应用于机械装备、塑胶模具、汽车零部件、航空航天、数控加工、钣金设计等工业领域。 软件仅支持 Win10、Win11 64 位系统,不再兼容 Win7,硬件配置要求适中。软件集三维建模、工程制图、数控编程、力学与运动仿真等功能于一体,可兼容各类主流设计文件格式。 该版本优化了装配加载速度、曲面建模能力与刀路算法,运行稳定,是当下行业主流版本。 由于安装包文件过大,CSDN 无法直接上传,附件提供下载链接及配套安装教程,欢迎下载使用。
vivado XADC IP核使用教程
vivado XADC IP核使用教程
64 位 NX2023 UG 主流行业版本 无偿持续分享.rar
UG(Unigraphics NX)是一款由西门子(Siemens PLM Software)开发的交互式CAD/CAM/CAE系统。作为全球领先的产品工程解决方案,它集成了产品设计、工程仿真与制造加工于一体。其功能强大且应用广泛,能够轻松实现各种复杂实体和造型的构造,为模具、汽车、航空航天及通用机械等行业提供了高性能的机械设计与制图灵活性。
【变压器的开路试验】变压器进行开路试验时的电路连接配置(Simulink仿真实现)
内容概要:本文详细介绍了利用Simulink进行变压器开路试验的电路连接配置与仿真实现方法,重点在于通过仿真手段还原实际电力系统中变压器在空载条件下的电气特性,从而深入理解其工作原理与性能表现。文章作为电力系统仿真系列研究的一部分,系统阐述了从电路模型搭建、参数设定、仿真运行到结果分析的完整流程,突出展示了MATLAB/Simulink在电力设备建模与教学科研中的强大功能与应用价值。; 适合人群:具备电力系统基础知识,熟悉MATLAB/Simulink仿真环境,从事电气工程、自动化及相关领域的研发人员,以及高年级本科生和研究生。; 使用场景及目标:①掌握变压器开路试验的基本原理与Simulink仿真建模的具体步骤;②通过仿真实验深入理解空载电流、铁芯损耗及励磁特性等关键参数的物理意义;③为后续开展变压器短路试验、暂态过程分析以及其他电力设备的仿真研究奠定理论与实践基础。; 阅读建议:建议结合Simulink软件动手实践,逐步构建并调试电路模型,重点关注各元件参数的设置方法与测量模块的应用技巧,同时推荐参考文中提及的其他相关仿真案例进行拓展学习,以全面提升对电力系统仿真实践的整体认知与操作能力。
SoloBlog.zip
SoloBlog.zip
C#
111,132
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章