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

vfp 透過 spt 與 MySQL 連接
前往頁面 1, 2  下一頁
 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
darma



註冊時間: 2003-09-20
文章: 6
來自: taipei

第 1 樓

發表發表於: 星期一 九月 29, 2003 6:11 pm    文章主題: vfp 透過 spt 與 MySQL 連接 引言回覆

Very Happy
在本版文章區中看到兩篇使用 PHP 連結 MySQL 文章,其實 VFP 可以透過 SPT 直接使用 MySQL
1.至 www.MySQL.com 下載
MySQL 4.0 版以後版本(提供 InnoDB 檔案型態可以支援 Transaction)
MySQL ODBC 3.51 Driver
MySQL Control Center 0.9.3 版(一個類似 MS SQL Enterprise Manager 的工具)
2.在 Widows 2000 或 XP 下一路安裝上述三個套件
3.連接範例
* 取得 MySQL server 連結
function getMySqlConnect
local cSqlDriver,cNetLib,nSqlHandle,cSqlstring
nSqlHandle=0
cSqlDriver = "MySQL ODBC 3.51 Driver"
cSqlserver = "192.168.1.20"
cSqlUser = "darma"
cSqlPwd = "Your Password"
cNetLib = "dbnetlib" &&用戶端網路程式庫 for Tcp/Ip
cSqlstring="DRIVER="+cSqlDriver+";SERVER="+cSqlServer+";UID="+cSqlUser+";PWD="+cSqlPwd+";DATABASE="+cSqlDbc+";NETWORK="+cNetLib
=sqlsetprop(0,"DispLogin",3)
nSqlHandle = sqlstringconnect("&cSqlString.")
return nSqlHandle
4.連接後即可使用 sqlexec(nSqlHandle,"Your statement") 作更新查詢等動作
回頂端
檢視會員個人資料 發送私人訊息
jam



註冊時間: 2003-07-14
文章: 6


第 2 樓

發表發表於: 星期五 十月 03, 2003 12:02 am    文章主題: 引言回覆

補充一下這行改成如下
cSqlstring="DRIVER="+cSqlDriver+";SERVER="+cSqlServer+";UID="+cSqlUser+";PWD="+cSqlPwd+";DATABASE="+cSqlDbc+";NETWORK="+cNetLib+";OPTION=515;"
會好一點,為什麼哪,因為沒設 OPTION=515 由 mysql 下載至 vfp 的資料會把空白
的地方切掉,如原本是 200 個字元,但下載資料這個欄位最大只有 100 個字元,這個
欄位會自動改 100 個字元,這是odbc 預設的功能..
回頂端
檢視會員個人資料 發送私人訊息
darma



註冊時間: 2003-09-20
文章: 6
來自: taipei

第 3 樓

發表發表於: 星期六 十月 04, 2003 12:28 pm    文章主題: 引言回覆

謝謝 jam 補充,要不要加 option 需要看 client 如何運用,因為會影響速度
再補充兩個 news
1.MySQL 4.1 版開始增加 suquery 支援 (測試版已經出來)
2.MySQL 5.0 版將支援 store procedure
如此一來 MySQL 功能就稱得上完備了
回頂端
檢視會員個人資料 發送私人訊息
Ruey



註冊時間: 2003-03-12
文章: 1698
來自: tunglo

第 4 樓

發表發表於: 星期六 十月 04, 2003 9:53 pm    文章主題: 引言回覆

還有各辣手問題--MySQL 中文字處理問題
http://phorum.study-area.org/viewtopic.php?t=19016

據說要設定成UTF-8
但我從沒看過,請問要在哪設定.

_________________
#############################
快樂媽咪系列幸福宅配,喝十全雞湯~原來幸福那麼簡單!!

學會VFP使用者社區的搜尋,Code才會更有趣~
#############################
回頂端
檢視會員個人資料 發送私人訊息
darma



註冊時間: 2003-09-20
文章: 6
來自: taipei

第 5 樓

發表發表於: 星期日 十月 05, 2003 7:29 pm    文章主題: 引言回覆

目前我使用 4.0.12 版沒有發現這個問題,不過 MySQL 資料型態與 VFP 或 MS SQL 不儘相同,例如 bit 在 MySQL 中以 TINYINT 替代,因此如果直接用 REMOTE VIEW 恐怕會有問題
回頂端
檢視會員個人資料 發送私人訊息
darma



註冊時間: 2003-09-20
文章: 6
來自: taipei

第 6 樓

發表發表於: 星期日 十月 05, 2003 7:44 pm    文章主題: 引言回覆

http://www.mysql.com/doc/en/Charset-connection.html
回頂端
檢視會員個人資料 發送私人訊息
jam



註冊時間: 2003-07-14
文章: 6


第 7 樓

發表發表於: 星期二 十月 07, 2003 2:19 pm    文章主題: 引言回覆

to darma
你該使用了 mysql 長時間了,想請問你一個問題,我的 mysql 是裝在 linux 上的
有一個問題不佑如何解決..在 mysql 資料庫的中文如果是 *許* 這個中文字會有
沖碼的狀況,該如果避免這個問題哪!謝謝..
回頂端
檢視會員個人資料 發送私人訊息
zlabsoft



