【问题标题】:How do I connect to an .mdf (Microsoft SQL Server Database File) in a simple web project?如何在简单的 Web 项目中连接到 .mdf(Microsoft SQL Server 数据库文件)?
【发布时间】:2008-10-06 04:32:06
【问题描述】:

具体来说,在 VS 2008 中,我想通过右键单击自动生成的 App_Data 文件夹(一个 .mdf “数据库”)连接到一个数据源。看起来很简单,只要你知道怎么做就可以了。

【问题讨论】:

    标签: c# asp.net database visual-studio-2008


    【解决方案1】:

    我一直保留的一个很好的资源是connectionstrings.com。 当你找不到示例时,找到这些连接字符串真的很方便。

    特别是this page 应用于您的问题

    在连接到本地 SQL Server Express 实例时附加数据库文件

    Driver={SQL Native Client};Server=.\SQLExpress;AttachDbFilename=c:\asd\qwe\mydbfile.mdf; Database=dbname;Trusted_Connection=Yes;
    

    【讨论】:

      【解决方案2】:

      所以这是 MSDN 的答案:

      从 数据菜单。[并按照连接向导]

      非常简单,只是我没有数据菜单。如果您没有数据菜单,请执行以下操作:

      • 点击工具>>连接到数据库...
      • 选择“Microsoft SQL Server 数据库文件”,取默认的Data provider,点击OK
      • 在下一个屏幕上,浏览到您的数据库文件,该文件将位于您的 VS 解决方案文件夹结构中的某处。

      测试连接。会好的。如果要将字符串添加到 web.config,请单击“高级”按钮,然后复制“数据源”行(位于对话框底部),并将其粘贴到 web.config 中适当位置的连接字符串中文件。您必须添加“AttachDbFilename”属性和值。示例:

      高级面板中的原始文本:

      Data Source=.\SQLEXPRESS;Integrated Security=True;Connect Timeout=30;User Instance=True
      

      web.config 中的实际入口:

      <add name="SomeDataBase" connectionString="Data Source=.\SQLEXPRESS; 
      AttachDbFilename=C:\Development\blahBlah\App_Data\SomeDataFile.mdf;
      Integrated Security=True; Connect Timeout=30; User Instance=True" />
      

      【讨论】:

        【解决方案3】:

        还有一个——我一直在我的桌面上保存一个 udl 文件,以便轻松创建和测试连接字符串。如果您以前从未这样做过 - 创建一个新的文本文件并将其命名为 connection.udl(ext 是唯一重要的部分)。打开文件,从 Provider 选项卡开始,然后逐步完成。对连接感到满意后,将文件重命名为 .txt 扩展名。打开文件并复制字符串 - 这相对容易,并且可以让您在使用之前测试连接。

        【讨论】:

        • 不错;一个注意事项是该文件应该是完全空的。我最初添加了一个空间以使其变脏,以便 Notepad++ 将其保存,但失败了。
        【解决方案4】:
        <add name="Your Database" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Expanse.mdf;Integrated Security=True;User Instance=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient"/>
        

        【讨论】:

          【解决方案5】:

          在您的 Login.aspx.cs(提交按钮单击事件中登录页面的代码隐藏文件)添加

          string constr = @"Data Source=(LocalDB)\v11.0; AttachDbFilename=|DataDirectory|\myData.mdf; Integrated Security=True; Connect Timeout=30;";
          using (SqlConnection conn = new SqlConnection(constr))
          string constr =    ConfigurationManager.ConnectionStrings["myData"].ToString();
          
          using (SqlConnection conn = new SqlConnection(constr))
          {
          sqlQuery=" Your Query here"
          SqlCommand com = new SqlCommand(sqlQuery, conn);
          com.Connection.Open();
          string strOutput = (string)com.ExecuteScalar();
          }
          

          【讨论】:

          • 这需要一些编辑。一些行和变量是重复的。
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2012-02-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-03-16
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多