Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.03.2014, 23:37   #1
Muramidaza
Пользователь
 
Регистрация: 08.01.2014
Сообщений: 53
По умолчанию Назначение прав пользователю

Пробую создать пользователя через обычный UniQuery

Код:
 DM.UniQuery1.Close;
  DM.UniQuery1.SQL.Clear;
  DM.UniQuery1.SQL.Add('CREATE USER :UserName IDENTIFIED BY :UserLogin');
  DM.UniQuery1.Params.ParamByName('UserName').AsString:=Edit13.Text;
  DM.UniQuery1.Params.ParamByName('UserLogin').AsString:= QuotedStr(Edit14.Text);
  DM.UniQuery1.ExecSQL;
  DM.UniQuery1.Close;
  DM.UniQuery1.SQL.Clear;
  DM.UniQuery1.SQL.Add('GRANT ALL PRIVILEGES ON dbapteka.* TO :UserName IDENTIFIED BY :UserLogin');
  DM.UniQuery1.Params.ParamByName('UserName').AsString:=Edit13.Text;
  DM.UniQuery1.Params.ParamByName('UserLogin').AsString:= QuotedStr(Edit14.Text);
  DM.UniQuery1.ExecSQL;
(Я специально разделил на 2 этапа, потом права должны будут изменяться.)

Через приложение создаю пользователя. Отключаюсь. Пытаюсь соединиться с базой данных под новым пользователем - пишет что неверны логин или пароль.
В списке пользователей - новый пользователь есть. Я думаю, что проблема с паролем. Если я введу в Edit14 например 1234 - какой пароль будет принят?
Muramidaza вне форума Ответить с цитированием
Старый 17.03.2014, 23:39   #2
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

а с каких соображений вы втиснули туда QuotedStr ? ну просто вот интересно
eval вне форума Ответить с цитированием
Старый 17.03.2014, 23:53   #3
Muramidaza
Пользователь
 
Регистрация: 08.01.2014
Сообщений: 53
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
а с каких соображений вы втиснули туда QuotedStr ? ну просто вот интересно
В кавычки засунуть.

А как лучше сделать?
Muramidaza вне форума Ответить с цитированием
Старый 17.03.2014, 23:58   #4
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

ну а почему UserName не засунули а только UserLogin?
eval вне форума Ответить с цитированием
Старый 18.03.2014, 00:07   #5
Muramidaza
Пользователь
 
Регистрация: 08.01.2014
Сообщений: 53
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
ну а почему UserName не засунули а только UserLogin?
Просто пароль требуется в кавычках - без засовывания в кавычки - ошибка синтаксиса. СУБД MySQL 5.5.25
Muramidaza вне форума Ответить с цитированием
Старый 18.03.2014, 00:40   #6
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

параметр сам расставит кавычки где надо
вам просто надо понять откуда ошибка лезет
eval вне форума Ответить с цитированием
Старый 19.03.2014, 23:36   #7
Muramidaza
Пользователь
 
Регистрация: 08.01.2014
Сообщений: 53
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
параметр сам расставит кавычки где надо
вам просто надо понять откуда ошибка лезет
Спасибо - понял. Имя пользователя и пароль - через параметры, Кавычки действительно сами ставятся
Muramidaza вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ServerSocket: ответ пользователю... Andrey141 Работа с сетью в Delphi 4 22.08.2012 23:45
Проблема с сообщением пользователю vsa_210465 БД в Delphi 1 17.08.2010 17:07
Назначение прав локальному пользователю kabo3d Операционные системы общие вопросы 1 02.11.2009 07:58
Помощь пользователю! Oleg Romanchuk БД в Delphi 10 27.08.2007 07:22
Назначение прав пользователя Seqular Безопасность, Шифрование 1 04.08.2007 16:48