|
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
garfield Site Admin
註冊時間: 2003-01-30 文章: 2157
第 1 樓
|
發表於: 星期四 十二月 09, 2004 4:26 pm 文章主題: 繁體版VFP6開發的程式在 winxp簡體版執行的問題. |
|
|
不知有沒有人用過這樣的環境.
如果使用的是VFP的.DBF 則存入簡體字沒問題, 但如果是使用SQL2000簡體版當成後端, 則table中有些簡體字存入後抓出來看會變成 ?? , 是table中的欄位型態是char的關係呢?, 還是因為這個database是在繁體版的SQL2000中建立的關係?還是VFP6繁體版的關係? _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4212 來自: Taipei,Taiwan
第 2 樓
|
發表於: 星期四 十二月 09, 2004 4:54 pm 文章主題: |
|
|
我猜是有兩個因素:
1. ODBC 的語系設定
2. DATABASE 的語系設定 _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
garfield Site Admin
註冊時間: 2003-01-30 文章: 2157
第 3 樓
|
發表於: 星期四 十二月 09, 2004 7:17 pm 文章主題: |
|
|
會不會是因為欄位型態的問題, 但不知道將原先的 char 改用 nchar 會不會有使用資料上的問題.
**************************
以下是在sql server HELP 中查到的
字元字串
char
固定長度的非 Unicode 字元資料,最大長度為 8,000 個字元。
varchar
可變長度的非 Unicode 資料,最大長度為 8,000 個字元。
text
可變長度的非 Unicode 資料,最大長度為 2^31 - 1 (2,147,483,647) 個字元。
Unicode 字元字串
nchar
固定長度的非 Unicode 資料,最大長度為 4,000 個字元。
nvarchar
可變長度的 Unicode 資料,最大長度為 4,000 個字元。sysname 是一個系統支援的使用者自訂資料型別,為 nvarchar(128) 的同義資料表,用來參考資料庫物件名稱。
ntext
可變長度的 Unicode 資料,最大長度為 2^30 - 1 (1,073,741,823) 個字元。 _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. |
|
回頂端 |
|
|
garfield Site Admin
註冊時間: 2003-01-30 文章: 2157
第 4 樓
|
發表於: 星期五 十二月 10, 2004 3:41 pm 文章主題: |
|
|
找到原因了, 因為database是在繁體版的SQL2000中建立的關係, 只要在簡體版的SQLSERVER中建立就沒有問題. _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. |
|
回頂端 |
|
|
liangszpt
註冊時間: 2004-11-18 文章: 262 來自: 广东省深圳市
第 5 樓
|
發表於: 星期五 十二月 10, 2004 4:06 pm 文章主題: |
|
|
我公司做的一个项目就遇到过这种问题。TABEL是繁体的,SQLSERVER的字元集是UNICODE的。直接SAVE就会出问题,变成???的。以前我在这里问过在VFP中怎麽处理UNICODE,就是为了这个。 |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4212 來自: Taipei,Taiwan
第 6 樓
|
發表於: 星期五 十二月 10, 2004 4:33 pm 文章主題: |
|
|
我用的DATABASE 都是在繁體的SQL SERVER 中建立的,
只是有指定語系(定序)
在 create database 時 加入 [ COLLATE collation_name ],
那麼非 unicode 的字串欄位型態就會以 指定的語系(定序)存放,
當然如果如果是繁體定序 Chinese_Taiwan_Stroke_XX_XX,
存入簡體內碼的字串,有些字就會變成 ??
(如果該字在繁體有,顯示還是正常,偷偷轉成UNICODE ?)
反之亦然. _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
garfield Site Admin
註冊時間: 2003-01-30 文章: 2157
第 7 樓
|
發表於: 星期一 十二月 13, 2004 11:35 pm 文章主題: |
|
|
本來想直接用 alter table mytable ALTER COLUMN column_name COLLATE Chinese_PRC_CS_AS
但一直不能執行來將字串欄位的定序由 Chinese_Taiwan_Stroke_CS_AS 改成 Chinese_PRC_CS_AS , 但用 ALTER DATABASE database COLLATE Chinese_PRC_CS_AS 就可以將database的定序改成簡體版的, 但這只是整個database的內定值而已, 如果各個table已有將字串指定成某種特定的定序, 那改變database的定序是無效的, 所以最後是在 sql Enterprise 中將整個database產生 重建database的SQL語法檔, 且將整個SQL語法檔中有關 COLLATE 的關鍵字通通去掉後, 執行它來產生一個都用內定"定序"的database , 這樣存入簡體的中文字就不會有問題了. _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. |
|
回頂端 |
|
|
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|