我在这里有这个存储过程:
else if(substring(@SMS,1,1)='S')
begin
insert into WEB_POROSIA..SMS_SERVISI(IDTICKET, MBYLLUR) values(convert(int,substring(@SMS,2,len(@sms)-1)),1)
select @sms
end
它的作用是:我发送这样的短信:
S 23 ,并在数据库中保存 23 值..
现在,它的工作原理如下,但如果我之前添加一个字母则不会: 即
S B21 它应该将 B21 插入表格...
如何修改?
答案 0 :(得分:2)
values(convert(int,substring(@SMS,2,len(@sms)-1)),1)
^ Because you are converting it into int
如果要获得 B
,您可以convert
进入varchar
values(convert(varchar,substring(@SMS,2,len(@sms)-1)),1)
(假设您将alter
表格并将datetype
从int
更改为varchar
)
答案 1 :(得分:0)
您需要删除转换为int:
insert into WEB_POROSIA..SMS_SERVISI(IDTICKET, MBYLLUR) values(substring(@SMS,2,len(@sms)-1),1)
如果也使用int。
,您可能还需要修改目标列上的类型