【问题标题】:ConnectionString embedded localdb visual studio 2015 relative data directoryConnectionString 内嵌 localdb Visual Studio 2015 相关数据目录
【发布时间】:2016-08-09 06:45:15
【问题描述】:

Visual Studio 的 ConnectionString 有问题。 当我使用这个时:

连接字符串 1:

Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename="C:\Users\example\documents\visual studio 2015\Projects\Rexnord materials summury\Rexnord materials summury\Database1.mdf";Integrated Security=True

该应用程序运行良好,但由于我需要一个相对数据目录,所以我使用了这个。

连接字符串 2:

Data Source = (LocalDB)\MSSQLLocalDB ; Initial Catalog = Database1;Integrated Security=True

但我不工作,我收到此错误消息:

你能帮我解决这个问题吗?以及如何使用 AttachDbFilename 设置相对数据目录。 提前致谢

【问题讨论】:

    标签: sql-server database vba visual-studio database-connection


    【解决方案1】:

    为什么不简单地使用文件的相对路径,而不是初始目录?

     AttachDbFilename=".\Database1.mdf";
    

    【讨论】:

    • 感谢您回答 jessehouwing;相关数据目录好像解决了,但是还是连接不上数据库
    • 一般是可执行文件的位置。
    • 我像这样更改连接字符串,但没有成功。 con.ConnectionString = " 数据源=(LocalDB)\MSSQLLocalDB; AttachDbFilename=".\ Database1.mdf";Integrated Security=true;"我有同样的错误
    • 你在.\ Database1之间有空格吗,如果有,你需要删除它。
    【解决方案2】:

    正如 Jesse Houweling 所示,您可以使用相对路径。但是,这些是相对于程序的执行文件夹的。您可以将其设置为例如开始菜单,但依赖项只会从 DNS 移动到开始菜单。

    因此,我建议在 DNS 中设置绝对路径,但使用 Windows 变量来设置基本部分。例如使用%CSIDL_LOCAL_APPDATA% 作为用户的应用数据目录。谷歌搜索“windows用户目录变量”或者去https://technet.microsoft.com/en-us/library/cc749104(v=ws.10).aspx

    【讨论】:

    • 嗨,保罗感谢您回答 Jesse Houweling 的解决方案可以工作,我现在面临的问题是生成的数据库“.\Database1”受到保护,我无法访问它.这里的错误消息:登录失败。用户“Acer\Amine”登录失败。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多