Ответ 1
В Data Source
(слева от Visual Studio) щелкните правой кнопкой мыши по базе данных, затем Configure Data Source With Wizard
. Появится новое окно, разверните строку "Соединение", вы можете найти строку подключения там
Предположим, что я создал базу данных SQL Server под названием Database1.mdf
в папке App_Data
в Visual Studio с таблицей Names
.
Как я могу установить соединение для чтения значений таблицы с помощью С#?
До сих пор я пробовал что-то вроде этого:
SqlConnection conn = new SqlConnection("Server=localhost;Database=Database1;");
conn.Open();
// create a SqlCommand object for this connection
SqlCommand command = conn.CreateCommand();
command.CommandText = "Select * from Names";
Но я получаю сообщение об ошибке:
база данных не найдена/ошибка подключения к базе данных
В Data Source
(слева от Visual Studio) щелкните правой кнопкой мыши по базе данных, затем Configure Data Source With Wizard
. Появится новое окно, разверните строку "Соединение", вы можете найти строку подключения там
Если вы используете аутентификацию SQL, используйте это:
using System.Data.SqlClient;
SqlConnection conn = new SqlConnection();
conn.ConnectionString =
"Data Source=.\SQLExpress;" +
"User Instance=true;" +
"User Id=UserName;" +
"Password=Secret;" +
"AttachDbFilename=|DataDirectory|Database1.mdf;"
conn.Open();
Если вы используете проверку подлинности Windows, используйте следующее:
using System.Data.SqlClient;
SqlConnection conn = new SqlConnection();
conn.ConnectionString =
"Data Source=.\SQLExpress;" +
"User Instance=true;" +
"Integrated Security=true;" +
"AttachDbFilename=|DataDirectory|Database1.mdf;"
conn.Open();
SqlConnection c = new SqlConnection(@"Data Source=localhost;
Initial Catalog=Northwind; Integrated Security=True");
Если вы используете SQL Server express, измените
SqlConnection conn = new SqlConnection("Server=localhost;"
+ "Database=Database1;");
в
SqlConnection conn = new SqlConnection("Server=localhost\SQLExpress;"
+ "Database=Database1;");
Это и сотни других строк соединения можно найти по адресу http://www.connectionstrings.com/
Вы пытаетесь использовать это строковое соединение
Server=.\SQLExpress;AttachDbFilename=|DataDirectory|Database1.mdf;Database=dbname; Trusted_Connection=Yes;
Мне нравится использовать удобный способ, описанный здесь, для построения строк соединения с использованием.udl файла. Это позволяет вам тестировать их из файла udl, чтобы убедиться, что вы можете подключиться, прежде чем запускать какой-либо код.
Надеюсь, это поможет.