-
vb教程之用VB实现动态文本数据到ORACLE数据库基表
日照港务局通信信息中心 徐西波
---- 将文本数据迁移到ORACLE数据基表中可采用多种方法,如采用ORACLE公司提供的SQL*LOADER实用工具,该工具适用于将静态文本数据加载到ORACLE基表,也可采用程序控制手段将动态变化的文本数据迁移到ORACLE基表中。本文讲述了如何通过VB5.0实现将动态变化的文本数据迁移到ORACLE基表中。
1﹑实现环境:
数据库服务器:ORACLE 7.3数据库
Windows 95/98
VB5.0中文专业版
通过串口接收到的内容动态变化的文本数据文件
2﹑实现要求:
---- 将客户机通过串口接收到的动态变化的 bl.dat 文本文件内容迁移到ORACLE数据库rg01的 hyyb_bl 基表中。
3﹑实现步骤:
---- ⑴﹑首先保证客户端与ORACLE数据库的正常连接。
---- ⑵﹑在客户端安装ORACLE 客户端网络组件如下:
Oracle Client Configuration Manager
Oracle Client Software Agent 3.2.2.1.0
---- ⑶﹑在客户端设置ODBC数据源:
在控制面板中双点 <32位ODBC>项,弹出窗口,选中<用户DSN>选项卡,然后点 击<添加>按钮。
在弹出的<创建新数据源>窗口中,选择<用于Oracle 的微软ODBC驱动器>,按<完成>按钮。(注:该 驱动器是在安装VB5或OFFICE97等微软产品时装好的)
在弹出的<用于Oracle设置的微软ODBC驱动器>窗口中,设置数据源名称为数据库名,用户名称及连 接字段。在本文中设置如下:数据源名称:rg01。描述:rg01。用户名称:developer。连接字段: rg01
按<确认>按钮
---- ⑷﹑编制代码:(代码片断)
. 在 Form_load()事件中设置连接字符串:
strCn = "ODBC;DSN=rg01;UID=developer;PWD=scmis"
. 为ODBC数据源创建链接表:
blfilename = "c:\qx\bl.dat"
blrqstring = ""
Set dbs = OpenDatabase("C:\qx\qx.mdb", False, False)
On Error Resume Next
dbs.TableDefs.Delete "Tabbl"
dbs.TableDefs.Refresh
Set tdf = dbs.CreateTableDef("Tabbl")
tdf.Connect = strCn
tdf.SourceTableName = "developer.hyyb_bl"
dbs.TableDefs.Append tdf
dbs.TableDefs.Refresh
Set rst_bl = dbs.OpenRecordset("Tabbl",
dbOpenDynaset)
Set qdf = dbs.CreateQueryDef("")
qdf.Connect = strCn
On Error GoTo 0
. 设置定时事件:
Private Sub Timer1_Timer()
Dim blstring As String
blstring = ""
On Error GoTo errhandel
If blrqstring <> FileDateTime(blfilename) Then
blrqstring = FileDateTime(blfilename)
If blfilename <> "" Then
Refreshbl blfilename
End If
End If
errhandel:
End Sub
. 文件操作
Sub Refreshbl(para_filename)
Dim MyString
qdf.SQL = "delete from developer.hyyb_bl"
qdf.ReturnsRecords = False
qdf.Execute
Open para_filename For Input As #1
Do While Not EOF(1)
Line Input #1, MyString
dbs.Execute "insert into
Tabbl values('" & MyString & "')"
Loop
Close #1
End Sub
---- 将文本数据迁移到ORACLE数据基表中可采用多种方法,如采用ORACLE公司提供的SQL*LOADER实用工具,该工具适用于将静态文本数据加载到ORACLE基表,也可采用程序控制手段将动态变化的文本数据迁移到ORACLE基表中。本文讲述了如何通过VB5.0实现将动态变化的文本数据迁移到ORACLE基表中。
1﹑实现环境:
数据库服务器:ORACLE 7.3数据库
Windows 95/98
VB5.0中文专业版
通过串口接收到的内容动态变化的文本数据文件
2﹑实现要求:
---- 将客户机通过串口接收到的动态变化的 bl.dat 文本文件内容迁移到ORACLE数据库rg01的 hyyb_bl 基表中。
3﹑实现步骤:
---- ⑴﹑首先保证客户端与ORACLE数据库的正常连接。
---- ⑵﹑在客户端安装ORACLE 客户端网络组件如下:
Oracle Client Configuration Manager
Oracle Client Software Agent 3.2.2.1.0
---- ⑶﹑在客户端设置ODBC数据源:
在控制面板中双点 <32位ODBC>项,弹出窗口,选中<用户DSN>选项卡,然后点 击<添加>按钮。
在弹出的<创建新数据源>窗口中,选择<用于Oracle 的微软ODBC驱动器>,按<完成>按钮。(注:该 驱动器是在安装VB5或OFFICE97等微软产品时装好的)
在弹出的<用于Oracle设置的微软ODBC驱动器>窗口中,设置数据源名称为数据库名,用户名称及连 接字段。在本文中设置如下:数据源名称:rg01。描述:rg01。用户名称:developer。连接字段: rg01
按<确认>按钮
---- ⑷﹑编制代码:(代码片断)
. 在 Form_load()事件中设置连接字符串:
strCn = "ODBC;DSN=rg01;UID=developer;PWD=scmis"
. 为ODBC数据源创建链接表:
blfilename = "c:\qx\bl.dat"
blrqstring = ""
Set dbs = OpenDatabase("C:\qx\qx.mdb", False, False)
On Error Resume Next
dbs.TableDefs.Delete "Tabbl"
dbs.TableDefs.Refresh
Set tdf = dbs.CreateTableDef("Tabbl")
tdf.Connect = strCn
tdf.SourceTableName = "developer.hyyb_bl"
dbs.TableDefs.Append tdf
dbs.TableDefs.Refresh
Set rst_bl = dbs.OpenRecordset("Tabbl",
dbOpenDynaset)
Set qdf = dbs.CreateQueryDef("")
qdf.Connect = strCn
On Error GoTo 0
. 设置定时事件:
Private Sub Timer1_Timer()
Dim blstring As String
blstring = ""
On Error GoTo errhandel
If blrqstring <> FileDateTime(blfilename) Then
blrqstring = FileDateTime(blfilename)
If blfilename <> "" Then
Refreshbl blfilename
End If
End If
errhandel:
End Sub
. 文件操作
Sub Refreshbl(para_filename)
Dim MyString
qdf.SQL = "delete from developer.hyyb_bl"
qdf.ReturnsRecords = False
qdf.Execute
Open para_filename For Input As #1
Do While Not EOF(1)
Line Input #1, MyString
dbs.Execute "insert into
Tabbl values('" & MyString & "')"
Loop
Close #1
End Sub
最新更新
python爬虫及其可视化
使用python爬取豆瓣电影短评评论内容
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比