SQL语句中变量加引号和不加引号有什么区别???

bgaidu 2008-07-15 08:16:06
string id = Request.QueryString["id"].ToString();
String sql = "UPDATE admin set userpower='" + qx + "' where id=" + id;




String sql = "UPDATE admin set dq='" + dq + "',userpower='" + qx + "' where id='" + id+"';



红色的两句有什么区别 请大家指教下!主要值“where id=”后边的部分
...全文
1151 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
cftea 2008-07-15
  • 打赏
  • 举报
回复
如果 id 的确是 int 类型,那么是不需要引号的,不过,加起引号也不会报错,会自动转换类型。
你上面说没加引号反而错,我强烈怀疑是哪里没弄仔细,没加引号不会错的。
比如你的变量 id 是零长度字符串:
那么 where id=" + id 就会出错,而 where id='" + id + "'" 就不会出错。
CityOfAngels 2008-07-15
  • 打赏
  • 举报
回复
up
bgaidu 2008-07-15
  • 打赏
  • 举报
回复
问题是 我在实践中发现 我有个页面的代码 读取数据库中的一个字段 这个字段是自增长的int型 在写语句的时候 我必须写成String sql = "UPDATE admin set dq='" + dq + "',userpower='" + qx + "' where id='" + id+"'; 这样的语句才成功而写成不带引号 不能用 很郁闷!
周公 2008-07-15
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 zhlu880516 的回复:]
不加引号是数字类型,加了就是字符串或日期类型了
[/Quote]
lfzwenzhu 2008-07-15
  • 打赏
  • 举报
回复
数据类型不同
初吻给了烟 2008-07-15
  • 打赏
  • 举报
回复
不加引号是数字类型,加了就是字符串或日期类型了
oec2003 2008-07-15
  • 打赏
  • 举报
回复
區別就是 where 後的 id 有沒有單引號
紫气东来_999 2008-07-15
  • 打赏
  • 举报
回复
id在数据库中定义的字段如果是数字型,用上面的一句就可以。
如果是字符型,用下面的一句
紫气东来_999 2008-07-15
  • 打赏
  • 举报
回复
1:id数值
2:ID字符

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