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

vfp to mysql
前往頁面 上一頁  1, 2, 3, 4  下一頁
 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
syntech



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

第 31 樓

發表發表於: 星期五 八月 09, 2013 2:24 pm    文章主題: 引言回覆

直接下SQL 命令.


代碼:


store sqlstringconnect("dsn=MySQL_TEST; userid=root; pwd=123456") to xconnhandle

SQLEXEC(xconnhandle, 'use successtime')
select invoice01
go top
if !eof()
   do while !eof()
      V1 = invoice01.F1
      V2 = invoice01.F2
      .
      .
      .
      
      nC = "insert into successtime.invoice01(F1,F2,F3,....) values (?V1,?V2,?V3,...)"
      sqlexec(xconnhandle,nC)

      skip
   enddo
endif

sqlcancel(xconnhandle)
sqldisconnect(xconnhandle)

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

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


syntech 在 星期五 八月 09, 2013 2:45 pm 作了第 4 次修改
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
syntech



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

第 32 樓

發表發表於: 星期五 八月 09, 2013 2:35 pm    文章主題: 引言回覆

SPT 方法 (未DEBUG):

代碼:


SET MULTILOCKS ON
store sqlstringconnect("dsn=MySQL_TEST; userid=root; pwd=123456") to xconnhandle
 
SQLEXEC(xconnhandle, 'use successtime')

SQLEXEC(xconnhandle, 'SELECT * FROM successtime.invoice01' ,'mysql_cursor')

=CURSORSETPROP("Buffering", 5 , 'mysql_cursor' )
=CURSORSETPROP("Tables",'successtime.invoice01','mysql_cursor')    
=CURSORSETPROP("KeyFieldList",[自己看 SPT 說明..........],'mysql_cursor')
=CURSORSETPROP("UpdatableFieldList" ,[自己看 SPT 說明..........],'mysql_cursor')
=CURSORSETPROP("UpdateNameList",[自己看 SPT 說明..........],'mysql_cursor')    
=CURSORSETPROP("SendUpdates" ,.t.,'mysql_cursor')


SELECT mysql_cursor
APPEND FROM invoice01.DBF
= TABLEUPDATE(.t. )

sqldisconnect(xconnhandle)

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

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


syntech 在 星期五 八月 09, 2013 2:44 pm 作了第 1 次修改
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
syntech



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

第 33 樓

發表發表於: 星期五 八月 09, 2013 2:37 pm    文章主題: 引言回覆

上面兩種方式應該夠混口飯吃了. ^_^
不限於 MYSQL,
ORACLE,MSSQL,....... 只要支援 ODBC 就可以用.
有UNICODE 需求的,可以改用 VFP9 的 CursorAdapter.


此外,樓主應該更瞭解自己的武器,
還有很多沒有發揮出來.



其他就看個人造化.

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

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



註冊時間: 2010-05-24
文章: 117


第 34 樓

發表發表於: 星期五 八月 09, 2013 4:20 pm    文章主題: 引言回覆

[quote="syntech"]直接下SQL 命令.


[code]

store sqlstringconnect("dsn=MySQL_TEST; userid=root; pwd=123456") to xconnhandle

SQLEXEC(xconnhandle, 'use successtime')
select invoice01
go top
if !eof()
do while !eof()
V1 = invoice01.F1
V2 = invoice01.F2
.
.
.

nC = "insert into successtime.invoice01(F1,F2,F3,....) values (?V1,?V2,?V3,...)"
sqlexec(xconnhandle,nC)

skip
enddo
endif

sqlcancel(xconnhandle)
sqldisconnect(xconnhandle)
[/code][/quote]

現正試用這方法, 已成功了一大步, 只有一個小問題, 括號內F1, F2, F3, 是實體FEILD NAME (例如: (name, tel, sex)), 還是像V1, V2, V3, 是一個變數, 如果是變數, 也要加上"?"在每一個變數前面嗎?
回頂端
檢視會員個人資料 發送私人訊息
aforangel



註冊時間: 2010-05-24
文章: 117


第 35 樓

發表發表於: 星期五 八月 09, 2013 4:24 pm    文章主題: 引言回覆

[quote="syntech"]SPT 方法 (未DEBUG):

[code]

SET MULTILOCKS ON
store sqlstringconnect("dsn=MySQL_TEST; userid=root; pwd=123456") to xconnhandle

SQLEXEC(xconnhandle, 'use successtime')

SQLEXEC(xconnhandle, 'SELECT * FROM successtime.invoice01' ,'mysql_cursor')

=CURSORSETPROP("Buffering", 5 , 'mysql_cursor' )
=CURSORSETPROP("Tables",'successtime.invoice01','mysql_cursor')
=CURSORSETPROP("KeyFieldList",[自己看 SPT 說明..........],'mysql_cursor')
=CURSORSETPROP("UpdatableFieldList" ,[自己看 SPT 說明..........],'mysql_cursor')
=CURSORSETPROP("UpdateNameList",[自己看 SPT 說明..........],'mysql_cursor')
=CURSORSETPROP("SendUpdates" ,.t.,'mysql_cursor')


SELECT mysql_cursor
APPEND FROM invoice01.DBF
= TABLEUPDATE(.t. )

sqldisconnect(xconnhandle)
[/code][/quote]

假若, 我下一步也會研究一下這方法, 請問那裡可以找到SPT說明?

真的..萬二分感謝synetch 及 ckp 不厭其煩的解答, 在這裡, 真的學懂很多很多, 這裡就像是我們新手的天堂..
回頂端
檢視會員個人資料 發送私人訊息
ckp6250



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


第 36 樓

發表發表於: 星期五 八月 09, 2013 6:05 pm    文章主題: 引言回覆

