如何使用Delphi XE2在Firebrid客户端上设置Server的HostName

Jap*_*ter 2 delphi firebird hostname delphi-xe2

我使用firebird db和Delphi XE2开发了一个客户端/服务器应用程序.问题是客户端上的TSQLConnection组件自动将HostName属性设置为localhost.我想知道,如何编写代码,使用户可以在客户端第一次启动时设置HostName.

我将TSQLConnection组件放在客户端的数据模块上.

在主窗体上,我为用户设置了一个选项,用于设置HostName属性,并使用以下代码分配用户在TextBox中输入的值:

Database.SQLServer.Params.Add('HostName='+edtHostName.Text);
Run Code Online (Sandbox Code Playgroud)

但似乎一旦程序启动,TSQLConnection组件将主机名设置为localhost,我无法将其设置为用户主机名.谁能帮帮我吗

RRU*_*RUZ 6

主机名不是dbexpress firebird连接的有效属性,而是必须使用该DataBase属性使用这些格式之一指定主机.

1)指定端口,主机和数据库

  server_host/port:/path/to/database.fdb
Run Code Online (Sandbox Code Playgroud)

2)指定主机和数据库

  server_host:/path/to/database.fdb
Run Code Online (Sandbox Code Playgroud)

3)仅指定数据库

/path/to/database.fdb
Run Code Online (Sandbox Code Playgroud)

所以使用DbExpress看起来就像

  SQLConnection1.Params.Values['Database']:='192.168.1.125/3050:C:\Program Files (x86)\Firebird\Firebird_2_0\examples\empbuild\EMPLOYEE.FDB';
Run Code Online (Sandbox Code Playgroud)