微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将整数保存到数据类型为int的sql列中

如何解决如何将整数保存到数据类型为int的sql列中

|| 我现在有这个问题了一段时间,无法解决我有一个由于SQL查询而得到的productid。数据库中productid的数据类型为int
        Dim scheduleid As Integer

        cmd.CommandText = \"Insert into DeploymentSchedules (scheduleName) values(\'Schedule\');select Scope_Identity();\"
        scheduleid = cmd.ExecuteScalar()
现在,当我想将其插入到另一个表中时...
        cmd.CommandText = \"Insert into 
  locationsSchedule(LocationName,length,width,height,floor,walls,permIeter,scheduleid)
  values(\'\" + strRoomName + \"\',\'\" + txtLength.Text + \"\',\'\" + txtWidth.Text + \"\',\'\" + 
  txtHeight.Text + \"\',\'\" + wallSTring + \"\',\'\" + floorString + \"\',\'\" + perimeterStrin +
    \"\',\'\" + scheduleid + \"\')\"
        cmd.ExecuteScalar()
我有错误
       Conversion from string \"Insert into locationsSchedule(Lo\" to type \'Double\'
       is not valid.
我知道它与整数有关,因为当我删除产品ID时,它正在工作。请帮助 谢谢     

解决方法

        您在
scheduleid
周围有
\'
,这会将int转换为字符串。删除它们,一切都应该很好(也许您也必须对其他列进行此操作):
\"\',\" + scheduleid + \")\"
顺便说一句:听说过SQL注入吗?     ,        从改变
cmd.ExecuteScalar()
cmd.ExecuteNonQuery()
为您消除错误? 在第一个示例中,您将返回该行最近创建的唯一ID。在第二个查询中,您不是。如此处所示进行更改,或者从查询中返回整数。 哦,看看构建SQL字符串的其他方式(参数化查询!)     ,        几个小时后,我找到了解决方案。 从VB查询SQL Server的问题     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。