Я разрабатываю простое приложение C #, я хотел бы знать следующее: когда я подключаю свое приложение к SQL Server на моем ПК, я знаю строку подключения (имя сервера, пароль и т. Д.), Но когда я подключаю его к другому ПК, строка подключения к SQL Server отличается. Есть ли в SQL Server общая учетная запись с учетной записью по умолчанию, которая может подключаться? Я слышал об sa
учетной записи в SQL Server, что это такое sa
?
c#
sql-server
connection-string
sa
Рошан
источник
источник
SA
средняяsys_admin
роль сервера sqlОтветы:
.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();
См. Док .
источник
user id=Domain\Uname
я думаю, что это как-то связано с недопустимыми escape-символами, как мне это сделать правильно?;
символНа самом деле вы можете использовать этот
SqlConnectionStringBuilder
класс для создания строки подключения . Чтобы создать строку подключения , вам необходимо создать экземпляр объекта из этогоSqlConnectionStringBuilder
и установить его свойства с параметрами, которые вы используете для подключения к базе данных. Затем вы можете получить строку подключения изConnectionString
свойстваSqlConnectionStringBuilder
объекта, как показано в этом примере:Вы можете использовать
new
оператор, чтобы сделать это напрямую.Вы можете добавить дополнительные параметры для построения строки подключения . Помните, что параметры определяются значениями, заданными в
SqlConnectionStringBuilder
свойствах объекта.Также вы можете получить строку подключения к базе данных из соединения Microsoft Visual Studio с прикрепленной БД. При выборе БД в панели свойств отображается строка подключения .
Полный список свойств
SqlConnectionStringBuilder
класса приведен на этой странице сайта Microsoft MSDN.О пользователе SQL Server по умолчанию, sa означает «системный администратор», и его пароль зависит от версии SQL Server. На этой странице вы можете увидеть, как меняется пароль.
Вы можете войти в систему с пользователем sa в этом окне входа в систему при запуске диспетчера баз данных SQL Server. Как на этом изображении:
источник
Поставщик данных .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();
источник
Вы можете использовать строку подключения следующим образом, и вам нужно только добавить имя своей базы данных.
string connetionString = "Data Source=.;Initial Catalog=DB name;Integrated Security=True;MultipleActiveResultSets=True";
источник
Это ряд вещей, о которых следует беспокоиться при подключении к SQL Server на другом компьютере.
Очень часто SQL-сервер может работать по умолчанию, что означает, что вы можете просто указать имя хоста / IP-адрес, но вы можете столкнуться со сценарием, когда он работает как именованный экземпляр (например, Sql Express). В этом сценарии вам нужно указать имя хоста \ имя экземпляра.
источник
Вы можете использовать аутентификацию Windows, если ваш сервер находится в домене, или аутентификацию Sql. Sa - системный администратор, учетная запись root для аутентификации SQL-сервера. Но использовать его для подключения ваших клиентов - плохая практика. Вы должны создать свои собственные учетные записи и использовать их для подключения к вашему SQL. При каждом подключении вы устанавливаете логин учетной записи , ее пароль и базу данных по умолчанию , к которой хотите подключиться.
источник
sa
- это учетная запись системного администратора, которая по умолчанию поставляется с sql server. Как вы уже знаете, вы можете использовать два способа входа в SQL Server.Поэтому существуют строки подключения, подходящие для каждого сценария (например, проверка подлинности Windows, localdb и т. Д.). Используйте https://msdn.microsoft.com/en-us/library/jj653752(v=vs.110).aspx#sqlserver для создания строки подключения. Это теги XML. Вам просто нужно значение connectionString
источник
Вы должны понимать, что сервер базы данных или администратор баз данных не хотят, чтобы кто-либо мог подключаться или изменять содержимое сервера. В этом вся цель учетных записей безопасности. Если одно имя пользователя / pwd будет работать на любом компьютере, оно не обеспечит защиты. То, о чем вы слышали, не работает с SQL Server 2005, 2008 или 2012. Однако насчет предыдущих версий не уверен. Я считаю, что где-то на заре SQL Server имя пользователя и pwd по умолчанию были sa / sa, но это уже не так.
К вашему сведению, безопасность базы данных и роли в наши дни намного сложнее. Возможно, вы захотите изучить детали проверки подлинности на основе Windows. Если ваш SQL Server настроен для этого, вам не нужно какое-либо имя пользователя / pwd в строке подключения для подключения к нему. Все, что вам нужно изменить, - это имя серверной машины, и одна и та же строка подключения будет работать с обеими вашими машинами, если, конечно, оба имеют одинаковое имя базы данных.
источник
Мы можем просто подключиться к базе данных:
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);
источник
"ConnectionString":{ "Database_Name": "server=.;database=Database_Name;Integrated Security=true;" },
Попробуй это
источник