如何连接到MDF数据库文件?

Ahm*_*mad 16 c# sql database visual-studio-2010

我正在尝试首次将C#应用程序连接到MDF数据库,我需要一点帮助..

我在Visual Studio 2010中创建了一个小型MDF数据库文件,然后创建了另一个项目并将该文件导入到项目本身.

我不是试图通过代码连接到MDF文件.这里是我正在使用的代码:

namespace DBtestApp1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        System.Data.SqlClient.SqlConnection con;
        private void Form1_Load(object sender, EventArgs e)
        {
            con = new System.Data.SqlClient.SqlConnection();
            con.ConnectionString = "DataSource=.\\SQLEXPRESS; AttachDbFilename =SampleDatabase.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
            con.Open();
            MessageBox.Show("Connection opened");
            con.Close();
            MessageBox.Show("Connection closed");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

当我运行应用程序时,我在定义连接字符串的行中得到一个异常,并且异常在堆栈顶部有此消息:

System.ArgumentException: Keyword not supported: 'datasource'.
Run Code Online (Sandbox Code Playgroud)

有人能指出我正确的方向吗?

ada*_*ost 28

之间添加空格 Data Source

 con.ConnectionString = @"Data Source=.\SQLEXPRESS;
                          AttachDbFilename=c:\folder\SampleDatabase.mdf;
                          Integrated Security=True;
                          Connect Timeout=30;
                          User Instance=True";
Run Code Online (Sandbox Code Playgroud)

  • 尝试过,但现在出现以下异常:`System.Data.SqlClient.SqlException (0x80131904): 尝试为文件 SampleDatabase.mdf 附加自动命名的数据库失败。存在同名数据库,或无法打开指定文件,或位于 UNC 共享上。` (2认同)
  • 我正在考虑编辑这个,以便连接字符串以消除水平滚动,但我担心我不太了解这一点,相信自己不要让答案不正确. (2认同)

小智 16

转到服务器资源管理器>您的数据库>右键单击>属性> ConnectionString并复制连接字符串并复制到connectiongstring代码:)


use*_*915 10

string sqlCon = @"Data Source=.\SQLEXPRESS;" +
                @"AttachDbFilename=|DataDirectory|\SampleDB.mdf;
                Integrated Security=True;
                Connect Timeout=30;
                User Instance=True";
SqlConnection Con = new SqlConnection(sqlCon);
Run Code Online (Sandbox Code Playgroud)

文件路径应该有| DataDirectory | 它实际上链接到"当前项目目录\ App_Data \"或"当前项目目录"并获取.mdf文件.....将.mdf放在这些地方中的任何一个并且应该在visual studio 2010中工作.当你使用它时生产系统上的独立应用程序,然后是可执行文件所在的当前路径,应该具有.mdf文件.


Jul*_*ech 5

对于Visual Studio 2015,连接字符串为:

"Data Source=(localdb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|Database1.mdf;Integrated Security=True"
Run Code Online (Sandbox Code Playgroud)