VB6中用Oracle数据控件访问Oracle

  • 发布于:2023-12-01
  • 144 人围观
系统环境 :

   1、操作系统:Windows 2000 Server

   2、数据库: Oracle 8i R2 (8.1.6) for NT 企业版

   3、开发工具:Visual Basic 6.0 中文版

连接方法 :

一、安装 Oracle 8i R2 (8.1.6) for NT 企业版

   使用典型安装,安装目录为D:\Oracle;

   注:安装完Oracle后,在D:\Oracle\Ora81\BIN\目录下会有oradc.ocx文件存在,VB可使用此控件访问Oracle数据库

二、安装 Visual Basic 6.0 中文版

   把Visual Basic 6.0光盘放入光驱,使用典型安装,

   安装目录为D:\Program Files\Microsoft Visual Studio\VB98;

三、生成Oracle实验记录

   连入SQL*Plus,以system/manager用户登录

   SQL> conn system/manager

   创建新的用户:如user1/pass1,赋予connect,resource权限。

   SQL> grant connect,resource to user1 identified by pass1;
   SQL> conn user1/pass1
   SQL> create table test(a number,b char(19));
   SQL> insert into test values(1,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'));
   SQL> insert into test values(2,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'));
   SQL> insert into test values(3,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'));
   SQL> insert into test values(4,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'));
   SQL> insert into test values(5,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'));
   SQL> commit;
   SQL> select * from test;

     A B
     ---------- -------------------
     1 2000-11-28 20:27:33
     2 2000-11-28 20:27:36
     3 2000-11-28 20:27:38
     4 2000-11-28 20:27:40
     5 2000-11-28 20:27:52

     D:\Oracle\Ora81\network\ADMIN\tnsnames.ora中有如下内容:

     ORADB =
     (DESCRIPTION =
     (ADDRESS_LIST =
     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.1.1.1)(PORT = 1521))
     )
     (CONNECT_DATA =
     (SERVICE_NAME = oradb)
     )
     )

   总结:

   Oracle service_names: oradb
   Oracle用户名:     user1
   户名密码:       pass1
   测试表名:       test
   tnsnames:       oradb

四、启动 Visual Basic 6.0,写连接Oracle的VB程序

   开始->程序->Microsoft Visual Basic 6.0 中文版->Microsoft Visual Basic 6.0 中文版

   文件->新建工程->VB 企业版控件,如下图:


   添加访问Oracle的部件(CTRL+T):

   工程->部件->Oracle Data Control,如下图:


   选中此控件(Oracle Data Control),单击“确定”(此控件对应的就是D:\Oracle\Ora81\BIN\oradc.ocx)

   VB开发窗口右边的工具箱面板上会出现此控件的图形标志,如下图:


   用鼠标双击此控件(ORADC),再双击MSFlexGrid控件(上图中另一个画红框的),把它们放到窗体Form1上,默认名称为ORADC1和MSFlexGrid1,如下图:


   修改控件ORADC1和MSFlexGrid1的属性,如下图:


   ORADC1的Connect属性:user1/pass1
   ORADC1的DatabaseName属性:oradb
   ORADC1的RecordSource属性:select * from test

   MSFlexGrid1的DataSource属性:ORADC1

   也可以不设置ORADC1控件的任何属性,而使用窗体的Form_Load()过程来给ORADC1控件赋值

   Private Sub Form_Load()
   ORADC1.Connect = "user1/pass1"
   ORADC1.DatabaseName = "oradb"
   ORADC1.RecordSource = "select * from test"
   ORADC1.Refresh
   End Sub

   按F5,运行此程序,结果如下图:

万企互联
标签: