时间:2012-06-28 18:57来源:未知 整理:寂涯网络 点击:2975次

引言

Delphi7 具有强大的数据库应用程序开发功能 在使用

Delphi7 开发 房产管理系统 时,后台数据库采用 SQL

Server 数据库管理系统 使用 TADOConnection 组件与数据库

建立连接,需要指定 TADOConnection 组件的 connectstring 属

性,在属性设置时需要用到数据库服务器的名称 因为 SQL

Server 数据库不是一个独立的磁盘文件,它是通过数据库服务

器的名称来访问数据库中的数据的 而在不同的计算机上安

装 SQLServer 数据库管理系统时,都为数据库服务器指定了

不同的实例名称,所以在 connectstring 属性中必须指定正确的

服务器名字才可以实现正确的连接

2 实现思路

正是利用 Delphi 可以很方便地读取 INI 配置文件的内在

优点,在 房产管理系统 中将需要连接的 SQLServer 数据

库服务器的名称事先写入到一个INI 配置文件中,连接时再从

INI 配置文件中读出相关的数据构成连接字符串信息 应用程

序运行前先进行数据库连接测试,如果连接成功,则直接运

行下一步,如果连接失败,则自动弹出提示窗口,提示用户

录入数据库连接配置的正确信息,保存后再进行连接测试,

直至成功直接进入系统

3 关键技术

3.1 将数据库连接参数写入配置文件

首先建立一个用于输入数据的窗体,如图1所示

在其单元文件中,定义常量 strINIname 来存放配置文件

名,定义 TINIFile 类型的文件变量iniParam;

const

strINIname="db.ini";

var

iniParam:TINIFile;

接着定义将数据库连接参数写入配置文件的过程writeParam:

procedurewriteParam(server:string;workstation:string);

begin

iniParam.WriteString("dbParam","DataSource",server);

iniParam.WriteString("dbParam","WorkstationID",

workstation);

end;

然后编写窗体 保存 按钮的事件过程程序

procedureTform1.Button1Click(Sender:TObject);

var

server,workstation:string;

begin

server:=trim(Edit1.Text);

workstation:=trim(Edit2.Text);

writeParam(server,workstation);

MessageDlg(" 保存成功",mtinformation,[mbok],0);

Button2.SetFocus;

end;

3.2 登录时读取配置文件内容连接数据库

主程序运行时,在登录窗口中先进行用户的合法性验证

再进行数据库连接测试,登录窗体的单元文件 Login.pas 部分

代码如下:

unitLogin;

interface

uses

Windows,Messages,SysUtils,Classes,Graphics,Controls,

Forms,Dialogs,ExtCtrls,StdCtrls,Buttons,DB,DBTables,

AdoDB,inifiles;

type

TLoginform=class(TForm)

Panel1:TPanel;

edtPassword:TEdit;

StaticText1:TStaticText;

StaticText2:TStaticText;

cmbUserName:TComboBox;

btnOK:TSpeedButton;

btnCancel:TSpeedButton;

BitBtn1:TBitBtn;

ADOQuery1:TADOQuery;

procedurebtnCancelClick(Sender:TObject);

procedureFormShow(Sender:TObject);

procedureFormCreate(Sender:TObject);

procedurebtnOKClick(Sender:TObject);

procedureedtPasswordKeyDown(Sender:TObject;var

Key:Word;Shift:TShiftState);

procedureBitBtn1Click(Sender:TObject);

private

{Privatedeclarations}

public

{Publicdeclarations}

end;

const

strINIname="db.ini";

var

Loginform:TLoginform;

iniParam:TINIFile;

procedurereadParam(outserver:String;outworkstation:

string);

implementation

usesMain,datamodule;

{$R*.DFM}

//定义一个读取参数的过程readParam

procedurereadParam(outserver:String;outworkstation:

string);

begin

server:=iniparam.ReadString("dbParam","DataSource",

"");

workstation:=iniParam.ReadString("dbParam",

"WorkstationID","");

end;

//在登录窗体的 oncreate 事件中连接数据库

procedureTLoginform.FormCreate(Sender:TObject);

var

Query:TADOQuery;

a,b,c,d,e:string;

begin

//获取配置文件

getdir(0,d);

iniparam:=tinifile.Create(d+"\"+strininame);

//从配置文件中读取参数值

readparam(a,b);

datamodule2.adoconnection1.Connected:=false;

//根据读出的参数构造连接字符串的值,并连接数据库

c:="Provider=SQLOLEDB.1;Password="+""""";PersistSecu

rityInfo=True;UserID=sa;InitialCatalog=FangChan;Data

Source=";

d:=";UseProcedureforPrepare=1;AutoTranslate=True;

delphi7存取配置文件与sqlserver数据库连接_Delphi7存取配置文件与SQLServer数据库连接...相关推荐

  1. Destoon数据库配置文件在哪_SpringBoot中yml配置文件说明和一些常用配置项说明

    1. 配置文件说明 Springboot启动默认扫描的配置为classes目录下的application.yml 或者是 application.properties 我们项目中是使用的yml格式的配 ...

  2. 配置文件没有关闭保护模式_配置文件:PS自带的海量滤镜 | 照片调色宝典13

    本次是该系列第13篇文章,在讲解了Adobe Camera Raw中很多调色原理后,今天我们来说一个很"爽"的功能:它自带47个(如果我没数错)滤镜效果,这个功能就是"配 ...

  3. 【C 语言】文件操作 ( 配置文件读写 | 写出或更新配置文件 | 追加键值对数据 | 更新键值对数据 )

    文章目录 一.追加键值对数据 二.更新键值对数据 三.完整代码示例 一.追加键值对数据 在上一篇博客 [C 语言]文件操作 ( 配置文件读写 | 写出或更新配置文件 | 逐行遍历文件文本数据 | 获取 ...

  4. 配置文件加载优先级和外部配置文件加载||IDEA外部配置文件无法加载

    1,项目内部配置文件 spring boot 启动会扫描以下位置的 application.properties 或者 application.yml 文件作为 Spring boot 的默认配置文件 ...

  5. python创建配置文件_如何写python的配置文件

    一.创建配置文件 在D盘建立一个配置文件,名字为:test.ini 内容如下: [baseconf] host=127.0.0.1 port=3306 user=root password=root ...

  6. java 配置文件加载_Java加载配置文件类

    package com.up72.parkSys.ThirdParty; import java.io.IOException; import java.io.InputStream; import ...

  7. python怎么创建配置文件_如何写python的配置文件

    一.创建配置文件 在D盘建立一个配置文件,名字为:test.ini 内容如下: [baseconf] host=127.0.0.1 port=3306 user=root password=root ...

  8. jsp连接sqlServer数据库教程、jsp连接sqlServer数据库报ClassNotFoundException异常

    jsp连接sqlServer数据库教程.jsp连接sqlServer数据库报ClassNotFoundException异常 参考文章: (1)jsp连接sqlServer数据库教程.jsp连接sql ...

  9. 计算机的正确配置文件,Windows10如何正确配置显示器颜色配置文件?

    Windows10如何正确配置显示器颜色配置文件? 对于显示器颜色配置文件,如果和相关设备配置正确,电脑显示器才能精准的显示颜色,从而看到最精确漂亮的颜色.那么,在Windows10系统下要如何正确配 ...

最新文章

  1. Python 3.9 beta2 版本发布了,看看这 7 个新的 PEP 都是什么?
  2. 2012 Multi-University Training Contest 3
  3. 解决ubuntu中zip解压的中文乱码问题
  4. 如何在开源社区贡献代码_在社区支持大量涌现之后,Biicode便开始开源
  5. vue接收索引_前端开发:Vue中findIndex() 方法的使用
  6. 获取电脑系统当前时间
  7. js中this的问题
  8. Javascript特效:上传图片格式判断(通过后缀)
  9. python的类,复现assert和eval成功失败原因
  10. matlab串级控制系统设计,SVPWM在串级调速系统中的MATLAB仿真研究
  11. 输入法编程之 光标跟随
  12. 大气压力换算公式_大气压强计算方法
  13. java实现文件夹加密_如何用JavaScrpt 实现文件夹轻松加密
  14. docker创建jenkins、jenkins配置邮件模板、jenkins升级、jenkins更改插件源
  15. 综论数据库防火墙的自我修养系列之一:高可用性
  16. Docker之工作中常用的命令(二)
  17. 手机耳机插入电脑没有反应
  18. root后启动不了黑域,root激活黑域
  19. Remoting简单实例[]
  20. 网件交换机 trunk_如何轻松放置Netgear Arlo摄像机

热门文章

  1. 58或与赶集合并,几人欢喜几人愁
  2. ​std::multimap
  3. ORACLE AUDIT 审计
  4. POJ-1556 The Doors 线段相交+最短路
  5. Linux链接库三(C跟C++之间动态库的相互调用)
  6. NAND FLASH分区规划
  7. Verilog 补码加法溢出判断及处理
  8. 【pyqt5学习】——graphicView显示matplotlib图像
  9. pythonweb开发面试_Python web 面试题(一)
  10. centos7 docker安装和使用_入门教程