|
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
caney
註冊時間: 2003-09-22 文章: 9
第 1 樓
|
發表於: 星期四 九月 14, 2006 11:05 am 文章主題: Sqlexec()變數使用碰到之問題 |
|
|
SQL建立之檔案型態如下:
cs_no2欄位型態為:char
lines欄位型態為:float
nbc欄位型態為:bit
(一):
aa="A001"
result=Sqlexec(mConn1,"update cust set cs_no2 = '"+aa+"' where cs_no1 = 'BCA001' ")
結果是成功的
(二):
result=Sqlexec(mConn1,"update cust set lines = 500 where cs_no1 = 'BCA001' ")
結果是成功的
bb=1000
result=Sqlexec(mConn1,"update cust set lines = '+bb+' where cs_no1 = 'BCA001' ")
結果SQL之lines欄位值更新不成功,請問bb變數之語法是否有錯誤?
(三):
result=Sqlexec(mConn1,"update cust set nbc = 1 where cs_no1 = 'BCA001' ")
結果是成功的
cc=0
result=Sqlexec(mConn1,"update cust set nbc = '+cc+' where cs_no1 = 'BCA001' ")
結果SQL之nbc欄位值更新不成功,請問cc變數之語法是否有錯誤?
*** (二)及(三)有關使用bb及cc變數時發生的問題,詢問高人指點,不勝感激 *** |
|
回頂端 |
|
|
yctsai
註冊時間: 2003-04-11 文章: 179
第 2 樓
|
發表於: 星期四 九月 14, 2006 11:49 am 文章主題: |
|
|
result=Sqlexec(mConn1,"update cust set lines =&bb where cs_no1 = 'BCA001' ") |
|
回頂端 |
|
|
lcj0831
註冊時間: 2003-02-22 文章: 21
第 3 樓
|
發表於: 星期四 九月 14, 2006 5:35 pm 文章主題: |
|
|
bb=1000
result=Sqlexec(mConn1,"update cust set lines = '+bb+' where cs_no1 = 'BCA001' ")
結果SQL之lines欄位值更新不成功,請問bb變數之語法是否有錯誤?
→result=Sqlexec(mConn1,"update cust set lines = "+ALLTRIM(STR(bb))+" where cs_no1 = 'BCA001' ")
你要看傳到SQL 的字串是什麼, 你寫的會傳入 update cust set lines = '+bb+' where cs_no1 = 'BCA001'
而不是 update cust set lines = 1000 where cs_no1 = 'BCA001'
cc=0
result=Sqlexec(mConn1,"update cust set nbc = '+cc+' where cs_no1 = 'BCA001' ")
結果SQL之nbc欄位值更新不成功,請問cc變數之語法是否有錯誤?
→result=Sqlexec(mConn1,"update cust set nbc = "+ALLTRIM(STR(cc))+" where cs_no1 = 'BCA001' ")
你要看傳到SQL 的字串是什麼, 你寫的會傳入 update cust set nbc = '+cc+' where cs_no1 = 'BCA001'
而不是 update cust set nbc = 0 where cs_no1 = 'BCA001' |
|
回頂端 |
|
|
BIN
註冊時間: 2004-07-22 文章: 94 來自: Tainan, Taiwan
第 4 樓
|
發表於: 星期四 九月 21, 2006 10:11 am 文章主題: |
|
|
把變數前全加上問號比較好處理,
不用再轉變數型態...
代碼: | tno="BCA001"
bb=1000
result=Sqlexec(mConn1,"update cust set lines =?bb where cs_no1 = ?tno ") |
|
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4212 來自: Taipei,Taiwan
第 5 樓
|
發表於: 星期四 九月 21, 2006 12:33 pm 文章主題: |
|
|
sqlexec 的參數,
sqlcommand 的部分是 "字串"型態,
你告訴我
"update cust set nbc = '+cc+' where cs_no1 = 'BCA001' " 這句是什麼字串?
"update cust set lines = '+bb+' where cs_no1 = 'BCA001' " 這句又是什麼字串?
這是最基本的道理了.
cc,bb 都不是 字串型態的變數,
怎麼可以相加.
如果你對什麼樣的變數應該轉成怎樣的字串不熟的話,
以 bin 兄的方法較好.
vfp會自行轉換適當的命令 _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
caney
註冊時間: 2003-09-22 文章: 9
第 6 樓
|
發表於: 星期二 九月 26, 2006 10:53 pm 文章主題: |
|
|
謝謝各位寶貴的資料,感恩! |
|
回頂端 |
|
|
angeljack
註冊時間: 2006-09-04 文章: 5
第 7 樓
|
發表於: 星期日 六月 05, 2011 4:13 pm 文章主題: |
|
|
BIN 寫到: | 把變數前全加上問號比較好處理,
不用再轉變數型態...
代碼: | tno="BCA001"
bb=1000
result=Sqlexec(mConn1,"update cust set lines =?bb where cs_no1 = ?tno ") |
|
請問 我用問號型態轉到MYSQL資料庫上後,中文字都變亂碼,但是用
"update cust set lines ='"+bb+"' where cs_no1 = ?tno "引號相加的方式中文字就很正常,也試過用strconv 處理 一樣無效,可以請教各位先進?? 感謝 |
|
回頂端 |
|
|
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|