Подтвердить что ты не робот

Как установить строку подключения SQL Server?

Я разрабатываю простое приложение С#, я хотел бы это знать: когда я подключаю свое приложение к SQL Server на своем ПК, я знаю строку подключения (имя сервера, пароль и т.д.), но когда я подключаюсь это на другой компьютер, строка подключения SQL Server отличается. Есть ли общая учетная запись в SQL Server, которая имеет учетную запись по умолчанию, которая может подключаться? Я слышал о sa учетной записи в SQL Server, что такое sa?

4b9b3361

Ответ 1

//.NET DataProvider - стандартное соединение с именем пользователя и паролем

using System.Data.SqlClient;

SqlConnection conn = new SqlConnection();
conn.ConnectionString =
"Data Source=ServerName;" +
"Initial Catalog=DataBaseName;" +
"User id=UserName;" +
"Password=Secret;";
conn.Open();

//.NET DataProvider - доверенное соединение

SqlConnection conn = new SqlConnection();
conn.ConnectionString =
"Data Source=ServerName;" +
"Initial Catalog=DataBaseName;" +
"Integrated Security=SSPI;";
conn.Open();

Ответ 2

На самом деле вы можете использовать класс SqlConnectionStringBuilder для построения строки подключения. Чтобы создать строку подключения, вам нужно создать экземпляр объекта из этого SqlConnectionStringBuilder и установить их свойства с параметрами, которые вы используете для подключения к базе данных. Затем вы можете получить строку подключения из свойства ConnectionString из объекта SqlConnectionStringBuilder, как показано в этом примере:

Например:

    SqlConnectionStringBuilder sConnB = new SqlConnectionStringBuilder ()
    {
        DataSource = "ServerName",
        InitialCatalog = "DatabaseName",
        UserID = "UserName",
        Password = "UserPassword"
    }.ConnectionString

SqlConnection conn = new SqlConnection(sConnB.ConnectionString);

Вы можете использовать new оператор, чтобы сделать это напрямую.

Например:

SqlConnection conn = new SqlConnection(
    new SqlConnectionStringBuilder ()
    {
        DataSource = "ServerName",
        InitialCatalog = "DatabaseName",
        UserID = "UserName",
        Password = "UserPassword"
    }.ConnectionString
);

Вы можете добавить больше параметров для построения строки подключения. Помните, что параметры определяются значениями, установленными в свойствах объекта SqlConnectionStringBuilder.

Также вы можете получить строку подключения к базе данных из соединения Microsoft Visual Studio с подключенной БД. При выборе БД на панели свойств отображается строка подключения.

Полный список свойств класса SqlConnectionStringBuilder приведен на этой странице с сайта Microsoft MSDN.

Для пользователя SQL Server по умолчанию sa означает "системный администратор", а его пароль зависит от версии SQL Server. На этой странице вы можете увидеть, как меняется пароль.

SQL Server 2008/R2 Express User: sa Пароль: [пустой пароль - оставьте поле пустым для подключения]

Пользователь SQL Server 201x Express: sa Пароль: Password123

SQL Server 20xx Web или Стандартный пользователь: sa Пароль: будет таким же, как пароль администратора или пользователя root на момент подготовки VDS.

Вы можете войти с пользователем sa в это окно входа в систему при запуске менеджера баз данных SQL Server. Как на этом изображении:

Log in example

Ответ 3

Поставщик данных .NET - относительный путь по умолчанию - стандартное соединение

 using System.Data.SqlClient;
 var conn = new SqlConnection();
 conn.ConnectionString = 
 "Data Source=.\SQLExpress;" + 
 "User Instance=true;" + 
 "User Id=UserName;" + 
 "Password=Secret;" + 
 "AttachDbFilename=|DataDirectory|DataBaseName.mdf;"conn.Open();

Поставщик данных .NET - относительный путь по умолчанию - доверенное соединение

 using System.Data.SqlClient;
 var conn = new SqlConnection();
 conn.ConnectionString = 
 "Data Source=.\SQLExpress;" + 
 "User Instance=true;" + 
 "Integrated Security=true;" + 
 "AttachDbFilename=|DataDirectory|DataBaseName.mdf;" conn.Open();

Поставщик данных .NET - настраиваемый относительный путь - стандартное соединение

