2023拉
解决拼接SQL字符串的烦恼解决方法
上一篇 /
下一篇 2012-03-07 11:39:14
/ 个人分类:软件开发相关
这是典型的程序员的写法,拼串的方式,要是用纯数据库
SQL(运行的是SQL
server)
声明的两个变量
@sql varchar型的
@cycle int型的
然后@cycle从0开始,一个while循环到64
while (@cycle < 64)
begin
set @sql = 'insert into ncl_955672_seq3(serialno) select geseq3
from smtoge' + cast(@cycle as varchar(20)) + ' with (nolock) where
geseq1=955672 and type=15'
execute (@sql)
set @cycle = @cycle + 1
end
使用 LINQ 或 存储过程参数化 解决。
LINQ:语言集成查询(Language INtegrated Query)是一组用于c#和Visual Basic语言的扩展。它允许编写C#或者Visual Basic代码以查询
数据库相同的方式
操作内存数据。
存储过程参数化:数据库中的SQL语句是需要解析才能执行的,如果是参数化的,每次
调用虽然传入不同的参数,但可以省去解析的时间。
存储过程吧,你想怎么整就怎么整,可以做到项目从来不在程序里面写SQL语句,都
是在服务器上面写存储过程,要是有什么问题需要修改的话直接修改存储过程就好了
客户端完全不需要考虑更新程序那些事儿
Tips: ADO.NET支持你可以传递参数对象给SQL(也就是所谓参数化SQL)来代替拼接
SQL这种不安全的做法
收藏
举报
TAG: