복붙노트

[SQL] 어떻게 MDF 데이터베이스 파일에 연결합니까?

SQL

어떻게 MDF 데이터베이스 파일에 연결합니까?

나는 처음으로 MDF 데이터베이스에 C #을 응용 프로그램을 연결에서 실험을하고있어, 나는 약간의 도움이 필요합니다 ..

난 비주얼 스튜디오 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");
        }
    }
}

나는 응용 프로그램을 실행할 때, 나는 연결 문자열을 정의하는 선에서 예외가 발생하고, 예외는 스택의 상단에이 메시지가 있습니다 :

System.ArgumentException: Keyword not supported: 'datasource'.

깡통 누군가 포인트 나를 올바른 방향으로?

해결법

  1. ==============================

    1.데이터 소스 사이에 공간을 추가

    데이터 소스 사이에 공간을 추가

     con.ConnectionString = @"Data Source=.\SQLEXPRESS;
                              AttachDbFilename=c:\folder\SampleDatabase.mdf;
                              Integrated Security=True;
                              Connect Timeout=30;
                              User Instance=True";
    
  2. ==============================

    2.서버 탐색기> 데이터베이스> 마우스 오른쪽 클릭> 속성> ConnectionString을로 이동하여 연결 문자열을 복사하여 과거의 코드를 connectiongstring에 복사 :

    서버 탐색기> 데이터베이스> 마우스 오른쪽 클릭> 속성> ConnectionString을로 이동하여 연결 문자열을 복사하여 과거의 코드를 connectiongstring에 복사 :

  3. ==============================

    3.

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

    파일 경로가 있어야한다 | DataDirectory를 | 사용할 때 어떤 "현재 프로젝트 디렉토리 \ App_Data \"또는 "현재 프로젝트 디렉토리"실제로 링크와의 .mdf 파일을 가져 ..... 장소 및이 장소 중 하나에서의 .mdf 비주얼 스튜디오에서 2010.And 작동합니다 프로덕션 시스템에서 독립 실행 형 응용 프로그램 실행 파일은 다음 현재 경로는의 .mdf 파일이 있어야합니다.

  4. ==============================

    4.비주얼 스튜디오 2015에 대한 연결 문자열은 다음과 같습니다

    비주얼 스튜디오 2015에 대한 연결 문자열은 다음과 같습니다

    "Data Source=(localdb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|Database1.mdf;Integrated Security=True"
    
  5. ==============================

    5.

    Server=.\SQLExpress;AttachDbFilename=c:\mydbfile.mdf;Database=dbname; Trusted_Connection=Yes;
    
  6. ==============================

    6.

    SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\Samples\MyApp\C#\bin\Debug\Login.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
    

    날 위해 노력하고 있습니다 ... 짧은 경로로 어떤 방법이 있나요? 처럼

    SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=\bin\Debug\Login.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
    
  7. ==============================

    7.당신이 솔루션 내에서 원하는 폴더에 데이터베이스를 가질 수 있습니다 대체 솔루션. 그것은 나를 위해 일한 :

    당신이 솔루션 내에서 원하는 폴더에 데이터베이스를 가질 수 있습니다 대체 솔루션. 그것은 나를 위해 일한 :

    .ConnectionString(@"Data Source=LocalDB)\MSSQLLocalDB;
                        AttachDbFilename="+AppDomain.CurrentDomain.BaseDirectory+"Folder1\\Folder2\\SampleDatabase.mdf" + ";
                        Integrated Security=True;")
    
  8. from https://stackoverflow.com/questions/8926512/how-do-i-connect-to-an-mdf-database-file by cc-by-sa and MIT license