| 首页 | 电脑常识 | 程序设计 | 操作系统 | 语法 | 病毒安全 | 软件教程 | 硬件 | 数据库 | 多媒体 | 认证 | 下载 | 
首页>>程序设计 >>数据库
发布程序时对ODBC数据源的配置方法

发布程序时对ODBC数据源的配置方法

电脑学习网,xuef.com,最全最新最权威的电脑知识网站.
免费计算机学习教程,电脑入门指南.

           发布程序时对ODBC数据源的配置方法
          
                     维志,2002.4.8
          
方法1:  修改注册表

       可在制作安装程序时,利用安装程序的制作工具来修改注册表,完成ODBC数据源的配置,
       ODBC可用的驱动程序放在系统注册表的  HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI  下,
       ODBC的 System DSN 在系统注册表的  HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI 下,
       ODBC的 User DSN 在系统注册表的 HKEY_CURRENT_USER\Software\ODBC\ODBC.INI 下
       你可以打开注册表看一看就明白了!
            
方法2: 程序设置法, 可用自己的程式序来完成ODBC的配置,一种简单的方法是使用ODBCCP32.DLL中提供的一个函数来实现,
       此函数在Delphi中可声明如下:

     //配置ODBC数据源,成功则返回True
     function SQLConfigDataSource(
         hwndParent: Integer; 
         fRequest: LongInt; 
         lpszDriverString: string;
         lpszAttributes: string
     ): LongBool; stdcall; external 'ODBCCP32.DLL';

   参数说明:
     hwndParent: 父窗口Handle,当指定为0时不会出现对话框,否则会弹出标准的ODBC配置对话框
    
     fRequest: 命令请求,用来指明你要完成的功能,其值可为:
               ODBC_ADD_DSN        = 1;
               ODBC_CONFIG_DSN     = 2;
               ODBC_REMOVE_DSN     = 3;
               ODBC_ADD_SYS_DSN    = 4;
               ODBC_CONFIG_SYS_DSN = 5;
               ODBC_REMOVE_SYS_DSN = 6;
    
     lpszDriverString: 驱动程序名称,就是在ODBC设置中显示的驱动程序名称,如 Microsoft Access Driver (*.mdb)
    
     lpszAttributes: 此DSN的一些属性,可有多项,各项之间用分号(;)分隔
    
    
用法如下:    

const
  ODBC_ADD_DSN        = 1;
  ODBC_CONFIG_DSN     = 2;
  ODBC_REMOVE_DSN     = 3;
  ODBC_ADD_SYS_DSN    = 4;
  ODBC_CONFIG_SYS_DSN = 5;
  ODBC_REMOVE_SYS_DSN = 6;
 
在Form中放入一个Button,在其事件中写
procedure TForm1.Button1Click(Sender: TObject);
begin
 SQLConfigDataSource(
     0,
     ODBC_ADD_SYS_DSN,
     'Microsoft Access Driver (*.mdb)',
     'DSN=MyAccessDB;DBQ=C:\MyDB\MyDB.MDB;DefaultDir=C:\MyDB;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;Description=我的数据库'
  );
end;

单击Button1后
再打开控制面板的ODBC设置程序,可看到其中已加入名为MyAccessDB的DSN

你也可以在系统注册表中看到新加入了HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\MyAccessDB键,其它存放着函数中指定的参数.

若改为
procedure TForm1.Button1Click(Sender: TObject);
begin
 SQLConfigDataSource(
     Handle,
     ODBC_ADD_SYS_DSN,
     'Microsoft Access Driver (*.mdb)',
     'DSN=MyAccessDB;DBQ=C:\MyDB\MyDB.MDB;DefaultDir=C:\MyDB;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;Description=我的数据库'
  );
end;

单击Button1后,会弹出一个标准的Access数据源的设置窗体,如下图:


 

相 关 文 章
  • 用Delphi开发数据库程序经验三则

  • 在Delphi中处理数据库日期型字段的显示与输入

  • 能够处理任何数据库字段的Panel

  • 在DELPHI程序中使用ADO对象存取ODBC数据库

  • 通过Delphi访问Oracle数据库

  • 数据库应用程序开发中图像数据的存取技术

  • 自动编号的存储过程

  • SQLSERVER2000压力测试

  • 如何把数据库的内容写入到Word文档中?(胡广涛)

  • InstallShieldExpress制作Delphi数据库安装程序

  • 学府网电脑学习的乐园
    中国电脑教学网,电脑爱好者的乐园,做最好最全的计算机学习网站.