0

我正在处理一些现有的项目,并且试图将其从客户端的许多 firebird 数据库转移到一个基于服务器的数据库。

不幸的是,我在连接字符串方面遇到了一些问题。

是否可以连接到远程服务器上的 .fdb 文件?

目前代码如下:

var builder = new FbConnectionStringBuilder
        {
            Database = @"C:\test.db",
            ServerType = FbServerType.Embedded,
            Pooling = isPooled
        };

我已经阅读了一些关于如何像下面这样完成但它不起作用的示例:

FbConnectionStringBuilder(@"Database=192.168.1.235:C:\share\test.fdb;User ID=sysdba;Password=masterkey;")

它仍然只连接到本地目录 C:\share\test.fdb。因为那不是我的IP地址。有什么帮助吗?

4

3 回答 3

2

Database属性仅用于数据库文件名或别名,您需要DataSource用于主机名或 IP 地址以及PortFirebird 端口。查看.NET — 使用示例连接字符串参数

此外,该类FbConnectionStringBuilder旨在简化构建连接字符串(它具有各种连接字符串属性的属性),因此您的第一次使用是正确的,但第二次使用有点奇怪。

于 2013-02-13T08:46:30.480 回答
0

好的,所以我想我解决了。您无法远程访问嵌入式数据库。因此,一旦安装了服务器软件并将其删除,一切正常。在远程驱动器上连接它会是一个方便的功能,但哦,好吧。

于 2013-02-14T21:13:12.913 回答
0

确保 fireBird 正在侦听端口 3050,取消注释此行firebird.conf

RemoteServiceName=gds_db
RemoteServicePort=3050

重新启动服务。

于 2015-12-26T20:47:41.053 回答