Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / HELP / 11 сообщений из 11, страница 1 из 1
06.07.2002, 16:35:10
    #32035403
Утопающий
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HELP
Ребята подскажите кто может,не могу ничего дельного придумать есть пароль типа 'password так вот суть проблеммы:
'**;UID =еее;PWD = 'password;'
как отделить ету ' что-бы она воспринималась как часть пароля,я уже все перепробывал - ничего не выходит.
Заранее спасибо
...
Рейтинг: 0 / 0
06.07.2002, 16:39:05
    #32035405
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HELP
Вы бы написали, что конкретно перепробовали.
Удвоение кавычки пробовали?
Бакслэш (\) пробовали?
...
Рейтинг: 0 / 0
06.07.2002, 17:16:24
    #32035409
Утопающий
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HELP
exec sp_addlinkedserver 'WEB','MSDASQL','DRIVER=MYSQLAB;server = *****;UID =***;PWD = 'password','***'
Я уже и всю строку в "" брал,и (\'),('\),(" ' ") ,а еффект один и тотже при ошибке исполнения пароль в лутшем случае пишется в виде '\password или вообще ерунду какуету
...
Рейтинг: 0 / 0
06.07.2002, 17:41:21
    #32035410
SergCat
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HELP
Если правильно понял, то суть вопроса сводиться к использованию символа (') в строковых переменных.
В Вашем случае можно задействовать два варианта:
1. Использовать опцию QUOTED_IDENTIFIER и строки заключать в двойные кавычки
Код: plaintext
1.
SET QUOTED_IDENTIFIER OFF
exec sp_addlinkedserver  "WEB" , "MSDASQL" , "DRIVER=MYSQLAB;server = *****;UID =***;PWD = 'password" , "***"  

2. Для заведения символа (') в строковую переменную его необходимо удвоить ('')
Код: plaintext
exec sp_addlinkedserver 'WEB','MSDASQL','DRIVER=MYSQLAB;server = *****;UID =***;PWD = ''password','***' 
...
Рейтинг: 0 / 0
06.07.2002, 17:44:52
    #32035411
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HELP
В созданном мною UDL файле данная штука хранится в виде.
Password="'pas";

Больше никаких мыслей.
...
Рейтинг: 0 / 0
06.07.2002, 17:45:05
    #32035412
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HELP
В созданном мною UDL файле данная штука хранится в виде.
Password="'pas";

Больше никаких хороших мыслей нет
...
Рейтинг: 0 / 0
06.07.2002, 17:49:40
    #32035413
Утопающий
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HELP
Грандиозное спасибо - всплываю!!!!!!!!!
...
Рейтинг: 0 / 0
06.07.2002, 21:41:13
    #32035421
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HELP
Рад, что мы спасли от смерти заблудшую христианскую душу.
...
Рейтинг: 0 / 0
07.07.2002, 12:38:30
    #32035437
Smile
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HELP
Странно, а зачем вообще в пароле использвать '? Без этого нельзя? Мож че просто накуралесить хочешь? Я как-то этим пользовался, что бы ваще пароль отбросить. Ну например, в сети существует куча сайтов (чаты, например, попадаются даже магазины), где при регистрации проверка полей логин и пасс на наличие в ней всякой лабуды типа ' не производится вообще и запрос к базе формируется динамически прямо на основе содержимого этих полей, типа

select "'" + login + "'" , "'" + pass + "'" from users

если логин=blablabla'-- или (MySQL) blablabla'#

тогда все что после select "'" + login

воспринимается как простой комментарий и ты спокойно логинишься любым зарегистрированным пользователем.
Не пойму, неужели нельзя поля проверять на содержание ', --, chr(34) и т.д.?
...
Рейтинг: 0 / 0
07.07.2002, 13:36:00
    #32035439
Утопающий
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HELP
Еще раз спасибо всем за оказанную помощь,пароль выдумал не я :) ,и поменять его ето просто геморой:)
...
Рейтинг: 0 / 0
07.07.2002, 15:02:55
    #32035446
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HELP
Re:Smile
Мы должны не боротся с пользователями, а удовлетворять их самые изощренные фантазии. Если где-то какие-то "программисты" не делают проверку на ' при использовании SQL, то это говорит только об их квалификации.

Вообще-то конечно странно выглядит использование пароля в строке подклюючения. Лучше этого избегать.
Но человек тонул, и его надо было срочно спасть.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / HELP / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]