这是我的存储过程
创建过程`tblCarGarage_Insert`( 在 URL varchar(700) 中, IN 价格 int(7), 输入 varchar(60), IN 模型 varchar(60), IN TrimLevel varchar(60), IN 英里 int(6), IN ZipCode int(5), IN 说明 varchar(80), IN 颜色 varchar(30), IN 所有者 varchar(100), IN VIN varchar(20), 在 VINKeyCode varchar(12) 中, IN CarYear int(4), IN ListingID int(14)) 插入 tblcargarage 设置 URL = @URL, 价格 = @价格, rBit = b'1', 日期发现 = NOW(), LastProcessDate = 现在(), CarYear = @CarYear, 制作 = (选择唯一ID FROM tbltranslationmake WHERE make = '本田'), 型号 = (选择唯一ID FROM tbl翻译模型 WHERE 模型 = @Model), 汽车内饰 = (选择唯一ID FROM tbltranslationtrim 在哪里修剪级别 = @TrimLevel), 英里 = @Miles, 邮编 = @邮编, 描述 = @描述, 颜色 = @Color, 所有者 = @Owner, VIN = @VIN, VINKeyCode = @VinkeyCode, 列表ID = @ListingID;
这是我的执行
SET @CarYear = ''; SET @URL = 'asdas'; SET @Price = 20112; SET @Make = '本田'; SET @Model = '公民'; SET @TrimLevel = 'Ex'; SET @Miles = 20112; SET @Description = 'asdasdasd'; SET @Color = '黄色'; SET @Owner = 'asdasdas'; SET @VIN = 'qeqweqweqw2e'; SET @VinkeyCode = 'asd23sd'; 设置@ListingID = 1231231; 设置@邮编 = 12331; 调用 tblCarGarage_Insert(@CarYear, @网址, @价格, @制作, @模型, @TrimLevel, @迈尔斯, @描述, @颜色, @所有者, @VIN, @VinkeyCode, @ListingID, @邮政编码)
选择唯一ID FROM tbltranslationmake WHERE make = '本田'返回 11(作为 int)
型号 = (选择唯一ID FROM tbl翻译模型 WHERE 模型 = @Model),
返回 712 作为 int
汽车内饰 = (选择唯一ID FROM tbltranslationtrim 在哪里修剪级别 = @TrimLevel),返回 12334 作为 int。
是的,所有这 3 列在我的数据库中都是 INT,
我不断得到'列'Make'不能为空,如果我将查询作为非SP运行,就像查询插入asd set x ='x'等......它在相同的值下工作得很好。任何想法?
谢谢!
这必须通过传入 varchar 和需要 int 的表来做一些事情。也许它没有返回正确的错误?