麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數(shù)據(jù)庫 > Access > 正文

如何將文本文件轉換為ACCESS數(shù)據(jù)庫

2024-09-07 19:05:43
字體:
來源:轉載
供稿:網(wǎng)友

本文向你介紹如何不用借助Access,直接在程序中創(chuàng)建一個數(shù)據(jù)庫,然后從標準的ASCII文本文件中讀取數(shù)據(jù)到數(shù)據(jù)庫中。原文是微軟知識庫中的一篇文章,但當時是針對VB3寫的,所以其中的代碼有點過時。例如現(xiàn)在DAO中已沒有Table對象,代之以Recordset對象。下面是修改后的代碼,在VB6中調(diào)試通過。
 首先在工程中添加對Microsoft DAO 3.51 Library引用。

在窗體中添加三個命令按鈕和兩個MSFlexGrid.

按照下表設置和控件的屬性:

控件 屬性 值

--------------------------------------------------------------------

Command1 Caption "建立文本文件并顯示在網(wǎng)格中"

Command2 Caption "傳輸入數(shù)據(jù)并新建一個數(shù)據(jù)庫"

Command3 Caption "顯示新數(shù)據(jù)庫中的數(shù)據(jù)"

Grid1 Cols 5

Grid1 Rows 35

Grid2 Cols 5

Grid2 Rows 35

將下面的代碼添加到窗體的聲明部分

Dim nums(30) As Long

Dim names(30) As String * 20

Dim addresses(30) As String * 25

Dim ss_nums(30) As String * 12

Const DB_LONG = 4

Const DB_TEXT = 10

Const DB_LANG_GENERAL = ";LANGID=0x0809;CP=1252;COUNTRY=0"

將下面的代碼添加到窗體的Load事件中

Sub Form_Load ()

Show

grid1.ColWidth(1) = 1000 'For Emp ID

grid1.ColWidth(2) = 2000 'For Emp Name

grid1.ColWidth(3) = 3000 'For Emp Addr

grid1.ColWidth(4) = 2000 'For Emp SSN

grid1.Col = 1

grid1.Row = 0

grid1.Text = "Emp ID" 'Header for Emp ID from text file

grid1.Col = 2

grid1.Row = 0

grid1.Text = "Emp Name" 'Header for Emp Name from text file

grid1.Col = 3

grid1.Row = 0

grid1.Text = "Emp Addr" 'Header for Emp Addr from text file

grid1.Col = 4

grid1.Row = 0

grid1.Text = "Emp SSN" 'Header for Emp SSN from text file

grid2.ColWidth(1) = 1000 'For Emp ID

grid2.ColWidth(2) = 2000 'For Emp Name

grid2.ColWidth(3) = 3000 'For Emp Addr

grid2.ColWidth(4) = 2000 'For Emp SSN

grid2.Col = 1

grid2.Row = 0

grid2.Text = "Employee ID" 'Header for Emp ID from DB

grid2.Col = 2

grid2.Row = 0

grid2.Text = "Employee Name" 'Header for Emp Name from DB

grid2.Col = 3

grid2.Row = 0

grid2.Text = "Employee Addr" 'Header for Emp ID from DB

grid2.Col = 4

grid2.Row = 0

grid2.Text = "Employee SSN" 'Header for Emp Name from DB

End Sub

在Command1_Click事件中加入下面的代碼

Sub Command1_Click ()

For i% = 1 To 30

nums(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 If

Next i%

Open "Testdata.DAT" For Output As #1

For j% = 1 To 30

Print #1, nums(j%)

Print #1, names(j%)

Print #1, addresses(j%)

Print #1, ss_nums(j%)

Next j%

Close #1

For i% = 1 To 30 'Display results from text file

grid1.Col = 1

grid1.Row = i%

grid1.Text = nums(i%) 'Load Emp IDs

grid1.Col = 2

grid1.Row = i%

grid1.Text = names(i%) 'Load Emp Names

grid1.Col = 3

grid1.Row = i%

grid1.Text = addresses(i%) 'Load Emp Addrs

grid1.Col = 4

grid1.Row = i%

grid1.Text = ss_nums(i%) 'Load Emp SSNs

Next i%

End Sub

在Command2_Click事件中加入下面的代碼

Sub Command2_Click ()

Dim newdb As Database

Dim newtb As Table

Dim newtd As New tabledef

Dim newidx As New Index

Dim field1 As New field 'For Emp nums

Dim field2 As New field 'For Emp names

Dim field3 As New field 'For Emp addresses

Dim field4 As New field 'For Emp ss_nums

screen.MousePointer = 11 'Display the time to build

Set newdb = CreateDatabase("NEWDB.MDB", DB_LANG_GENERAL)

newtd.Name = "Emp_Table" '* New table name

field1.Name = "Emp_ID" '* Holds Employee ID nums()

field1.Type = DB_LONG

newtd.Fields.Append field1

field2.Name = "Emp_Name" '* Holds Emp names()

field2.Type = DB_TEXT

field2.Size = 20

newtd.Fields.Append field2

field3.Name = "Emp_Addr" '* Holds Employee addr()

field3.Type = DB_TEXT

field3.Size = 25

newtd.Fields.Append field3

field4.Name = "Emp_SSN" '* Holds emp ss_nums()

field4.Type = DB_TEXT

field4.Size = 12

newtd.Fields.Append field4

newidx.Name = "Emp_ID_IDX" '* You have to have an index

newidx.Fields = "Emp_ID"

newidx.Primary = True

newtd.Indexes.Append newidx

newdb.TableDefs.Append newtd

Set newtb = newdb.OpenTable("Emp_Table")

Open "Testdata.dat" For Input As #1

BeginTrans

Do While Not (EOF(1))

newtb.AddNew

Line Input #1, tmp1$ 'Retrieve empl_id

Line Input #1, tmp2$ 'Retrieve empl_name

Line Input #1, tmp3$ 'Re

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: h视频在线观看免费 | 国产免费让你躁在线视频 | av懂色 | 午夜久久视频 | 亚洲第一综合色 | 久久免费视频1 | 精品国产一区二区三 | a视频在线看 | 色欲香天天天综合网站 | 成片免费大全 | 成人福利在线看 | 91热久久免费频精品黑人99 | 午夜精品成人一区二区 | 欧美日韩专区国产精品 | 国产午夜精品理论片a级探花 | 精品国产一区二区久久 | 澳门一级淫片免费视频 | 爱高潮www亚洲精品 欧美黄色一级片视频 | 精品国产乱码久久久久久久 | 久久精品亚洲精品国产欧美kt∨ | 国产精品99精品 | 最新中文字幕日本 | 国产亚洲精久久久久久蜜臀 | 成人啪啪18免费网站 | 黄色av电影在线播放 | 天天草夜夜骑 | va视频| 国产毛片毛片 | 亚洲精品3 | 伊人网站 | 欧美成人免费一区二区三区 | h色在线观看 | 国产午夜亚洲精品午夜鲁丝片 | 蜜桃网在线 | 国产1区在线 | 黄色成年在线观看 | 毛片免费在线 | 一级电影在线免费观看 | 色妇视频| 精品一区二区三区中文字幕 | 欧美不卡 |