sqlconnection,sqlquery1这些组件,我连接数据库的时候是用对象编辑器里的属性进行连接的,在sqlconnection中指定了字符集utf8,有些人做的方法是利用代码连接的数据库,如果我用代码连接mysql数据库怎么做??使用sqlconnecion连接数据库。说清楚点的话就是怎么用代码实现连接mysql数据库,并且指定字符集utf8(不这么做的话就出现乱码)。
2011-05-04 11:24提问者采纳
1、下载此文件http://www.justsoftwaresolutions.co.uk/files/dbxopenmysql5_dll.zip
并把里面的dll文件解药到delphi的bin目录下
一般是:c:\Program Files\Borland\Delphi7\Bin
2:
修改dbxconnections.ini文件
一般是:C:\Program Files\Common Files\Borland Shared\DBExpress\dbxconnections.ini
在dbxconnections.ini最后面加上(注意前两行)
[MySQL5Connection]
DriverName=MySQL5
HostName=127.0.0.1
Database=news
User_Name=root
Password=root
BlobSize=-1
ErrorResourceFile=
LocaleCode=0000
修改dbxdrivers.ini文件
一般是:C:\Program Files\Common Files\Borland Shared\DBExpress\dbxdrivers.ini
在dbxdrivers.ini最后面加上(注意前三行)
[MySQL5]
GetDriverFunc=getSQLDriverMYSQL
LibraryName=dbxopenmysql50.dll
VendorLib=libmysql.dll
HostName=ServerName
Database=DBNAME
User_Name=user
Password=password
BlobSize=-1
ErrorResourceFile=
LocaleCode=0000
3、新建一个工程并添加一个Tsqlconnection组件 选择组件 在属性窗口中connectionName中选择MySQL5Connection(即dbxconnections.ini文件中修改的 [ ] 中间的名字) 然后把connected该为true 弹出的对话框中输入用户名与密码 如果正确则数据库已连接
如需修改mysql地址可在Tsqlconnection组件属性的params里修改
如果想在工程里设置 可以双击窗口 进入窗口的FromCreate事件里面添加如下代码
Connection := TSQLConnection.Create(nil);
Connection.DriverName := ‘dbxmysql‘;
Connection.GetDriverFunc := ‘getSQLDriverMYSQL50‘; //主要是这行
Connection.LibraryName := ‘dbxopenmysql50.dll‘; //主要是这行
Connection.VendorLib := ‘libmysql.dll‘;
Connection.Params.Append(‘Database=NAME_OF_DATABASE);
Connection.Params.Append(‘User_Name=NAME_OF_USER‘);
Connection.Params.Append(‘Password=PASSWORD‘);
Connection.Params.Append(‘HostName=localhost‘);
如果提示找不到libmysql.dll则应去mysql目录下copylibmysql.dll文件到delphi目录下 或者工程文件下追问非常感谢您的回答,我想用代码的方式连接mysql数据库的话怎么做?回答我在后面加了其实在工程文件中实现 也就是修改Tsqlconnection组件的属性而已你可以在属性窗口中connectionName中选择MySQL5Connection(即dbxconnections.ini文件中修改的 [ ] 中间的名字)后查看其属性 然后在工程文件中修改即可