日期:2014-05-18  浏览次数:20503 次

GUID格式问题
cmdText.Append("insert into BookInnerTariffInfo");
cmdText.Append("(TariffInfoId,BookFormatId,BookLockTypeId,BookSizeId,PrintColorId,MinAmount,MaxAmount,TariffValue,CreatedOn) VALUES('");
cmdText.Append("newid()" + "','" + BookFormatId + "','" + BookLockTypeId + "','" + BookSizeId + "','" + PrintColorId + "','" + MinAmount + "','" + MaxAmount + "','" + TariffValue + "','" + CreatedOn + "')");

点击保存的时候 弹框说 无法识别的GUID

请教下,,

------解决方案--------------------
newid(),这个还带个括号啥意思,会造成数据库引擎解析出错,这是你自己的函数吧,怎么放到sql中了呢
------解决方案--------------------
探讨

弹框说 无法识别的GUID


------解决方案--------------------
newid()是函数,这里被你当成了字符串使用,你插入的数据是字符串 'newid()'


把引号去掉
------解决方案--------------------
你的newid()外面有一个单引号,看到没有,加上单引号就是字符了
------解决方案--------------------
探讨

newid()是函数,这里被你当成了字符串使用,你插入的数据是字符串 'newid()'


把引号去掉

------解决方案--------------------
去逗号做什么?去了就出错
------解决方案--------------------
探讨

引用:
newid()是函数,这里被你当成了字符串使用,你插入的数据是字符串 'newid()'


把引号去掉

这个是拼起来的 现在newid()是字符串 把双引号去掉会出问题的

------解决方案--------------------
//查看SQL拼接结果。
Response.Write(cmdText.ToString());
Response.End();

没错再删除这两行。不过。。。。你这个写法,,,,有些差。。。基本没充分利用stringbuilder的价值。。

在它里面还是不要用+来拼接字符串。

cmdText.AppendFormat("....values(newid(), {0}, {1}......)", BookFormatId, BookLockTypeId ....);