using System.Data.SqlClient;
AppDomain.CurrentDomain.SetData(
"DataDirectory", "C:\MyPath\");
 var conn = new SqlConnection();
 conn.ConnectionString = 
 "Data Source=.\SQLExpress;" + 
 "User Instance=true;" + 
 "User Id=UserName;" + 
 "Password=Secret;" + 
"AttachDbFilename=|DataDirectory|DataBaseName.mdf;" conn.Open();  

Поставщик данных .NET - настраиваемый относительный путь - надежное соединение

 using System.Data.SqlClient;
 AppDomain.CurrentDomain.SetData(
 "DataDirectory", "C:\MyPath\");
 var conn = new SqlConnection();
 conn.ConnectionString = 
 "Data Source=.\SQLExpress;" + 
 "User Instance=true;" + 
 "Integrated Security=true;" + 
 "AttachDbFilename=|DataDirectory|DataBaseName.mdf;" conn.Open();

Ответ 4

Очень хороший ресурс ConnectionString.com, где вы найдете не только строки подключения SQL Server, но и множество других строк соединения db.

Ответ 5

О том, как подключиться к SQL Server на другом компьютере, есть ряд проблем.

  • Host/IP-адрес устройства
  • Начальный каталог (название базы данных)
  • Действительное имя пользователя/пароль

Очень часто SQL-сервер может работать как по умолчанию, что означает, что вы можете просто указать адрес хоста /ip, но вы можете столкнуться с сценарием, в котором он работает как именованный экземпляр (например, Sql Express). В этом случае вам нужно указать имя хоста\имя экземпляра.

Ответ 6

Вам нужно понять, что сервер базы данных или администратор базы данных не захотят, чтобы кто-либо мог подключаться или изменять содержимое сервера. Это целая задача учетных записей безопасности. Если одно имя пользователя /pwd будет работать только на любой машине, оно не будет защищать. Об этом "вы" слышали, не работает с SQL Server 2005, 2008 или 2012. Однако не уверены в предыдущих версиях. Я верю, что где-то в первые дни SQL Server имя пользователя по умолчанию и pwd использовалось как sa/sa, но это уже не так.

FYI, безопасность и роли базы данных намного сложнее в настоящее время. Возможно, вы захотите ознакомиться с деталями аутентификации на основе Windows. Если ваш SQL Server настроен для него, вам не нужно ни одного имени пользователя /pwd в строке подключения для подключения к нему. Все, что вам нужно изменить, это имя сервера сервера, и одна и та же строка соединения будет работать с вашими машинами, поскольку оба имеют одинаковое имя db, конечно.

Ответ 7

Вы можете использовать аутентификацию Windows, если ваш сервер находится в домене или Sql аутентификация. Sa - это системный администратор, корневая учетная запись для аутентификации SQL-сервера. Но это плохая практика использования, если для общения ваших клиентов. Вы должны создать свои собственные учетные записи и использовать их для подключения к вашему SQL. В каждом соединении вы устанавливаете учетную запись, ее пароль и базу данных по умолчанию, которую хотите подключить.

Ответ 8

sa - это учетная запись системного администратора, которая по умолчанию поставляется с сервером sql. Как вы знаете, возможно, уже знаете, вы можете использовать два способа входа в SQL Server.

screen shot of SQL Server Management Studio

Поэтому существуют строки подключения, которые подходят для каждого сценария (например, проверка подлинности Windows, localdb и т.д.). Используйте https://msdn.microsoft.com/en-us/library/jj653752(v=vs.110).aspx#sqlserver для создания строки подключения. Это теги XML. Вам просто нужно значение connectionString

Ответ 9

Вы можете использовать строку подключения следующим образом, и вам нужно только добавить имя вашей базы данных.

string connetionString = "Data Source=.;Initial Catalog=DB name;Integrated Security=True;MultipleActiveResultSets=True";

Ответ 10

Есть ли способ получить обновленную версию для SQL Server версии 12?

Ответ 11

мы можем просто подключиться к базе данных как...

uid=username;pwd=password;database=databasename;server=servername

например:

string connectionString = @"uid=spacecraftU1;pwd=Appolo11;
                            database=spacecraft_db;
                            server=DESKTOP-99K0FRS\\PRANEETHDB";
SqlConnection con = new SqlConnection(connectionString);

Ответ 12

Мы можем просто подключиться к базе данных:

 uid=username;pwd=password;database=databasename;server=servername

Например:

string connectionString = @"uid=spacecraftU1;pwd=Appolo11;
                            database=spacecraft_db;
                            server=DESKTOP-99K0FRS\\PRANEETHDB";
SqlConnection con = new SqlConnection(connectionString);

Ответ 13

"ConnectionString":{
  "Database_Name": "server=.;database=Database_Name;Integrated Security=true;"
},

Попробуй это