全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1139
推到 Plurk!
推到 Facebook!

預存程序的錯誤

尚未結案
sundy6719
初階會員


發表:136
回覆:78
積分:42
註冊:2002-07-10

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-01 17:19:15 IP:211.74.xxx.xxx 未訂閱
請教二個問題我在StoredProc元件想要設定預存程序可是當我設定好時要ACTIVE:=TRUE時都會出現dbExpress Error:Invalid Parameter的錯誤可是我在MS-SQL中的程式碼是 CREATE PROCEDURE dc0001.TOM AS BEGIN declare @CUST VARCHAR(5) Select @CUST=max(CUST_NO) From CUST Select @CUST END GO 我沒有設定輸入參數丫 為什麼還會有錯誤呢 而我使用 SQL Query Analyzer工具使用都正常 而第二個問題是 CREATE PROCEDURE MaxCUST_NO AS BEGIN DECLARE @CUST_NO CHAR(4) DECLARE @NEW_CUST_NO INT SELECT @CUST_NO = MAX(CUST_NO) FROM CUST SELECT @NEW_CUST_NO = CAST(@CUST_NO AS Int) 1 SELECT @CUST_NO = RIGHT('0000' CAST(@NEW_CUST_NO AS CHAR(4)), 4) SELECT @CUST_NO END 使用SQL Query Analyzer工具會出現以下的錯誤 伺服器: 訊息 245,層級 16,狀態 1,程序 MaxCUST_NO,行 7 將 varchar 數值 'C000' 轉換成資料型別為 int 的資料行語法錯誤。 這是為什麼呢??? 謝謝感激不盡
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-04 14:18:40 IP:218.163.xxx.xxx 未訂閱
引言: 請教二個問題我在StoredProc元件想要設定預存程序可是當我設定好時要ACTIVE:=TRUE時都會出現dbExpress Error:Invalid Parameter的錯誤可是我在MS-SQL中的程式碼是 CREATE PROCEDURE dc0001.TOM AS BEGIN declare @CUST VARCHAR(5) Select @CUST=max(CUST_NO) From CUST Select @CUST END GO 我沒有設定輸入參數丫 為什麼還會有錯誤呢 因為 Select @CUST 會回傳 Cursor (跟下 select SQL 一樣) 而我使用 SQL Query Analyzer工具使用都正常 而第二個問題是 CREATE PROCEDURE MaxCUST_NO AS BEGIN DECLARE @CUST_NO CHAR(4) DECLARE @NEW_CUST_NO INT SELECT @CUST_NO = MAX(CUST_NO) FROM CUST SELECT @NEW_CUST_NO = CAST(@CUST_NO AS Int) 1 @CUST_NO 的值是'C000'當然會有問題 SELECT @CUST_NO = RIGHT('0000' CAST(@NEW_CUST_NO AS CHAR(4)), 4) SELECT @CUST_NO END 使用SQL Query Analyzer工具會出現以下的錯誤 伺服器: 訊息 245,層級 16,狀態 1,程序 MaxCUST_NO,行 7 將 varchar 數值 'C000' 轉換成資料型別為 int 的資料行語法錯誤。 這是為什麼呢??? 謝謝感激不盡
系統時間:2024-06-08 15:46:10
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!