2014-05-15 5 views
0

Когда я пытаюсь выполнить эту хранимую процедуру, я получаю эту ошибку «Ошибка коннектора базы данных:« Неявное преобразование из типа данных «CHAR» в «INT» недопустимо. Используйте функцию CONVERT для запустите этот запрос «как получилось? Как я могу это исправить? благодаряSybase SQL QUERY - ошибка при выполнении хранимой процедуры

это им запрос с использованием для выполнения SP:

CREATE PROCEDURE TestProc2(@store char(4)) 
AS 
BEGIN 
SELECT * FROM stores WHERE [email protected] 
END 

exec TestProc2 @store = "7066" 

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 

столбец устанавливается в символьном (4), так что я не думаю, что есть несоответствие с запрос и типы данных

BTW Я попробовал («7066») с одинарными кавычками, с двойными и без кавычек, я все равно получаю ту же ошибку sql. пожалуйста, помогите

PS Я использую sybase спасибо! также ниже - снимок экрана об ошибке.

любая другая информация, которую вы, ребята, должны мне помочь? благодаря

http://tinypic.com/r/2n24huq/8

+0

Редактировать свой вопрос и включить запрос, который терпит неудачу. –

+0

Просто догадка .. попробуйте одинарные кавычки вместо двойных кавычек –

+0

Я пробовал с одиночными кавычками, с двойными и без кавычек, я все равно получаю ту же ошибку sql. пожалуйста, помогите – user3558483

ответ

0

Похоже stor_id поля в таблице stores является int. Измените хранимую процедуру, чтобы принять int вместо char(4).

CREATE PROCEDURE TestProc2(@store int) 
AS 
BEGIN 
SELECT * FROM stores WHERE [email protected] 
END 
+0

То, что проблема также задана в столбце как char (4), все совпадения не знаю, почему он дает ошибку – user3558483

+0

@ user3558483 - Можете ли вы запустить 'sp_help магазины' и отправить? Хотелось бы увидеть ваше определение таблицы. – sgeddes

+0

проверить это, я отредактировал мое описание – user3558483

Смежные вопросы