【问题标题】:VB.Net ConnectionString with a local .mdf database带有本地 .mdf 数据库的 VB.Net ConnectionString
【发布时间】:2014-05-06 00:10:34
【问题描述】:

我正在发布一个项目应用程序,我认为有一个具有这种格式的连接字符串

cn.ConnectionString = "Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Documents and Settings\iaprubillos\My Documents\PROJECT\myProject\database\myDatabase.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"

不是一个友好的,当我在其他计算机上运行该应用程序时肯定不会工作。问题:我可以使用格式为

的连接字符串吗?
cn.ConnectionString = "Data Source=|DataDirectory|\myDatabase.mdf"

并将数据库存储在bin文件夹中,这样当我构建我的项目并编译为.exe文件时,.exe文件仍然可以访问数据库吗?

【问题讨论】:

  • 为什么不直接将 mdf 和 ldf 文件添加到 sql server 中。这样它就成为 sql server 实例的一部分,您不必附加文件。
  • @vasin1987 我打算在其他计算机上“安装”应用程序时不安装 sql server。它就像一个独立的程序。

标签: sql-server vb.net connection-string


【解决方案1】:

您可以使用My.Application.Info.DirectoryPath 获取应用程序运行的路径。所以你可以像这样修改你的连接字符串代码:

cn.ConnectionString = String.format("Data Source=.\SQLEXPRESS;AttachDbFilename={0}\myDatabase.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True", My.Application.Info.DirectoryPath)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多