SPT的方法,資料量少時還好
若是大資料量就要考慮了

不過,多方比較,總是有益
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
syntech



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

第 37 樓

發表發表於: 星期六 八月 10, 2013 8:01 am    文章主題: 引言回覆

那要看你怎麼定義"資料量大".
數千筆內,差異不大.
幾萬筆,大家都慢,慢多慢少而已.

不需要考慮這麼多,
前面說了,夠用了.

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

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



註冊時間: 2010-08-26
文章: 284


第 38 樓

發表發表於: 星期日 八月 11, 2013 11:50 am    文章主題: 引言回覆

>有UNICODE 需求的,可以改用 VFP9 的 CursorAdapter.

unicode 是 vfp 的大缺點, cursoradapter 能解決多少?
回頂端
檢視會員個人資料 發送私人訊息
syntech



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

第 39 樓

發表發表於: 星期日 八月 11, 2013 5:32 pm    文章主題: 引言回覆

kalok 寫到:
>有UNICODE 需求的,可以改用 VFP9 的 CursorAdapter.

unicode 是 vfp 的大缺點, cursoradapter 能解決多少?



顯示物件外都能解決. XD.
但是顯示物件沒解決,也等於沒解決.


不過,本站找得到解決顯示物件的方法.
偉大的站長作的範例

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

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



註冊時間: 2010-05-24
文章: 117


第 40 樓

發表發表於: 星期一 八月 12, 2013 12:05 pm    文章主題: 引言回覆

[quote="syntech"]直接下SQL 命令.


[code]

store sqlstringconnect("dsn=MySQL_TEST; userid=root; pwd=123456") to xconnhandle

SQLEXEC(xconnhandle, 'use successtime')
select invoice01
go top
if !eof()
do while !eof()
V1 = invoice01.F1
V2 = invoice01.F2
.
.
.

nC = "insert into successtime.invoice01(F1,F2,F3,....) values (?V1,?V2,?V3,...)"
sqlexec(xconnhandle,nC)

skip
enddo
endif

sqlcancel(xconnhandle)
sqldisconnect(xconnhandle)
[/code][/quote]

用這個方法, 已成功了, 把200多個紀錄全推上SQL SERVER......但還有一個問題未能解決...
nC = "insert into successtime.invoice01(F1,F2,F3,....) values (?V1,?V2,?V3,...)" 中 (F1,F2,F3)一定是要用FIELD的實名 (NAME,ADDRESS,FULL NAME)..但是, 這樣做, 不就很易超過255char? 可不可以像V1,V2,V3一樣, 用變數代體,但是我試用過, (?F1,?F2,?F3) values (?V1,?V2,?V3) 也是失敗的, 是有其他符號代替"?", 還是本來就一定要用實名...
回頂端
檢視會員個人資料 發送私人訊息
211482



註冊時間: 2003-07-15
文章: 53


第 41 樓

發表發表於: 星期一 八月 12, 2013 3:33 pm    文章主題: 引言回覆

使用字串相加就沒有限制了
nC = "......" + ;
"......" + ;
"......"
回頂端
檢視會員個人資料 發送私人訊息
syntech



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

第 42 樓

發表發表於: 星期一 八月 12, 2013 11:43 pm    文章主題: 引言回覆

"這樣做, 不就很易超過255char?"

沒有這個限制.

應該是 8K BYTE.
字串變數也是 8K BYTE

VFP 6/7 HELP:
http://msdn.microsoft.com/en-us/library/3kfd3hw9(v=vs.71).aspx

Maximum # of characters per command line 8,192

VFP 9 HELP:
http://msdn.microsoft.com/en-US/library/3kfd3hw9(v=vs.80).aspx

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

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



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

第 43 樓

發表發表於: 星期一 八月 12, 2013 11:51 pm    文章主題: 引言回覆

"可不可以像V1,V2,V3一樣, 用變數代體,但是我試用過, (?F1,?F2,?F3) values (?V1,?V2,?V3) "


再怎麼亂寫也應該是

(&F1,&F2,&F3)     


XD

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

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



註冊時間: 2009-03-10
文章: 334
來自: 佛心來的

第 44 樓

發表發表於: 星期二 八月 13, 2013 11:35 am    文章主題: 引言回覆

請教一下諸大德,

小弟在 win7 下直接安裝了 MySQL Community 5.6.13.0
然後在 Command 視窗下 mysql -u root -p
再給予一個密碼後,
出現了 mysql>_

接著在VFP內輸入如下:
nSqlHandle=0
cSqlDriver="MySQL ODBC 5.2 Unicode Driver"
cSqlserver="192.168.1.101"
cSqlUser="root"
cSqlPwd="oo_xx_oo_xx"
cSqlDbc="lotodatabase"
cSqlstring="DRIVER="+cSqlDriver+";SERVER="+cSqlServer+";UID="+cSqlUser+";PWD="+cSqlPwd+;
";DATABASE="+cSqlDbc
=SQLSETPROP(0,"DispLogin",3)
nSqlHandle=SQLSTRINGCONNECT("&cSqlString.")

結果 nSqlHandle 都是-1
是不是小弟哪裡搞錯了?[/img]
回頂端
檢視會員個人資料 發送私人訊息
ckp6250



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


第 45 樓

發表發表於: 星期二 八月 13, 2013 11:51 am    文章主題: 引言回覆

再怎麼亂寫也應該可能或許是這一行有問題
cSqlDriver="MySQL ODBC 5.2 Unicode Driver"

請先確認一下這個 Driver 是否正確?
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
前往頁面 上一頁  1, 2, 3, 4  下一頁
3頁(共4頁)

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


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