unit Unit_DM;

interface

uses
SysUtils, Classes, DB, ADODB,inifiles,windows,forms,controls;

type
TDM = class(TDataModule)
ADOConn: TADOConnection;
DS_BomFind: TDataSource;
Qry_BomFind: TADOQuery;
procedure DataModuleCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
userIdStr,passwordStr,ServerNameStr,dataBaseNameStr,inifilePath:string;
end;

var
DM: TDM;

implementation

{$R *.dfm}

procedure TDM.DataModuleCreate(Sender: TObject);
var
conn:tinifile;

begin
//数据库连接设置。 conn.ini
iniFilePath:=ExtractFilePath(application.ExeName); //获取INI文件路径。
if inifilePath[length(inifilePath)]='' then
begin
iniFilePath:=iniFilePath+'conn.ini';
conn:=tinifile.Create(iniFilePath);
end
else
begin
iniFilePath:=iniFilePath+'conn.ini';
conn:=tiniFile.Create(inifilePath);
end;
if not FileExists(iniFilePath) then
begin
application.MessageBox('配置文件不存在!','提示',mb_OK) ;
APplication.Terminate;
end;
// providerStr:=conn.ReadString('config','provider','');
UserIDStr:=conn.ReadString('config','userID','');
passwordStr:=conn.ReadString('config','password','');
ServerNameStr:=conn.ReadString('config','ServerName','');
dataBaseNameStr:=conn.ReadString('config','DataBaseName','');
if (ServerNameStr='') or (DatabaseNameStr='') then
begin
application.MessageBox('数据库配置不正确,请重新配置!','提示',mb_ok);
Application.Terminate;
end;
ADOconn.Close;
ADOconn.ConnectionString:='';
ADOconn.ConnectionString:='Provider=SQLOLEDB.1;User ID='+UserIDstr+';Password='+Passwordstr+ ';Data Source='+ServerNameStr+ ';Initial Catalog='+DatabaseNamestr;
// adoconn.ConnectionString:='Provider='+Providerstr+';User ID='+UserIDstr+';Password='+Passwordstr+ ';Data Source='+DataSourceStr+ ';Initial Catalog='+DatabaseNamestr;

try
adoconn.Connected:=true;
except
application.MessageBox('数据库配置不正确,请重新配置!','提示',mb_ok);
adoconn.Connected:=false;
application.Terminate;
end;
end;

end.

下面是conn.INI文件内容:

[config]
UserID=sa
Password=密码
DataSource=服务器名或IP地址
DatabaseName=用户数据库名

Delphi ADOConnection连接的更多相关文章

  1. Delphi XE3通过ADOConnection 连接 MySQL 5.5.27 数据库

    Delphi XE3通过ADOConnection 连接 MySQL 5.5.27 数据库 unit Unit1; interface uses Winapi.Windows, Winapi.Mess ...

  2. Delphi:ADOConnection连接SQLServer自动断网问题解决

    =============================== 解决方法一:异常时关闭连接,WinXP,win7 32位大部分情况都是起作用的,不过在有些windows操作系统下(如家庭版)不起作用, ...

  3. Delphi 7连接MySql 5.5.15

    原文:http://blog.csdn.net/akof1314/article/details/6822902/ 网上有很多关于Delphi连接MySql数据库的文章,在这里,我只记录下自己测试过的 ...

  4. Delphi 7连接MySql 5.5.15(转)

    网上有很多关于Delphi连接MySql数据库的文章,在这里,我只记录下自己测试过的方法,以备所需.系统环境:Windows XP SP3软件环境:Delphi 7 .mysql-installer- ...

  5. Delphi 调试连接 任意Android手机/平板/盒子

    Delphi有时候无法连接调试一些手机,解决方案: 1.安装Google USB Driver 2.通过设备管理器查看手机或平板USB的VID,PID 3.修改你的电脑上的android_winusb ...

  6. delphi 7 连接 MySql

    网上有很多关于Delphi连接MySql数据库的文章,在这里,我只记录下自己测试过的方法,以备所需.系统环境:Windows XP SP3软件环境:Delphi 7 .mysql-installer- ...

  7. Delphi 调试连接 任意Android手机/平板/盒子(要安装Google USB Driver,并且还有USB的相关许多文章)

    Delphi有时候无法连接调试一些手机,解决方案: 1.安装Google USB Driver 2.通过设备管理器查看手机或平板USB的VID,PID 3.修改你的电脑上的android_winusb ...

  8. Delphi - cxGrid连接Access数据库

    一.添加控件: ADOConnection.ADOQuery和DataSource: 二.连接Access数据库: 这里一般采用动态方式进行连接,工程文件放在了CodeDemo文件夹中,Access数 ...

  9. delphi ADOCONNECTION异常拦截

    elphi ADOCONNECTION错误拦截错误框标题:   Debugger Exception Notification内容:   Project KJXX.exe raised excepti ...

随机推荐

  1. openssl获取ssl证书,配置https

  2. springmvc手动获取bean

    @Service @Lazy(false) public class SpringContextHolder implements ApplicationContextAware, Disposabl ...

  3. Mybatis容易遇到的问题

    1.MyBatis中#和$的区别? 1.使用#的原理是?占位符,而$的原理为直接字符串拼接方式 2.$方式一般使用在写数据库中的固定字段时候才会使用例如表名或者列名(select * from use ...

  4. ARTS-week5

    Algorithm 给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组.说明:初始化 nums1 和 nums2 的元素数量分别 ...

  5. ES6新特性之 let 、const

    在 ES6之前,ES5中js只有全局作用域和函数作用域,作用域是一个独立的地盘,让变量不外泄出去,但是上例中的变量就外泄了出去,所以此时 JS 没有块级作用域的概念. 全局作用域就是最外层的作用域,如 ...

  6. strcspn函数的用法

    #include <string.h> main() { char *str = "Linux was first developed for 386/486-based pcs ...

  7. lambda()函数

    lambda lambda原型为:lambda 参数:操作(参数) lambda函数也叫匿名函数,即没有具体名称的函数,它允许快速定义单行函数,可以用在任何需要函数的地方.这区别于def定义的函数. ...

  8. Java字符串之间拼接时,如果有null值,则会直接拼接上null

    package com.fgy.demo; public class demo06 { public static void main(String[] args) { String str1 = & ...

  9. JPA EnableJpaAuditing 审计功能

    关于自动填充或更新实体中的 CreateDate.CreatedBy 等在之前有一篇 jeecg 默认为空的字段值是如何被填充的? 有提到通过拦截器的方式实现,但是今天带大家了解一下如果使用 JPA ...

  10. 雅克比(Jacobi)方法

    可以用来求解协方差矩阵的特征值和特征向量. 雅可比方法(Jacobian method)求全积分的一种方法,把拉格朗阶查皮特方法推广到求n个自变量一阶非线性方程的全积分的方法称为雅可比方法. 雅克比迭 ...