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

memo 如何轉字串?

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



註冊時間: 2005-11-23
文章: 80


第 1 樓

發表發表於: 星期一 二月 17, 2014 12:37 pm    文章主題: memo 如何轉字串? 引言回覆

我是用VFP 5.0 版本,今VFP 有一欄位summary memo 欄位想轉至遠端資料集ms-sql 的 rem chr(1000) (假設 sql table name= test)
summary_w =summary
updstr="update test SET rem='&summary_w' where year='&yy_w' and stu_no='&studentid_w"一直出現語法錯誤之訊息,請教先進vfp memo 要如何轉字串去更心 sql 字串欄位呢? ?
testval=SQLEXEC(xConnHandle,updstr)
感謝幫忙
回頂端
檢視會員個人資料 發送私人訊息
alung



註冊時間: 2005-11-23
文章: 80


第 2 樓

發表發表於: 星期一 二月 17, 2014 2:32 pm    文章主題: 引言回覆

剛剛發現summary_w字串長度>=254才會發生語法錯誤之訊息~好像是vfp 字元限制,有沒有解決方法呢?
回頂端
檢視會員個人資料 發送私人訊息
oldbb



註冊時間: 2007-02-28
文章: 83


第 3 樓

發表發表於: 星期一 二月 17, 2014 2:37 pm    文章主題: 引言回覆

'&studentid_w" --> '&studentid_w'"
回頂端
檢視會員個人資料 發送私人訊息
alung



註冊時間: 2005-11-23
文章: 80


第 4 樓

發表發表於: 星期一 二月 17, 2014 3:53 pm    文章主題: 引言回覆

您好:我程式是 '&studentid_w'" 沒錯summary_w-->字串長度 254才會發生語法錯誤之訊息
回頂端
檢視會員個人資料 發送私人訊息
alung



註冊時間: 2005-11-23
文章: 80


第 5 樓

發表發表於: 星期一 二月 17, 2014 5:10 pm    文章主題: 引言回覆

我改成ms_sql test table vfp用ODBC 方式建立一遠端資料集 safs_test_set
下 update safs_test_set rem=summary_w where year=yy_w and stu_no=studentid_w
第 2 次 update 時便發生資料更新衝突的錯誤訊息,唉~蠻傷腦筋的
各位先進麻煩幫幫忙,感謝
回頂端
檢視會員個人資料 發送私人訊息
alung



註冊時間: 2005-11-23
文章: 80


第 6 樓

發表發表於: 星期一 二月 17, 2014 5:12 pm    文章主題: 引言回覆

update safs_test_set set rem=summary_w where year=yy_w and stu_no=studentid_w
第 2 次 update 時便發生資料更新衝突的錯誤訊息
回頂端
檢視會員個人資料 發送私人訊息
syntech



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

第 7 樓

發表發表於: 星期二 二月 18, 2014 9:39 am    文章主題: 引言回覆

updstr="update test SET rem=?summary_w where year=?yy_w and stu_no=?studentid_w"
testval=SQLEXEC(xConnHandle,updstr)

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

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



註冊時間: 2007-01-29
文章: 172


第 8 樓

發表發表於: 星期二 二月 18, 2014 10:50 am    文章主題: 引言回覆

syntech 寫到:
updstr="update test SET rem=?summary_w where year=?yy_w and stu_no=?studentid_w"
testval=SQLEXEC(xConnHandle,updstr)



唉.....




Evil or Very Mad Twisted Evil Rolling Eyes Confused Laughing
回頂端
檢視會員個人資料 發送私人訊息
alung



註冊時間: 2005-11-23
文章: 80


第 9 樓

發表發表於: 星期二 二月 18, 2014 1:31 pm    文章主題: 引言回覆

syntech 寫到:
updstr="update test SET rem=?summary_w where year=?yy_w and stu_no=?studentid_w"
testval=SQLEXEC(xConnHandle,updstr)

感謝幫忙,已可以work了,唯summary_w內容倘超過600字元,雖然有執行成功,可是好像都會被截斷,用len(rem)查都有佔用資料,可是rem都看不到實質的資料,我rem 設 varchar(1200),有方法可以解決嗎?感恩^^
回頂端
檢視會員個人資料 發送私人訊息
alung



註冊時間: 2005-11-23
文章: 80


第 10 樓

發表發表於: 星期二 二月 18, 2014 3:00 pm    文章主題: 引言回覆

alung 寫到:
syntech 寫到:
updstr="update test SET rem=?summary_w where year=?yy_w and stu_no=?studentid_w"
testval=SQLEXEC(xConnHandle,updstr)

感謝幫忙,已可以work了,唯summary_w內容倘超過600字元,雖然有執行成功,可是好像都會被截斷,用len(rem)查都有佔用資料,可是rem都看不到實質的資料,我rem 設 varchar(1200),有方法可以解決嗎?感恩^^

我在sql server 環境直接下insert 指令資料用超過600字元去測試也是會出現問題,改成nvarchar(1200) 也是一樣,另外使用 DTS csv 或 資料庫匯入也是一樣,感覺是sql sever的問題(我用的是 sql2000),有沒有解決方式呢?
謝謝答覆
回頂端
檢視會員個人資料 發送私人訊息
ckp6250



註冊時間: 2004-07-30
文章: 1645


第 11 樓

發表發表於: 星期二 二月 18, 2014 10:11 pm    文章主題: 引言回覆

感覺不是sql sever的問題
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
alung



註冊時間: 2005-11-23
文章: 80


第 12 樓

發表發表於: 星期三 二月 19, 2014 9:00 am    文章主題: 引言回覆

ckp6250 寫到:
感覺不是sql sever的問題

剛有透過網頁程式去查詢 rem 欄位資料,發覺其實資料是有寫進去的,
只是在sql server 那邊直接操作 select rem, len(rem) check data 是不準的,
要下SELECT SUBSTRING(rem, 1, 500) FROM stdat WHERE
or SELECT SUBSTRING(rem, 500, 1200) FROM stdat WHERE
用 len(rem) 長度是不準的
感謝大家幫忙~syntech 謝謝您哦 Laughing
回頂端
檢視會員個人資料 發送私人訊息
syntech



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

第 13 樓

發表發表於: 星期三 二月 19, 2014 9:21 am    文章主題: 引言回覆

"SELECT cast(rem as char(1200)) as rem FROM stdat WHERE .... "
有謠言說,varchar,char,nvarchar 用 odbc 可能無法傳回完整內容

不行的話,要用下面的試看看
"SELECT cast(rem as text) as rem FROM stdat WHERE .... "


也可以用 "MS SQL 2k Query Analyzer truncate 255 varchar " google 看看

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

請聯絡我們,也許我們幫得上忙


syntech 在 星期三 二月 19, 2014 9:52 am 作了第 2 次修改
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
alung



註冊時間: 2005-11-23
文章: 80


第 14 樓

發表發表於: 星期三 二月 19, 2014 9:40 am    文章主題: 引言回覆

alung 寫到:
ckp6250 寫到:
感覺不是sql sever的問題

剛有透過網頁程式去查詢 rem 欄位資料,發覺其實資料是有寫進去的,
只是在sql server 那邊直接操作 select rem, len(rem) check data 是不準的,
要下SELECT SUBSTRING(rem, 1, 500) FROM stdat WHERE
or SELECT SUBSTRING(rem, 500, 1200) FROM stdat WHERE
用 len(rem) 長度是不準的
感謝大家幫忙~syntech 謝謝您哦 Laughing

sorry 我錯了~len(rem) 不是不準~是把中文跟英文或數字一樣當成1個字元計算
回頂端
檢視會員個人資料 發送私人訊息
aizz



註冊時間: 2007-01-29
文章: 172


第 15 樓

發表發表於: 星期三 二月 19, 2014 2:49 pm    文章主題: 引言回覆

alung 寫到:
alung 寫到:
ckp6250 寫到:
感覺不是sql sever的問題

剛有透過網頁程式去查詢 rem 欄位資料,發覺其實資料是有寫進去的,
只是在sql server 那邊直接操作 select rem, len(rem) check data 是不準的,
要下SELECT SUBSTRING(rem, 1, 500) FROM stdat WHERE
or SELECT SUBSTRING(rem, 500, 1200) FROM stdat WHERE
用 len(rem) 長度是不準的
感謝大家幫忙~syntech 謝謝您哦 Laughing

sorry 我錯了~len(rem) 不是不準~是把中文跟英文或數字一樣當成1個字元計算



終於....



現在的小孩, 不懂禮貌的實在太多... 像你能夠把最後結論再分享出來, 值得嘉獎

Laughing
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

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


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