Delphi使用ini配置文件连接MS SQL数据库
很早做过的一个delphi项目,把里面用到的技术总结一下,主要是针对象我这样的delphi新手,技术上做个积累吧!
假设我们的数据库配置文件ServerInfo.ini内容如下:
[ServerInfo]
ServerIP=192.168.1.5
SQLDBName=Data
SQLUserID=sa
SQLPwd=
我们定义一个连接数据库的过程DBConnect内容应如下
procedure TDM.DBConnect();
var
ini:TiniFile;
Server,User,Pass,DBName:string;
begin
ini := TiniFile.Create(ExtractFilePath(Application.ExeName)+'dbconn.ini'); //初始化ini文件
Server := ini.ReadString('serverinfo','ServerIP',''); //数据库ip地址
DBName := ini.ReadString('serverinfo','SQLDBName',''); //数据库名
User := ini.ReadString('serverinfo','SQLUserID',''); //数据库用户名
Pass := ini.ReadString('serverinfo','SQLPwd',''); //数据库密码
try
DM.ADOConn.ConnectionString := 'Provider=SQLOLEDB.1;Persist Security Info=False;'
+'User ID='+trim(User)
+';Password='+trim(Pass)
+';Initial Catalog='+trim(DB)
+';Data Source='+trim(Server);
DM.ADOConn.Open ;
except
application.MessageBox('数据库连接失败,请检查INI配置文件','提示',64);
application.Terminate ;
end;
end;
相信大家都能看懂,注意使用TiniFile类的函数或过程应引入INIFiles单元。
相关文档:
1 避免无计划的全表扫描
如下情况进行全表扫描:
- 该表无索引
- 对返回的行无人和限制条件(无Where子句)
- 对于索引主列(索引的第一 ......
用sql操作oracle的blob字段
1、查询
select utl_raw.cast_to_varchar2(dlob),id from system.t_htinfo
2、插入
insert into system.t_htinfo values ('3',utl_raw.cast_to_raw('你'));
3、更新
update system.t_htinfo set fld_value=utl_raw.cast_to_raw('1') where fh_nm=1820648 and form_index=52
......
同一表多字段同时重复记录的SQL查询及处理数
比如现在有一人员表 (表名:peosons)
若想将姓名、身份证号、住址这三个字段完全相同的记录查询出来
select p1.* from persons p1,persons p2 where p1.idp2.id and p1.cardid = p2.cardid and p1.pname = p2.pname and p1.address ......
完全备份或日志备份虽说都有截断日志的功能,但是不会收缩日志文件的空间返回给操作系统.
如果你想将日志文件的空间返回给操作系统的话,只有一种方法,就是收缩数据库(选择日志文件)
ZT一个相关帖子,供参考!
物理日志文件:
这个比较好理解,实实在在的东西,数据库目录下面的.ldf文件就是,有些人喜欢改后 ......
如果你的身份验证方式为Windows集成身份验证更改为混合方式的身份验证,需要在SQL Server Configuration Management中,把TCP/IP的活动启用,也就是第一个选择的地方,选择启用。并且使用集成身份验证方式登录后,在数据库服务器上选择属性,把安全性下的WINDOWS模式改为SQL与WINDOWS模式 ......