Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sybase SQL查询-执行存储过程时出错_Sql_Sql Server_Sybase - Fatal编程技术网

Sybase SQL查询-执行存储过程时出错

Sybase SQL查询-执行存储过程时出错,sql,sql-server,sybase,Sql,Sql Server,Sybase,当我尝试执行此存储过程时,我收到以下错误:“数据库连接器错误:'不允许从数据类型'CHAR'隐式转换为'INT'。请使用CONVERT函数运行此查询“为什么?”?我怎样才能解决这个问题?谢谢 这是im用于执行SP的查询: CREATE PROCEDURE TestProc2(@store char(4)) AS BEGIN SELECT * FROM stores WHERE stor_id=@store END exec TestProc2 @store = "7066" 该列被设置为c

当我尝试执行此存储过程时,我收到以下错误:“数据库连接器错误:'不允许从数据类型'CHAR'隐式转换为'INT'。请使用CONVERT函数运行此查询“为什么?”?我怎样才能解决这个问题?谢谢

这是im用于执行SP的查询:

CREATE PROCEDURE TestProc2(@store char(4))
AS
BEGIN
SELECT * FROM stores WHERE stor_id=@store
END

exec TestProc2 @store = "7066"

该列被设置为char(4),因此我不认为查询和数据类型不匹配

顺便说一句,我试过使用单引号(“7066”),使用双引号和不使用引号,但仍然得到相同的sql错误。请帮忙

PS我正在使用sybase谢谢!下面是错误的屏幕截图

你们还需要其他信息来帮助我吗?谢谢


看起来
存储
表中的
存储id
字段是一个
int
。将存储过程更改为接受
int
而不是
char(4)


编辑您的问题并包含失败的查询。只是一种预感。。试着用单引号代替双引号我试着用单引号,用双引号和不带引号,我仍然得到同样的sql错误。这就是问题所在,它在列中设置为char(4),所有内容都匹配,我不知道为什么error@user3558483--能否运行
sp\u帮助存储
并发布?希望查看您的表定义。
sp_help stores

stor_id,     char,       4
stor_name,   varchar,    40
stor_address,varchar,    40
city,        varchar,    20
state,       char,       2
country,     varchar,    12
postalcode,  char,       10
payterms,    varchar,    12
CREATE PROCEDURE TestProc2(@store int)
AS
BEGIN
SELECT * FROM stores WHERE stor_id=@store
END