【问题标题】:Firebird connection fails for limited user有限用户的 Firebird 连接失败
【发布时间】:2009-05-06 12:01:33
【问题描述】:

在我的 Delphi7 应用程序中,我可以在以管理员身份(“Dave”)登录时连接到数据库,但在以标准或受限用户(“Paris”)身份登录时不能。发生在 XP Home 和 Vista Business Ultimate 64 上。我为 db 使用别名,并尝试将 .fdb 文件放在 Program Files 中、C 驱动器上的 app 文件夹中以及 Users\Application Data & Documents and settings\应用数据。

对于 .fdb 文件的定位是否有一个经过验证的真实规则?我错过了什么明显的东西吗?


是时候改写问题了。我仍然遇到用户访问受限的相同问题,但现在知道 Firebird 作为服务运行 - 它应该能够在任何地方读/写任何文件。 而且,mghie,我尝试使用 isql 访问的建议是天才。我可以作为受限用户连接。我可能在我的应用程序中破坏了某些东西。并且 IBO 绊倒了它。

重新表述的问题:普遍接受的安装 .fdb 文件的最佳位置是什么?


是的,我可以将 isql 连接为“Paris”。 我怀疑困难与 .fdb 所在的位置有关。 a) 程序文件\Appname\Appname.fdb b) C:\Appname\Appname.fdb c) C:\Documents and Settings\All Users\Application Data\Appname\Appname.fdb

当数据库(&别名)在所有这些地方时,应用程序不能作为受限用户工作。

【问题讨论】:

  • 您应该首先确定这是您的程序问题还是系统问题。可以在受限用户账户中使用isql连接数据库吗?无论是“DBAlias”还是“localhost:DBAlias”的形式?并添加有关连接设置的更多信息。例如,TIB_Connection.Protocol 属性的值是多少?

标签: windows firebird limited-user


【解决方案1】:

您似乎使用 Windows 身份验证来登录数据库,而不是使用 firebird 的本机身份验证。
您是否尝试过提供用户名和密码?
除此之外,您尝试连接时的实际错误消息是什么?

【讨论】:

  • 我正在使用 IBO 4.7。它在 TIB_Connection.Connect 处失败,并显示错误消息无法打开文件“”“”。该系统找不到指定的路径。 Connect 方法在 try..except 中 - 它立即崩溃,从未遇到我的异常代码。我已在问题中添加了 IBO 标签。
  • 您尝试过 IBX 吗?是一样的吗?
【解决方案2】:

我认为受限用户无权将文件写入您指定用于存储 .FDB 文件的大多数位置:

  1. Program Files\Appname\Appname.fdb
  2. C:\Appname\Appname.fdb
  3. C:\Documents and Settings\All Users\Application Data\Appname\Appname.fdb

听起来您正在使用 Firebird 作为嵌入式数据库。在这种情况下,最好的办法是将 FDB 文件存储在每个用户的应用程序数据文件夹中。例如:

C:\Documents and Settings\Paris\Application Data\Appname\Appname.fdb

【讨论】:

    猜你喜欢
    • 2016-04-15
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-29
    • 2019-09-16
    相关资源
    最近更新 更多