Пароль SQL Server 2008, заканчивающийся точкой с запятой
допустим, у меня есть пароль, который выглядит так: password;
Как я могу заставить его работать с запятой в качестве последнего символа. Пароль работает в SSMS и ODBC, но не со строкой подключения. Я пытался "
вокруг него, но это, похоже, не работает.
<add name="DbConn" connectionString="Data Source=LOCALHOST;Database=MYDB;Trusted_Connection=no;User Id=myuser;Password=password;" providerName="System.Data.SqlClient" />
Это для ASP.NET веб-приложение. Насколько я могу судить, это невозможно.
3 ответов
Инкапсулируйте свой пароль в одинарные кавычки. например, учитывая пароль iloveachallenge;
строка подключения должна содержать Password='iloveachallenge;';
.
Я использую следующий код для подключения к SQL Server 2008 R2.
var sqlConnection = new SqlConnection()
{
ConnectionString = "Server=DT2719MOD;Database=abs2;User Id=TestUserLogon;Password='iloveachallenge;';"
};
sqlConnection.Open();
Console.WriteLine(sqlConnection.State);
sqlConnection.Close();
изменить: Также попытался использовать строку подключения, которая у вас есть, и она работает на моей машине.
ConnectionString="Data Source=DT2719MOD;Database=abs2;Trusted_Connection=no;User Id=TestUserLogon;Password='iloveachallenge;';"
чтобы включить значения, содержащие точку с запятой, символ одинарной кавычки или символ двойной кавычки, значение должно быть заключено в двойные кавычки.
от: http://msdn.microsoft.com/en-us/library/windows/desktop/ms722656(v=vs. 85).aspx
в основном у вас есть все экранирующие процедуры строки подключения.
Да, это возможно. Ответ дан в ответе Пита в этой теме:Escape ; (точка с запятой) в строке подключения odbc в приложении.файл config
в принципе, нужно поставить одинарные кавычки вокруг имени пользователя/пароля поля, а не персонажи, которых вы хотите избежать, в чем я ошибался.
чтобы украсть пример Пита:
initial catalog=myDB;UserId=MyUser;Password=abc;123;multipleactiveresultsets=True;
необходимо:
initial catalog=myDB;UserId='MyUser';Password='abc;123';multipleactiveresultsets=True;