VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

写的vfp执行存储过程代码不能存盘

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
zfgg



註冊時間: 2004-05-31
文章: 179
來自: 中国

第 1 樓

發表發表於: 星期三 十一月 10, 2004 11:12 am    文章主題: 写的vfp执行存储过程代码不能存盘 引言回覆

SQL Server有一个表有25个字段。用的是存储过程将数据加入到表中。在SQL Server‘查询分析器’ 中可以执行这个存储过程加入数据。但在vfp编程中,调用这个存储过程写的代码在存盘时,报告:“命令中有不能识别的短语或关键字”。经过反复试验,在后三个字段中,不能用变量或值。而且三个中,只能有二个字段可以赋值,并且每个值只能有一个字符!我实在是搞不懂了。执行存储过程的代码如下:

(注:三个中,中间一个是日期型。二边的是字符型。还有三个变量分别是:_leftdown,_recordt,_picture。目前只能用以下代码执行程序,后三个是无效的数据。)

sqlexec(handle,"{call st_intohistory(?_custid,?_mzhao,?_gerneralid,?_patientmz,?_sexs,?_ages,?_teles ,?_address ,?_departmz,?_xmpym ,?_doctname ,?_motif ,?_curill,?_pastill,?_checkoral,?_diagnosis,?_treat,?_procrecord,?_advice,?_rightup,?_rightdown,?_leftup ,'6','','p')}") &&后三个不能赋值,原因不明!'p'字符用二个以上也不行

我希望的代码如下:
sqlexec(handle,"{call st_intohistory(?_custid,?_mzhao,?_gerneralid,?_patientmz,?_sexs,?_ages,?_teles ,?_address ,?_departmz,?_xmpym ,?_doctname ,?_motif ,?_curill,?_pastill,?_checkoral,?_diagnosis,?_treat,?_procrecord,?_advice,?_rightup,?_rightdown,?_leftup ,?_leftdown,?_recordt,?_picture)}")
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address MSN Messenger
goto-dream



註冊時間: 2004-05-11
文章: 909


第 2 樓

發表發表於: 星期五 十一月 12, 2004 3:39 pm    文章主題: 引言回覆

你都知道這各結果了.多點時間去解決吧!
_________________
福隆昌淨水有限公司--淨水器的專家,淨水器,飲水機,濾心!!

想了解更多,您可上幸福雞湯組.找尋!!丁澐瑄.老師.

          愛作夢
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
zfgg



註冊時間: 2004-05-31
文章: 179
來自: 中国

第 3 樓

發表發表於: 星期三 十一月 17, 2004 8:40 am    文章主題: 引言回覆

我还是在作梦,我知道的方法用尽了也无功而返。请Goto_dream指点迷经。在此多谢了!
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address MSN Messenger
elleryq



註冊時間: 2007-06-21
文章: 768


第 4 樓

發表發表於: 星期三 十一月 17, 2004 8:49 am    文章主題: 引言回覆

有沒有可能是 sqlexec() 的參數限制??
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
zfgg



註冊時間: 2004-05-31
文章: 179
來自: 中国

第 5 樓

發表發表於: 星期三 十一月 17, 2004 9:29 am    文章主題: 引言回覆

我想如果是参数的问题,程序会出错的,下面这个句子能运行:
sqlexec(handle,"{call st_intohistory(?_custid,?_mzhao,?_gerneralid,?_patientmz,?_sexs,?_ages,?_teles ,?_address ,?_departmz,?_xmpym ,?_doctname ,?_motif ,?_curill,?_pastill,?_checkoral,?_diagnosis,?_treat,?_procrecord,?_advice,?_rightup,?_rightdown,?_leftup ,'6','','p')}")

换成以下的任意一种就不行:
1,sqlexec(handle,"{call st_intohistory(?_custid,?_mzhao,?_gerneralid,?_patientmz,?_sexs,?_ages,?_teles ,?_address ,?_departmz,?_xmpym ,?_doctname ,?_motif ,?_curill,?_pastill,?_checkoral,?_diagnosis,?_treat,?_procrecord,?_advice,?_rightup,?_rightdown,?_leftup ,'leftdown','','p')}")

2,sqlexec(handle,"{call st_intohistory(?_custid,?_mzhao,?_gerneralid,?_patientmz,?_sexs,?_ages,?_teles ,?_address ,?_departmz,?_xmpym ,?_doctname ,?_motif ,?_curill,?_pastill,?_checkoral,?_diagnosis,?_treat,?_procrecord,?_advice,?_rightup,?_rightdown,?_leftup ,'m
','2004-11-17','p')}")

3,sqlexec(handle,"{call st_intohistory(?_custid,?_mzhao,?_gerneralid,?_patientmz,?_sexs,?_ages,?_teles ,?_address ,?_departmz,?_xmpym ,?_doctname ,?_motif ,?_curill,?_pastill,?_checkoral,?_diagnosis,?_treat,?_procrecord,?_advice,?_rightup,?_rightdown,?_leftup ,'6','','ppppp')}")

v
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address MSN Messenger
syntech



註冊時間: 2003-05-16
文章: 4249
來自: Taipei,Taiwan

第 6 樓

發表發表於: 星期三 十一月 17, 2004 10:49 am    文章主題: 引言回覆

神秘的"字串長度"限制?
超過 255 byte 的字串會被截斷?

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
garfield
Site Admin


註冊時間: 2003-01-30
文章: 2160


第 7 樓

發表發表於: 星期三 十一月 17, 2004 11:01 am    文章主題: 引言回覆

或許是你的欄位(字段)型態不符合.還是長度不足造成的, 你可以在SQL QUERY ananyzer 裡去測試, 會比較清楚的看到真正的錯誤訊息.
_________________
利用>>搜尋<<的功能會比問的還要快得到答案.
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
bin1x



註冊時間: 2004-08-27
文章: 462


第 8 樓

發表發表於: 星期三 十一月 17, 2004 12:11 pm    文章主題: 引言回覆

syntech 寫到:
神秘的"字串長度"限制?
超過 255 byte 的字串會被截斷?


這個我prg檔使用 select 語法時會碰到
但如果select 子句在query 檔之中
不會有問題
當時的情況是這樣
其實兩個東西都很像的
會不會是當時在寫程式時,有其它的同事在做怪
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 參觀發表人的個人網站 MSN Messenger
garfield
Site Admin


註冊時間: 2003-01-30
文章: 2160


第 9 樓

發表發表於: 星期三 十一月 17, 2004 1:56 pm    文章主題: 引言回覆

syntech 寫到:
神秘的"字串長度"限制?
超過 255 byte 的字串會被截斷?


"細金ㄟ", VFP一行指令有長度限制, 都忘了有這個規則了, 所以一般都將命令用字串變數來記憶, 再用巨集執行就可以OK.

_________________
利用>>搜尋<<的功能會比問的還要快得到答案.
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
zfgg



註冊時間: 2004-05-31
文章: 179
來自: 中国

第 10 樓

發表發表於: 星期四 十一月 18, 2004 9:10 am    文章主題: 引言回覆

十分感谢Garfield ,Syntech, Bin1x,Elleryq等各位VFP大师的指教!特别是Garfield ,Syntech分析的很正确。我当时想到的是每个字段的值不能超过255个字符,没有想到excute()中的变量字符有限制。我将每个变量的字符适当减少就OK了。
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address MSN Messenger
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作