国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Access > 正文

如何將文本文件轉換為ACCESS數據庫

2020-03-24 17:41:40
字體:
來源:轉載
供稿:網友
本文向你介紹如何不用借助Access,直接在程序中創建一個數據庫,然后從標準的ASCII文本文件中讀取數據到數據庫中。原文是微軟知識庫中的一篇文章,但當時是針對VB3寫的,所以其中的代碼有點過時。例如現在DAO中已沒有Table對象,代之以Recordset對象。下面是修改后的代碼,在VB6中調試通過。首先在工程中添加對Microsoft DAO 3.51 Library引用。在窗體中添加三個命令按鈕和兩個MSFlexGrid. 按照下表設置和控件的屬性: 控件 屬性 值--------------------------------------------------------------------Command1 Caption "建立文本文件并顯示在網格中"Command2 Caption "傳輸入數據并新建一個數據庫"Command3 Caption "顯示新數據庫中的數據"Grid1 Cols 5Grid1 Rows 35Grid2 Cols 5Grid2 Rows 35將下面的代碼添加到窗體的聲明部分 Dim nums(30) As LongDim names(30) As String * 20Dim addresses(30) As String * 25Dim ss_nums(30) As String * 12Const DB_LONG = 4Const DB_TEXT = 10Const DB_LANG_GENERAL = ";LANGID=0x0809;CP=1252;COUNTRY=0"將下面的代碼添加到窗體的Load事件中 Sub Form_Load ()Showgrid1.ColWidth(1) = 1000 'For Emp IDgrid1.ColWidth(2) = 2000 'For Emp Namegrid1.ColWidth(3) = 3000 'For Emp Addrgrid1.ColWidth(4) = 2000 'For Emp SSNgrid1.Col = 1grid1.Row = 0grid1.Text = "Emp ID" 'Header for Emp ID from text filegrid1.Col = 2grid1.Row = 0grid1.Text = "Emp Name" 'Header for Emp Name from text filegrid1.Col = 3grid1.Row = 0grid1.Text = "Emp Addr" 'Header for Emp Addr from text filegrid1.Col = 4grid1.Row = 0grid1.Text = "Emp SSN" 'Header for Emp SSN from text filegrid2.ColWidth(1) = 1000 'For Emp IDgrid2.ColWidth(2) = 2000 'For Emp Namegrid2.ColWidth(3) = 3000 'For Emp Addrgrid2.ColWidth(4) = 2000 'For Emp SSNgrid2.Col = 1grid2.Row = 0grid2.Text = "Employee ID" 'Header for Emp ID from DBgrid2.Col = 2grid2.Row = 0grid2.Text = "Employee Name" 'Header for Emp Name from DBgrid2.Col = 3grid2.Row = 0grid2.Text = "Employee Addr" 'Header for Emp ID from DBgrid2.Col = 4grid2.Row = 0grid2.Text = "Employee SSN" 'Header for Emp Name from DBEnd Sub 在Command1_Click事件中加入下面的代碼 Sub Command1_Click ()For i% = 1 To 30nums(i%) = i%names(i%) = "John Doe # " + Str$(i%)addresses(i%) = Str$(i%) + " Mocking Bird Lane"If i% 9 Then'* Enter the following four lines as one, single line:ss_nums(i%) = Trim$(Str$(i%) + Trim$(Str$(i%))+ Trim$(Str$(i%)) + "-" + Trim$(Str$(i% + 1))+ Trim$(Str$(i% + 1)) + "-" + Trim$(Str$(i%))+ Trim$(Str$(i%)) + Trim$(Str$(i%)) + Trim$(Str$(i%)))Else'* Enter the following two lines as one, single line:ss_nums(i%) = Trim$(Trim$(Str$(999)) + "-" + Trim$(Str$(88))+ "-" + Trim$(Str$(7777)))End IfNext i%Open "Testdata.DAT" For Output As #1For j% = 1 To 30Print #1, nums(j%)Print #1, names(j%)Print #1, addresses(j%)Print #1, ss_nums(j%)Next j%Close #1For i% = 1 To 30 'Display results from text filegrid1.Col = 1grid1.Row = i%grid1.Text = nums(i%) 'Load Emp IDsgrid1.Col = 2grid1.Row = i%grid1.Text = names(i%) 'Load Emp Namesgrid1.Col = 3grid1.Row = i%grid1.Text = addresses(i%) 'Load Emp Addrsgrid1.Col = 4grid1.Row = i%grid1.Text = ss_nums(i%) 'Load Emp SSNsNext i%End Sub在Command2_Click事件中加入下面的代碼 Sub Command2_Click ()Dim newdb As DatabaseDim newtb As TableDim newtd As New tabledefDim newidx As New IndexDim field1 As New field 'For Emp numsDim field2 As New field 'For Emp namesDim field3 As New field 'For Emp addressesDim field4 As New field 'For Emp ss_numsscreen.MousePointer = 11 'Display the time to buildSet newdb = CreateDatabase("NEWDB.MDB", DB_LANG_GENERAL)newtd.Name = "Emp_Table" '* New table namefield1.Name = "Emp_ID" '* Holds Employee ID nums()field1.Type = DB_LONGnewtd.Fields.Append field1field2.Name = "Emp_Name" '* Holds Emp names()field2.Type = DB_TEXTfield2.Size = 20newtd.Fields.Append field2field3.Name = "Emp_Addr" '* Holds Employee addr()field3.Type = DB_TEXTfield3.Size = 25newtd.Fields.Append field3field4.Name = "Emp_SSN" '* Holds emp ss_nums()field4.Type = DB_TEXTfield4.Size = 12newtd.Fields.Append field4newidx.Name = "Emp_ID_IDX" '* You have to have an indexnewidx.Fields = "Emp_ID"newidx.Primary = Truenewtd.Indexes.Append newidxnewdb.TableDefs.Append newtdSet newtb = newdb.OpenTable("Emp_Table")Open "Testdata.dat" For Input As #1BeginTransDo While Not (EOF(1))newtb.AddNewLine Input #1, tmp1$ 'Retrieve empl_idLine Input #1, tmp2$ 'Retrieve empl_nameLine Input #1, tmp3$ 'Re
本文作者:html教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 罗定市| 平武县| 富锦市| 洪洞县| 五峰| 三亚市| 加查县| 阿图什市| 南陵县| 大理市| 棋牌| 灯塔市| 益阳市| 台安县| 枝江市| 海盐县| 新绛县| 崇礼县| 广元市| 乐陵市| 神农架林区| 永靖县| 华池县| 全州县| 崇礼县| 富阳市| 黎城县| 祥云县| 利辛县| 石河子市| 荔浦县| 谢通门县| 西青区| 定西市| 潮安县| 洛阳市| 九江县| 新晃| 巴林左旗| 资溪县| 怀化市|