⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 set0dbc_unit.pas

📁 动态创建ODBC,动态创建ODBC.rar ,动态创建ODBC.rar
💻 PAS
字号:
unit Set0DBC_Unit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, INIFiles;

type
  TSetODBC_Form = class(TForm)
    Button1: TButton;
    GroupBox1: TGroupBox;
    CheckBox1: TCheckBox;
    Label1: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    Edit2: TEdit;
    Label3: TLabel;
    Edit3: TEdit;
    procedure Button1Click(Sender: TObject);
    procedure CheckBox1Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  SetODBC_Form: TSetODBC_Form;
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;

implementation

{$R *.dfm}


function SQLConfigDataSource(
         hwndParent: Integer;
         fRequest: LongInt;  
         lpszDriverString: string;
         lpszAttributes: string 
     ): LongBool; stdcall; external 'ODBCCP32.DLL';

procedure TSetODBC_Form.Button1Click(Sender: TObject);
begin
 IF(SQLConfigDataSource(0,
  ODBC_ADD_DSN,//~换成Handle就是手工配置
  'SQL Server',     //数据库类型
  'DSN='+Edit2.text+#0 + //数据源名称
  'Server='+Edit1.text+#0 +  //SQL Server服务器名
  'Database='+Edit3.text+#0 +  //数据库名称
  'Description=动态配置ODBC'#0 //描述
  )) then
   ShowMessage('创建ODBC连接成功!')
  else
    ShowMessage('创建ODBC连接失败!');
end;

procedure TSetODBC_Form.CheckBox1Click(Sender: TObject);
begin
        GroupBox1.Visible := CheckBox1.Checked;
end;

procedure TSetODBC_Form.FormShow(Sender: TObject);
begin
     CheckBox1.Checked:=true;
     GroupBox1.Visible:=true;
end;

procedure TSetODBC_Form.FormCreate(Sender: TObject);
var inifile: TIniFile;
begin
    IniFile := TIniFile.Create(extractfilepath(application.ExeName)+'\set.ini');
    IniFile.WriteString('配置','测试','OK');
    Edit1.Text :=  IniFile.ReadString('配置','数据库服务器', '');
    Edit2.Text :=  IniFile.ReadString('配置','ODBC 别名', '');
    Edit3.Text :=  IniFile.ReadString('配置','数据库名称', '');
    iniFile.Free;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -