Lazarus实践 --- 访问SQL Server

来源:互联网 发布:日本爱知世博会图片 编辑:程序博客网 时间:2024/06/08 02:11

一、Lazarus安装
  从www.lazarus.freepascal.org下载如下包文件并依次安装:
  fpc-2.0.4-0.i585.rpm
  fpc-src-2.0.4-0.i386.rpm
  lazarus-0.9.22-0.i386.rpm
二、unixODBC安装
  从www.unixODBC.org下载如下包文件并依次安装:
  unixODBC-2.2.11-1.i386.rpm
  unixODBC-devel-2.2.11-1.i386.rpm
三、freetds安装
  从www.freetds.org下载如下包文件:
  freetds-0.64.tar.gz
  在终端输入以下命令进行安装:
  # tar vxzf freetds-0.64.tar.gz
  # cd freetds-0.64
  # ./configure --prefix=/usr/local/freetds --with-unixodbc=/usr/local/unixODBC --with-tdsver=8.0
  # make
  # make install
四、freetds配置与测试
  1、配置
  编辑/usr/local/freetds/etc/freetds.conf文件如下:
[global]
 tds version = 8.0
[MyServer2k]
 host = 17.1.1.207
 port = 1433
 tds version = 8.0
 client charset = CP936
  2、测试
  在终端执行命令如下:
  # /usr/local/freetds/bin/tsql -S MyServer2k -H 17.1.1.207 -p 1433 -U sa -P sql2k
  如果出现>提示符表示连接成功,现在可以输入SQL并执行:
  1> use master
  2> go
  1> select name,filename from sysfiles
  2> go
  name   filename
  master  C:Program FilesMicrosoft SQL ServerMSSQLdatamaster.mdf
  mastlog C:Program FilesMicrosoft SQL ServerMSSQLdatamastlog.ldf
  1> quit
五、unixODBC配置与测试
  1、配置
  编辑/etc/odbcinst.ini文件如下:
[ODBC]
Trace = Yes
TraceFile = /tmp/sql.log
ForceTrace = Yes
Pooling = No
[SQLServer]
Description = MS SQL Server
Driver= /usr/local/freetds/lib/libtdsodbc.so
Driver64= /usr/local/freetds/lib/libtds.so
FileUsage= 1
  编辑/etc/odbc.ini文件如下:
[NorthwindDS]
Driver = SQLServer
Server = 17.1.1.207
Database = Northwind
Port = 1433
ServerName = MyServer2k
User = sa
Password = sql2k
Socket =
Option =
Stmt =
  2、测试
  在终端中输入如下命令:
  # isql -v NorthwindDS sa sql2k
  如果出现>表示通过数据源NorthwindDS连接成功,继续执行SQL进行体验:
  SQL> select top 1 * from Orders
  SQL> quit
六、使用Lazarus编程
  在WinXP下编写的测试程序,不用修改一句代码就可以在Redhat9下编译通过,数据装载速度不错,不足的是对汉字的显示处理效果欠佳。

WinXP下测试程序的截图

Redhat9下测试程序的截图