Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 10.09.2017
Сообщений: 4
1

Существует запрос в Qt для добавления новой роли, необходимо передать в него собственные логин и пароль.

10.09.2017, 14:37. Показов 958. Ответов 4
Метки нет (Все метки)

Добрый день, ребята.
Существует запрос в Qt для добавления новой роли в базу данных postgresql.
Запрос:
C++ (Qt)
1
QSqlQuery query("CREATE ROLE name LOGIN PASSWORD 123");
этот запрос рабочий, но мне надо вместо имени и пароля вставить собственные значения.
Пробовал вот так:
C++ (Qt)
1
QSqlQuery query("CREATE ROLE"+ui->lineEdit->text()+ "LOGIN PASSWORD "  +ui->lineEdit_2->text() );
Но ничего не получается, не подскажите, как составить правильный запрос? буду благодарен за ответ.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.09.2017, 14:37
Ответы с готовыми решениями:

Передать серверу логин и пароль для авторитизации, но пароль нужно передать в md5
Нужно передать серверу логин и пароль для авторитизации, но пароль нужно передать в md5. Но у меня...

Как запустить программу и передать логин и пароль для аутентификации (CheckPoint Endpoint Security)
Есть программа checkpoint endpoint Security, которую я хочу запускать через c# в качестве процесса,...

Как передать логин и пароль в UserIdentity
Здравствуйте. Не получается передать модель User в класс UserIdentity, в саму модель все...

Возможно ли передать в openquery логин и пароль?
Добрый день, подскажите можно ли как то передать в openquery логин и пароль? На msdn ничего про...

4
53 / 53 / 3
Регистрация: 29.12.2012
Сообщений: 134
10.09.2017, 21:54 2
Лучший ответ Сообщение было отмечено Wyn как решение

Решение

C++ (Qt)
1
2
3
4
5
6
QSqlQuery query(указатель на QSqlDatabase);
QString queryString = QString("CREATE ROLE %1 LOGIN PASSWORD %2").arg(ui->lineEdit->text()).arg(ui->lineEdit_2->text());
query.exec(queryString);
if(query.lastError.isValid){
    qDebug()<<query.lastError.text();
}
Как-то так попробуйте.
1
0 / 0 / 0
Регистрация: 10.09.2017
Сообщений: 4
10.09.2017, 23:36  [ТС] 3
Попробовал, как вы посоветовали, но пишет:
"ERROR: syntax error at or near "123"\nСТРОКА 1: CREATE ROLE qwerty LOGIN PASSWORD 123\n
вот код:

C++ (Qt)
1
2
3
4
5
6
QSqlQuery query(db);
QString strch1=QString("CREATE ROLE %1 LOGIN PASSWORD %2").arg(ui->lineEdit->text()).arg(ui->lineEdit_2->text());
query.exec(strch1);
    if(query.lastError().isValid()){
       qDebug()<<query.lastError().text();
    }
До этого по другому пробовал, тоже такая ошибка выходила, может быть еще идеи есть или как исправить данную ошибку?

Добавлено через 7 минут
Я нашел ошибку, надо кавычки поставить во второй аргумент, то есть:
C++ (Qt)
1
2
3
4
5
6
QSqlQuery query(db);
QString strch1=QString("CREATE ROLE %1 LOGIN PASSWORD '%2'").arg(ui->lineEdit->text()).arg(ui->lineEdit_2->text());
query.exec(strch1);
    if(query.lastError().isValid()){
       qDebug()<<query.lastError().text();
    }
кто-нибудь может мне объяснить почему там нужны кавычки во втором аргументе?
0
Эксперт С++
1919 / 1261 / 360
Регистрация: 16.05.2013
Сообщений: 3,293
Записей в блоге: 6
11.09.2017, 08:32 4
Цитата Сообщение от Thespecial94 Посмотреть сообщение
кто-нибудь может мне объяснить почему там нужны кавычки во втором аргументе?
Может потому что так определен синтаксис ?
https://postgrespro.ru/docs/po... createrole
1
0 / 0 / 0
Регистрация: 10.09.2017
Сообщений: 4
11.09.2017, 11:36  [ТС] 5
Да, уже разобрался с этим, спасибо всем за помощь.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.09.2017, 11:36

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Считать логин и пароль и передать их на сервер
Нужна помощь, есть сервер, и есть клиент через браузер, как можно считать логин и пароль и передать...

Передать логин и пароль на SMPT сервер
В общем вопрос по теме топика, програмно подконнектился к smtp.mail.ru, но не знаю как передать на...

Вводится строка, содержащая команду вида: ftp://логин:пароль@адрес_сервера. Написать программу, которая из введенной строки выделяет логин, пароль и а
Вводится строка, содержащая команду вида: ftp://логин:пароль@адрес_сервера. Написать программу,...

Пароль в Windows XP zver (пароль известен, но при вводе по новой выводиться запрос)
Такая проблемка уже который раз повторяется ! Переустановил винду,через несколько дней появляется...

Логин и пароль для входа
Есть программа, перед тем как зайти нужно чтоб в отдельном окне запрашивался логин и пароль...

логин и пароль для входа в БД
Есть БД написанная в msq server 10.50.1600. В делфи создается интерфейс. для входа в БД в делфи...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.