📄 odbc.txt
字号:
{*******************************************************
在本程序中,将创建一个ODBC系统数据源(DSN),
数据源名称:jygl 数据源描述:武警加油13:24 2001-5-17
数据库类型: ACCESS97
对应数据库:C:\Program Files\武警部队IC卡加油管理子系统\main.mdb
*******************************************************}
{ 注意应在USES语句中包含Registry }
procedure TFrmSetup.OutlookBtnODBCClick(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( 'jygl', 'Microsoft Access Driver (*.mdb)' );
end
else
begin//创建键值失败
ShowMessage('建立ODBC数据源失败');
exit;
end;
CloseKey;
//找到或创建Software\ODBC\ODBC.INI\jygl,写入DSN配置信息
if OpenKey('Software\ODBC\ODBC.INI\jygl',True) then
begin
WriteString( 'DBQ', frmmain.RunPath + '\main.mdb' );//数据库目录
WriteString( 'Description', '武警加油' );//数据源描述
WriteString( 'Driver', 'C:\WINNT\SYSTEM32\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
ShowMessage('建立ODBC数据源失败');
exit;
end;
CloseKey;
//找到或创建Software\ODBC\ODBC.INI\MyAccess\Engines\Jet
//写入DSN数据库引擎配置信息
if OpenKey('Software\ODBC\ODBC.INI\jygl\Engines\Jet',True) then
begin
WriteString( 'ImplicitCommitSync', 'Yes' );
WriteInteger( 'MaxBufferSize', 512 );//缓冲区大小
WriteInteger( 'PageTimeout', 10 );//页超时
WriteInteger( 'Threads', 3 );//支持的线程数目
WriteString( 'UserCommitSync', 'Yes' );
end
else//创建键值失败
begin
ShowMessage('建立ODBC数据源失败');
exit;
end;
CloseKey;
//建立SQL
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( 'wjoil', 'SQL Server' );
end
else
begin//创建键值失败
ShowMessage('建立ODBC数据源失败');
exit;
end;
CloseKey;
//找到或创建Software\ODBC\ODBC.INI\jygl,写入DSN配置信息
if OpenKey('Software\ODBC\ODBC.INI\wjoil',True) then
begin
//WriteString( 'DBQ', 'd:\\main.mdb' );//数据库目录
WriteString( 'Database', 'wjoil'); //数据源表名
WriteString( 'Description', '武警指标管理' );//数据源描述
WriteString( 'Driver', 'C:\WINNT\SYSTEM32\SQLSRV32.dll' );//驱动程序DLL文件
WriteString( 'LastUser', 'sa' ); //上次使用者名称
WriteString( 'Server', 'BILLY' ); //服务器
end
else//创建键值失败
begin
ShowMessage('建立ODBC数据源失败');
exit;
end;
CloseKey;
ShowMessage('建立ODBC数据源成功');
Free;
end;
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -