一直因为 编码、端口问题没有搞定,没有使用 SQL direct 组件,不过现在已经测试成功了
DatabaseName = 'TEST'
Params.Strings = (
'USER NAME=root' // 用户名
'PASSWORD=1234567' // 密码
'SERVER PORT=3307' // 端口设置
'DATABASE NAME=test' // 数据库名
'SQL DIALECT=3'
'SINGLE CONNECTION=TRUE'
'LOCAL CHARSET=UTF8' // 字符集设置
'UNICODE STRING=TRUE')
RemoteDatabase = '192.168.1.3' // 服务器 这里设置最变态
ServerType = stMySQL
SessionName = 'Default'
OnLogin = DatabaseLogin
除上面设置外,用 SQL 操作数据库时,还要自己 转码:
qryQuery.Close;
qryQuery.SQL.Text := UTF8Encode('UPDATE TEST_PERSON SET note=''錦123456錦'''); // 有汉字时要转码
qryQuery.ExecSQL;
真的是有些变态呀!