![]() |
||
|
Major Member
![]() 加入日期: Aug 2005
文章: 237
|
能不能教一下,用vb6把資料庫的資料轉成純文字檔呢?
能不能教一下
如何用 vb6把sql server的北風資料庫中的customers 轉成純文檔或者csv檔 謝謝 |
|||||||
|
|
|
Junior Member
![]() ![]() ![]() 加入日期: Aug 2005
文章: 758
|
我已經沒有安裝VB6很久了,只能講大概。
利用資料庫相關控制項把資料庫中的資料表打開後,逐項讀取該欄位所有的資料,每讀一筆(循序)或全部讀取後,在寫入檔案中(Output模式,可以弄成每一筆資料就是一行或者是scv的格式,這都是你自己可以用vb寫出來的)。 |
||
|
|
|
Major Member
![]() 加入日期: Aug 2005
文章: 237
|
引用:
好高興 有人回答了 可是還是不懂你的方式 到底要如何寫程式碼 利用ado把資料庫中的資料表開啟後 Private Sub Command1_Click() Dim cn As New ADODB.Connection cn.ConnectionString = "Provider=SQLOLEDB;Network Library=DBMSSOCN;Data Source=192.168.1.1,1433;Initial Catalog=Northwind;User Id=sa;Password=" cn.Open Dim rs As New ADODB.Recordset rs.Open "SELECT * FROM Customers ", cn, adOpenStatic, adLockReadOnly Set DataGrid1.DataSource = rs End Sub 在來 我就不會了 以上有請各位兄台幫幫忙 謝謝. |
|
|
|
|
Major Member
![]() 加入日期: Aug 2005
文章: 237
|
麻煩會的人幫忙一下
謝謝 |
|
|
|
Major Member
![]() 加入日期: Oct 2005 您的住址: 淡水
文章: 131
|
撈出資料後跑一個雙層迴圈....
varFile = FreeFile Open <your text file> For Output As #varFile Do While Not rs.Eof strData = "" For i = 0 to rs.Fields.Count - 1 strData = strData & Trim(rs(i).Value) & "," Next i Print #varFile, strData Loop Close #varFile |
|
|
|
Major Member
![]() 加入日期: Aug 2005
文章: 237
|
引用:
您好: 我程式碼改成如下 似乎進入無窮迴圈的樣子 這個純文字檔一直擴充"C:\Text2.txt" 檔案就一直變大 不知那裡出問題了 謝謝 Private Sub Command1_Click() Dim cn As New ADODB.Connection cn.ConnectionString = "Provider=SQLOLEDB;Network Library=DBMSSOCN;Data Source=192.168.1.1,1433;Initial Catalog=Northwind;User Id=sa;Password=" cn.Open Dim rs As New ADODB.Recordset rs.Open "SELECT * FROM Customers ", cn, adOpenStatic, adLockReadOnly Set DataGrid1.DataSource = rs varFile = FreeFile Open "C:\Text2.txt" For Output As #varFile Do While Not rs.Eof strData = "" For i = 0 to rs.Fields.Count - 1 strData = strData & Trim(rs(i).Value) & "," Next i Print #varFile, strData Loop Close #varFile End Sub |
|
|
|
|
Junior Member
![]() ![]() ![]() 加入日期: Aug 2005
文章: 758
|
利用單步執行的方式除錯,也可以在程式碼裡面加上一些輸出在即時視窗用的程式碼幫助除錯。
|
|
|
|
Major Member
![]() 加入日期: Feb 2004
文章: 235
|
引用:
你有迴圈,但是資料列沒有往下動,這段修改一下如下 Do While Not rs.Eof strData = "" For i = 0 to rs.Fields.Count - 1 strData = strData & Trim(rs(i).Value) & "," Next i Print #varFile, strData rs.movenext Loop
__________________
為了部落~~ |
|
|
|
|
Major Member
![]() 加入日期: Aug 2005
文章: 237
|
引用:
真是太感謝您了。 ![]() |
|
|
|
|
Major Member
![]() 加入日期: Aug 2005
文章: 237
|
不好意思在請教一個問題
我將程式碼改成下面(紅色字的部分) 希望輸出成純文字檔 不是之前用逗號來區分 程式一遇到Null值無法轉出,就出現Null錯誤警告, 請問如何解決Null的問題 謝謝 LenArr = Array(5,40,30,30,60,15,15,10,15,24,24) '此句是新增加的,資料庫每一欄位的長度 Do While Not rs.EOF strData = "" For i = 0 To rs.Fields.Count - 1 strData = strData & String((LenArr(i) - Len(Trim(rs(i).Value))), " ") & Trim(rs(i).Value) '此句是修改的 Next i Print #varFile, strData rs.movenext Loop |
|
|