网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > DELPHI > 正文
在DELPHI程序中动态设置ODBC数据源
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/12
下载{$ArticleTitle}原创论文样式
库描述]
Driver=C:\PWIN98\System\odbcjt32.dll
[字符串,表示驱动程序,可见ODBCINST.INI]
DriverId=0x00000019(25)
[数字,表示驱动程序标识,不能改变]
FIL=Ms Access;
[字符串,可能与过滤Filter有关]
SafeTransaction=0x00000000
[数字,可能表示支持事务性操作的个数]
UID=""
[字符串,表示用户名称,此处为空字符串]
---- 3.在HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI\MyAccess中创建一个子键(SubKey)Engines, 再在其下创建子键(SubKey)Jet,即创建一个键为 HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI\MyAccess\Engines\Jet,然后在其下创建一些 键值,详细描述一个系统DSN的数据库引擎配置信息,主要信息有(中的内容为笔者注释):

ImplicitCommitSync=Yes
[字符串,可能表示是否立即反映数据修改]
MaxBufferSize=0x00000200(512)
[数字,表示缓冲区大小]
PageTimeout=0x00000005(5)
[数字,表示页超时]
Threads=0x00000003(3)
[数字,可能表示支持的最大线程数目]
UserCommitSync=Yes
[字符串,可能表示是否立即将数据修改反映到用户]
----   以上是建立一个系统DSN的基本信息(其它信息如选项或高级选项等信息也在这里设置,只不过因采用默认信息,注册表里没有列出),我们在程序中按上述步骤操作注册表,同样也能增加一个系统DSN或修改其配置.在下面的例子程序中,将按以上步骤建立一个系统DSN,请注意程序中的注释.

{*******************************************************
在本程序中,将创建一个ODBC系统数据源(DSN),
数据源名称:MyAccess 数据源描述:我的新数据源
数据库类型:ACCESS97
对应数据库:C:\Inetpub\wwwroot\test.mdb
*******************************************************}
{ 注意应在USES语句中包含Registry }
procedure TForm1.Button1Click(Sender: TObject);
var
registerTemp : TRegistry;
bData : array[ 0..0 ] of byte;
begin
registerTemp := TRegistry.Create;
//建立一个Registry实例
with registerTemp do
begin
RootKey:=HKEY_LOCAL_MACHINE;
//设置根键值为HKEY_LOCAL_MACHINE

//找到Software\ODBC\ODBC.INI\ODBC Data Sources
if OpenKey(''Software\ODBC\ODBC.INI
\ODBC Data Sources'',True) then
begin //注册一个DSN名称
WriteString( ''MyAccess'', ''Microsoft
Access Driver (*.mdb)'' );
end
else
begin//创建键值失败
memo1.lines.add(''增加ODBC数据源失败'');
exit;
end;
CloseKey;

//找到或创建Software\ODBC\ODBC.INI
\MyAccess,写入DSN配置信息
if OpenKey(''Software\ODBC\ODBC.INI
\MyAccess'',True) then
begin
WriteString( ''DBQ'', ''C:\inetpub\wwwroot
\test.mdb'' );//数据库目录
WriteString( ''Description'',
''我的新数据源'' );//数据源描述
WriteString( ''Driver'', ''C:\PWIN98\SYSTEM\
odbcjt32.dll'' );//驱动程序DLL文件
WriteInteger( ''DriverId'', 25 );
//驱动程序标识
WriteString( ''FIL'', ''Ms Access;'' );
//Filter依据
WriteInteger( ''SafeTransaction'', 0 );
//支持的事务操作数目
WriteString( ''UID'', '''' );//用户名称
bData[0] := 0;
WriteBinaryData( ''Exclusive'', bData, 1 );
//非独占方式
WriteBinaryData( ''ReadOnly'', bData, 1 );
//非只读方式
end
else//创建键值失败
begin
memo1.lines.add(''增加ODBC数据源失败'');
exit;
end;
CloseKey;

//找到或创建Software\ODBC\ODBC.INI
\MyAccess\Engines\Jet
//写入DSN数据库引擎配置信息
if OpenKey(''Software\ODBC\ODBC.INI
\MyAccess\Engines\Jet'',True) then
begin
WriteString( ''ImplicitCommitSync'', ''Yes'' );
WriteInteger( '
  • 上一篇资讯: 捕捉来自Thread的异常
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号