註冊時間: 2003-10-18
文章: 22


第 8 樓

發表發表於: 星期日 十月 19, 2003 12:00 am    文章主題: 引言回覆

Hi,
try following code to convert string before transfer to mysql using SPT:

LPARAMETERS lcStr, llNoDelimiter
*
* String convertor for MYSQL Ver 1.3
*
*** Input :
*
* lcStr - String to be convert
*
*** Output : Converted string
*
*
* Description : MYSQL require special handling for following characters:
* CHR(0) -> \0
* CHR(127) -> \b
* CHR(10) -> \n
* CHR(13) -> \r
* CHR(9) -> \t
* \ -> \\
* ' -> \'
* " -> \"
* So any string / binary data must be converted before transfer to MYSQL server
*
* 20/05/2003 1.3 - Code optimize a bit
* 30/05/2002 1.2 - Optional remove the delimiter
* 12/03/2002 1.1 - Modified by Tommy Tsang to handle full character set
* dd/mm/yyyy 1.0 - Draft by Bob Lee
*
* By: Tommy Tsang
*
LOCAL lcDelimiter
lcDelimiter = IIF(llNoDelimiter, [], ['])
Return lcDelimiter+STRTRAN(STRTRAN(STRTRAN(STRTRAN(STRTRAN(STRTRAN(STRTRAN(STRTRAN(lcStr,[\],[\\]),['],[\']),["],[\"]),CHR(0),[\0]),CHR(13),[\n]),CHR(10),[\r]),CHR(09),[\t]),CHR(127),[\b])+lcDelimiter
回頂端
檢視會員個人資料 發送私人訊息 MSN Messenger
jam



註冊時間: 2003-07-14
文章: 6


第 9 樓

發表發表於: 星期二 十月 21, 2003 1:00 pm    文章主題: 引言回覆

謝謝 zlabsoft 回應!我已有轉換過了,問題我找到了,是 *許* 這個字碼有內含 "\"
字元,所以解決方式是用
Xch="許功效"
if at("\",Xch) > 0
...在許後面加上一個 "\"
endif
這樣就可以了....謝謝
回頂端
檢視會員個人資料 發送私人訊息
ylong



註冊時間: 2003-07-30
文章: 115


第 10 樓

發表發表於: 星期五 七月 23, 2004 4:57 pm    文章主題: 引言回覆

Embarassed oops: 可否請問jam,假如我的MySQL是裝在Linux,而我想用VFP去連接,請問我該如設定,因為我每次設定都出現下列的態狀,煩請不吝賜教
回頂端
檢視會員個人資料 發送私人訊息
elleryq



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


第 11 樓

發表發表於: 星期六 七月 24, 2004 9:29 am    文章主題: 引言回覆

看起來是 MySQL server 設定的問題
Linux 的 MySQL 為了安全起見,預設值通常只讓 localhost 本機端可以連線
請參考 MySQL 手冊或 Help 去修改設定
應該就可以了~~
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
OLDSTONE



註冊時間: 2003-09-30
文章: 29


第 12 樓

發表發表於: 星期五 七月 30, 2004 9:46 am    文章主題: 引言回覆

cSQLDBC 沒有定義
請問cSQLDBC 如何定義??
THANKS!!
回頂端
檢視會員個人資料 發送私人訊息
OLDSTONE



註冊時間: 2003-09-30
文章: 29


第 13 樓

發表發表於: 星期五 七月 30, 2004 9:58 am    文章主題: 引言回覆

請問::
cNetLib = "dbnetlib" &&用戶端網路程式庫 for Tcp/Ip
要如何設定??
我是win2000+mysql5.0
要如何設定才連的上?
回頂端
檢視會員個人資料 發送私人訊息
garfield
Site Admin


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


第 14 樓

發表發表於: 星期一 八月 02, 2004 9:52 am    文章主題: 引言回覆

如果要知道SPT的連接字串很簡單, 只要你在專案中的資料庫中的連接新增一個連接, 點選"連接字串", 再點輸入連接字串的右邊 ... 去選要透過那個ODBC連接, 只要正確, 電腦會自己產生連接字串, 你可以拿來用於 sqlstringconnect( ).
_________________
利用>>搜尋<<的功能會比問的還要快得到答案.
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
ylong



註冊時間: 2003-07-30
文章: 115


第 15 樓

發表發表於: 星期一 八月 02, 2004 11:59 am    文章主題: 煩請高手指導 引言回覆

我已把VFP與Linux上的MySQL連線了,但是下一步又使我的腳步停留下來,因為
不知該如何把何表單上的資料與MySQL上的資料比對,如何把表單上的資料作新
增修改到MySQL,或是從MySQL上刪除資料,或是把MySQL的資料顯示到目前
的表單上,煩請各位高手不吝嗇賜教
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
前往頁面 1, 2  下一頁
1頁(共2頁)

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


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