ADO .NET - Connection string
От: vita5555  
Дата: 10.12.07 12:21
Оценка:
Использую класс SqlConnection из пространства имен System.Data.SqlClient. Как правильно написать строку подсоединения, для учетной записи SQL сервера с паролем: "' (здесь два символа — сначало двойная ковычка, затем одинарная). Пробовал использовать: password='"'''; (последовательность 5 символов: одинарная кавычка, двойная кавычка и подряд три одинарных кавычек)- возникает ошибка Login failed.
Re: ADO .NET - Connection string
От: Domanser Украина  
Дата: 10.12.07 16:54
Оценка:
Сам не пробовал, но в MSDN пишут:

To include values that contain a semicolon, single-quote character, or double-quote character, the value must be enclosed in double quotation marks.

ms-help://MS.MSDNQTR.v80.en/MS.MSDN.v80/MS.VisualStudio.v80.en/WD_ADONET/html/745c5f95-2f02-4674-b378-6d51a7ec2490.htm

Т.е. может еще попробовать " " " ' " (2-2-2-1-2)?
Re: ADO .NET - Connection string
От: Davader Россия  
Дата: 11.12.07 00:59
Оценка:
Здравствуйте, vita5555, Вы писали:

V>Использую класс SqlConnection из пространства имен System.Data.SqlClient. Как правильно написать строку подсоединения, для учетной записи SQL сервера с паролем: "' (здесь два символа — сначало двойная ковычка, затем одинарная). Пробовал использовать: password='"'''; (последовательность 5 символов: одинарная кавычка, двойная кавычка и подряд три одинарных кавычек)- возникает ошибка Login failed.


если пароль равен именно: символ ",затем символ ', то их и надо передать, прямо как они есть, пример:
string connString = "Data Source=(local);Password=\"'; и далее..."; Никакихь одинарных кавычек, как ты написал выше НЕ надо, в строке подключения все пишется как есть, разделитель пар — точка с запятой, после имени свойства — знак равно.
Re[2]: ADO .NET - Connection string
От: Аноним  
Дата: 11.12.07 06:10
Оценка:
Здравствуйте, Davader, Вы писали:

D>если пароль равен именно: символ ",затем символ ', то их и надо передать, прямо как они есть, пример:

D>string connString = "Data Source=(local);Password=\"'; и далее..."; Никакихь одинарных кавычек, как ты написал выше НЕ надо, в строке подключения все пишется как есть, разделитель пар — точка с запятой, после имени свойства — знак равно.

Тогда возникает ошибка: Format of the initialization string does not conform to specification starting at index...
Re[2]: ADO .NET - Connection string
От: Аноним  
Дата: 11.12.07 06:15
Оценка:
Здравствуйте, Domanser, Вы писали:

D>

To include values that contain a semicolon, single-quote character, or double-quote character, the value must be enclosed in double quotation marks.

D>ms-help://MS.MSDNQTR.v80.en/MS.MSDN.v80/MS.VisualStudio.v80.en/WD_ADONET/html/745c5f95-2f02-4674-b378-6d51a7ec2490.htm

MSDN читал.

D>Т.е. может еще попробовать " " " ' " (2-2-2-1-2)?


Пробовал много вариантов, в том числе и этот. Все равно не работает.
Re[2]: ADO .NET - Connection string
От: OlegRaim  
Дата: 11.12.07 06:20
Оценка:
Привет

string conn_string = "Data Source=ИмяБазы;User ID=Пользователь;Password=Пароль";
DefaultConn = new OracleConnection(conn_string);

С уважением, Олег.
Re: ADO .NET - Connection string
От: sever_01  
Дата: 11.12.07 08:24
Оценка:
Здравствуйте, vita5555, Вы писали:

V>Использую класс SqlConnection из пространства имен System.Data.SqlClient. Как правильно написать строку подсоединения, для учетной записи SQL сервера с паролем: "' (здесь два символа — сначало двойная ковычка, затем одинарная). Пробовал использовать: password='"'''; (последовательность 5 символов: одинарная кавычка, двойная кавычка и подряд три одинарных кавычек)- возникает ошибка Login failed.


Может так: "\"\'"
Re[3]: ADO .NET - Connection string
От: mogadanez Чехия  
Дата: 11.12.07 14:33
Оценка:
А>MSDN читал.

D>>Т.е. может еще попробовать " " " ' " (2-2-2-1-2)?


А>Пробовал много вариантов, в том числе и этот. Все равно не работает.


вообще именно так и должно работать. как ругается? я не поленился, сделал себе такой пароль, проверил — у меня работает, да и по доке:

The basic format of a connection string includes a series of keyword/value pairs separated by semicolons. The equal sign (=) connects each keyword and its value. To include values that contain a semicolon, single-quote character, or double-quote character, the value must be enclosed in double quotation marks. If the value contains both a semicolon and a double-quote character, the value can be enclosed in single quotation marks. The single quotation mark is also useful if the value starts with a double-quote character. Conversely, the double quotation mark can be used if the value starts with a single quotation mark. If the value contains both single-quote and double-quote characters, the quotation mark character used to enclose the value must be doubled every time it occurs within the value.

получается два варианта

" " " ' " (2-2-2-1-2)
' " ' ' ' (1-2-1-1-1)

у меня работают оба.
есть еще способ — берете SqlConnectionStringBuilder:

SqlConnectionStringBuilder sсb = new SqlConnectionStringBuilder( );
sсb.WorkstationID = "localhost";
sсb.DataSource = "Nortwind";
sсb.UserID = "sa";
sсb.Password = "\"'";
string conn_string  = sb.ConnectionString;


получится тоже самое.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.