求助:拼接SQL字符串的问题 本帖最后由 yayiba2020 于 2010-07-12 10:38:45 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 string sql ="insert into table1 (UnitPrice,SumPrice) values("+UnitPrice??0+","+SumPrice??0+")"; if(UnitPrice==null){ UnitPrice=0;}if(SumPrice==null){ SumPrice=0;} string sql =string.Fromat("insert into table1 (UnitPrice,SumPrice) values('{0}','{1}')",UnitPrice??0,SumPrice??0); 如果数值很多的话,那你是怎么定义变量的呢?要么在定义的时候就给于一个初始值0呀double SumPrice=0d; 我很奇怪UnitPrice和SumPrice的类型,是int?类型么?不是int?一个代码怎么可以到写入数据库的时候还没确定值的呢?这个应该在前台就已经开始限制的了 还是在执行SQL语句之前就处理好字符串吧!否则到数据库里很麻烦的! 在插入之前判断下,100个也要判断..使用存储过程或者映射插入都需要判断的..看你的2个参数都是整型,如果为空就给个默认值吧,比如说0"insert into table1 (UnitPrice,SumPrice) values("+UnitPrice.tostring.trim()==0?0:UnitPrice+","+SumPrice+")" .Tostring().Trim();拼接的也是字符串,又不是参数也不是批处理,最终不是都转换成了sql string,不用判断。 问下asp.net(c#)这里的语法啥意思? 关于ASP.net中出现的问题 分全捐献了 求水晶报表的问题...在线 频繁出现Automation服务器不能创建对象的问题 C#.net中 判断一个字符串是否为数字 要用到什么函数呢? 怎样让用户敲回车时不提交表单? 关于SQL Server存储过程的问题 datagrid怎么实现这种显示 Linq to sql 有将datetime转换为string类型方法吗? 如何在多框架窗口中,在一个框架中的事件中改变另一个框架中的链接地址?(在ASP.NET中用VB.NET) 没分了,问个问题edm发送邮件时候如何让js有效? 关于多文件上传存储的问题
{
UnitPrice=0;
}
if(SumPrice==null)
{
SumPrice=0;
}
使用存储过程或者映射插入都需要判断的..
看你的2个参数都是整型,如果为空就给个默认值吧,比如说0
"insert into table1 (UnitPrice,SumPrice) values("+UnitPrice.tostring.trim()==0?0:UnitPrice+","+SumPrice+")"
拼接的也是字符串,又不是参数也不是批处理,最终不是都转换成了sql string,不用判断。