说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

VB如何将文本文件转换为ACCESS数据库

HTML文档下载 WORD文档下载 PDF文档下载
VB如何将文本文件转换为ACCESS数据库

本文向你介绍如何不用借助Access,直接在程序中创建一个数据库,然后从标准的
ASCII文本文件中读取数据到数据库中。原文是微软知识库中的一篇文章,但当时
是针对VB3写的,所以其中的代码有点过时。例如现在DAO中已没有Table对象,代
之以Recordset对象。下面是修改后的代码,在VB6中调试通过。

首先在工程中添加对Microsoft DAO 3.51 Library引用。


在窗体中添加三个命令按钮和两个MSFlexGrid.


按照下表设置和控件的属性:
控件 属性 值
--------------------------------------------------------------------
Command1 Caption "建立文本文件并显示在网格中"
Command2 Caption "传输入数据并新建一个数据库"
Command3 Caption "显示新数据库中的数据"
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
OS X平台上出现窃取比特币的木马 《近匠》第11期:Arrownock——移动社交构建师 面向企业:Google发布iOS版Google Admin应用 Github推出Education平台 师生免费享有微账号 平板的市场依然巨大:应用更丰富,Phablet设备存局限 免费的PCB数据3D转换工具 OBD++ XVL Converter Hadoop Namenode以regular方式启动代码流程分析 走进支撑过8亿用户的Yahoo!数据中心 Napier,一个引领Rackspace14年老兵功成身退 Twitter最新测试版被指仿Facebook的界面设计 成功求职者的自述:如何向应聘企业展示自身价值? 仅用移动开发服务:一分钱不花,开发native应用 苹果员工爆辞职内幕 Windows Phone 8.1被曝光信息汇总 Phaser:开源的HTML5 2D游戏开发框架 HTML5调查:做的好,收入不比iOS差 汽车巨人福特让“数据”说话 基调数据解读2014网购行业的3大变化 测测:用百度Clouda占卜移动互联网 微软的无奈:或允许Android应用运行于Windows平台 如何选择适合自己的编程语言 Google Now新增语音命令:生活简单一点,让爱更近一点 千万美金收购案:GetJar是一家怎样的公司 传苹果与时代华纳等公司合作,推新一代Apple TV 追本溯源 解析“大数据生态环境”发展现状 为Hadoop存储层增加对OpenStack Swift的支持 详解并行逻辑回归 在AWS上使用GPU实现分布式神经网络 大数据时代,看“小数据”如何支持决策 22人15天研发 微信红包系统发起“珍珠港偷袭”的背后 开发产品防脱节,DevOps来帮忙 怎样在客户端的包含base64编码图片数据的xml文件将文件显示出来,高难! 在批处理文件中怎么样检测当前系统是WIN98还是WIN2000,在线等待,请赐教! 如何定位问题,给100分. 怎样加载API CallWindowProc?? 怎麼提取日期字段的小時,分,秒 关于多工具栏的问题 关于非典 我有个帖子没人答,100分,快来,前四位每人25! 请问有哪些上海的兄弟有高档酒店一整套系统出售,请联系poorshark@21cn.com,告之QQ号!!! 求教:关于多工具栏的问题 我想知道基于IP的视频通讯是意义 请问如何将YUY2图像数据转换成RGB格式的数据? 如何删除pub scanner偷偷创建的ftp隐藏目录? 怎样从ORACLE中导出表结构?在线等待!!!! Delphi+word??? 送分。。。 我想知道基于IP的视频通讯是意义 如何用JSP实现本地的文本操作 如何判断在DBGRID控件上,鼠标移动到哪一列上面? 高分〔200啊〕求erp软件 为什么EXCEL中打印表格时经常莫名其妙地使部分字变得较大,主要是符号类字。 每隔5分钟刷新 管理权限问题?在线等待。 Tomcat下进入相应目录时,总是列出所有的文件列表,我如何关闭此功能? 烦,给分... 最后30分了,不要闲少,还望各位帮帮忙!! 各位,哪里有DX系列的组件(For D6)下载啊 数据的合计怎么做? 多少钱 关于SQL语句问题 有关Table控件中动态添加的控件使用问题!!!!!!!!! 请问如何在局域网里面测算每个计算机分配的速度或数据流量? VC/MFC--是否是你的唯一选择? OA系统中的一个大问题,大难题, 四川五粮液将隆重推出一款CPU:"五粮液 Inside",促销口号:“买一块五粮CPU 送一瓶五粮液”,预购从速 请问用Swing,有第三方提供给XML显示/编辑好的组件么? 帮忙请教一个问题,计算机应用专业的英文全称怎么写? 打扰一下:第一次加,请各位多多指教 ! 明天高考了,祝福所有莘莘学子:金榜提名! dll 中的共享内存段 大家帮我推荐一本VC++快速入门的书,来者有分!! php 与 sql server2000 如何将char数组的某一段拷贝到另一个char数组里面?在线等待啊!急啊 大家有谁用过eclipse2.1+lomboz+jboss-3.2.1_tomcat-4.1.24呀!我怎么配置都不成功! 请教一个简单的SQL语句 问几个初级一点的问题:) 关于win2000server服务器安全的一个问题。 高分求助?获取用户IP并存在文件里的代码! 帮帮忙 获取DATAGRID中的更新列的数据发现只能得到更新前的数据 怎样用C或C++实现一个sql语言简单编译器 求一个特效:当鼠标停留在任务栏图标上,显示当前程序状态 找一种粘结剂, 自然干燥后,遇到水就可以恢复粘性的, 是什么材料?听说有一种粘结剂, 干燥后,遇到水就可以恢复粘性的, 是什么材料? 同归于尽中的尽是完,是死亡,还是到达顶端的意思. 如图,∠AOB内有一点P,点P关于OA,OB的对称轴为P1P2M,交OB于N.若P1P2=8cm.求△PMN的周长. 同归于尽的尽得意思 m’appelle hélène的法语音标,要的是这首歌曲的法文音标,不是中文翻译过来的 民族变迁如何影响世界文化空间格局的形成 有没有一种有粘性的颗粒状无机材料?各位学无机材料的高手,谁能告诉我有没有一种有粘性的呈颗粒状(直径1mm左右)的无机材料,我很需要它,感激不尽!我需要用它来跟一种保温材料混合成型 Comment tu t'appelle?这句话明显是陈述句语序,怎么还经常当问句使用? Elle Et 这个积分怎么算 是Il s'appele …… 还是 Il s'appelle……?怎么很多地方写Il s'appele …… 又有很多地方写 Il s'appelle……到底哪个是对的呢? 马克思为什么说“良心是由人的知识和全部生活方式来决定的”? 有一个分数,分子分母的和是149,分数化成小数是0.abc,求0.abc是多少?我会在加悬赏分的! 世界上什么称精确度最高?谁知道世界上什么称最准呀,准确度是多少呀. 人体每天水的摄入量多少最合适? 请问谁知道有关水的古诗词我都迷茫了,打心底谢谢了1g C语言里的 %10d 是什么意思?就是%后面加一个数字是什么意思?精确度么? Make the clock__(move)up and down. 请教一下关于酒的古诗我都迷茫了, 谁知道带春的古诗有哪些,有点着急了啊,打心底谢谢了2J 两个成语的读音和写法1."远见卓识"中的"卓"字读一声还是二声?2.是"蓬荜生辉"还是"蓬筚生辉"?再问:你们是根据哪本字典?我为什么查不同的字典(还有成语字典)说法不一样呀?我无奈了.查不同 同归于尽的意思是什么? 重力是不是外力 古不变,谁知道这个成语的完整写法和读音 有什么粘性材料,可以涂在纸上,干的时候不具有粘性,只要向其哈气(热气+水汽),就可以使其具有粘性? 支付宝里德提现是什么意思 两个相似三角形面积相等,是否能证明它们全等? 分子:ax+b,分母:x平方+1,值域是【-1,4】,求a,b 关于离散概率以下面这组数据据说是根据02 03 09 22 24 27或02 03 09 11 22 24 27用离散概率得出,谁能推算出公式?33 11 12 18 3009 17 13 01 2705 20 32 25 1521 22 14 16 0703 08 31 19 2326 29 04 02 0628 24 10共33个数,分为 数学二元一次计算(答对加分)[2(x-y)]/3=(x+y)/4-16(x+y)=4(2x-y)+16这是一个方程组啊! 零残女在哪里卖车啊?为什么零元啊?那不是白送吗? 离散概率问题 面积相等的两个相似三角形是否全等请给出证明 为什么卖车 红线部分的意思, 证明相似三角形的格式是什么?是不是和证明全等一样? 生活大爆炸 霍金 哪一集 What is good can be better can be better 是被动语态吧,前面怎么是What is good.这句话综合起来该怎么样理解更好,网友请详解? 样品离散度如何计算 有个客户选择黄金色的颜色,想请问一下如果用水性色浆应该怎么样才能调出来? 梅雨季节食物变质的根本原因 是微生物滋生还是湿度大? 求证:两个相似三角形对应角平分线之比等于相似比 橘红色雨胶漆色浆的配比是多少啊?是黄:红:雨胶漆怎么配比啊 求英文辩论论点It is better to work in a good and big company far away from your hometownRT 空气中的水珠是否包括在湿度中就是:空气中与灰尘合并成水珠的水汽是不是包含在空气的相对湿度中的? 以FeCl3.6H2O为铁源,钛酸四丁酯为钛源,用水热法制备掺杂铁的纳米TiO2粉末.控制铁的掺杂量为0.5% 可行的方法,一定要按这要求做 _____téléphones à Paul a.Tu b.Vous c.Je d.Il 如何设置美国福禄克 FLUKE725 多功能过程仪表校准器使其输出电流为4-20mA? 这是什么东西啊 什么叫magnet? APON和EPON的区别和各自的特点?如题 什么是离散趋势?定义?算法? 3Q magnet歌词 求花园面积是多少平方米?能写成 求花园面积是多少m2? 英语翻译我叫XX(姓名),今年XX岁,我出生在XX.我的生日是1995年8月6日.我是一个有艺术气息的男生.我会演奏很多乐器,比如XX.XX,XX.虽然擅长乐器,可是不太喜欢唱歌.我的爱好是XX和XX.我喜欢收集 同归于尽的意思 同归于尽中,尽的意思必须是尽的意思. 请问大家下有关水的古诗词就告诉我吧打心底谢谢了0g 我们同归于尽吧 又个女的对我说的 同归于尽的尽是什么意思 如图,∠AOB内有一点P,点P关于OA,OB的对称轴为P1P2,连接p1p2,交OA于M,交OB于N,若P1P2=5cm,求△PMN周长 经济观察:上海自贸“试验田”承载的财尼日尔将为92名被困沙漠渴死移民进行外交部:中方将与上合组织各方一道进一亚太地区主要股市涨跌不一美媒:美国公布核弹更新计划 强化核威日本原子弹爆炸外籍幸存者要求安倍\"中方将与各方一道加大打击“三股势力”港媒:中央楼市思路初显 透露多点政策日本麦当劳就“禁流浪汉入店”道歉外交部就打击恐怖主义、叙利亚销毁化武世界主要城市11月2日天气预报英内政部报告称非法移民给英国带来沉重外交部:对目前阶段有关销毁叙化武决定律师称斯诺登可在俄境内就德国遭美监听报道称美通过澳驻华使馆监听中国 中方“免费”医疗让俄罗斯进退两难俄按揭购房方式未成功普及 专家称与银旧金山地方检察院举行反家暴妇女维权座澳大利亚赏鲸季来临 民众目睹2600日本学生12万粒杏仁膏立体再现法国印澳夫妇因非法改建房屋供学生住宿被罚3怎样能让双眼皮的效果持久护肤误区盘查:以为这样就是去角质?联想公司将弃用“Motorola”品女士怀孕后会有四种不适症状CES2016到底有哪些高科技,一分留住最美、最感动的瞬间:2015年度7岁以上贫困再生障碍性贫血学生患者将壮观!格鲁吉亚庆祝东正教圣诞节(高清智利女记者直播中比基尼滑落走红 被指访日外国人45年来首超出境日本人 中太行动力十足:歼-10B配国产发动机宜宾明代白塔修缮后变矮 市民质疑破坏陆大学刊征才广告 台陆委会:已通报“广东潮州市公路局领导班子接受宴请发生上海:车牌投拍者要求退还拍卖手续费一300人入围“英特尔科学奖” 华裔学韩造船业“三巨头”去年赤字达8万亿韩解放军机关干部 32℃巡边警戒 驾雪更加坚定自觉地贯彻政治建军要求国产印钞机设计师之子:人民币是怎么造习主席在第13集团军军史馆里重点看了
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