Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / [FireDAC][C++ Builder]Параметризированный запрос к базе данных / 1 сообщений из 1, страница 1 из 1
12.10.2016, 20:21
    #39325662
PandoraBoxes
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[FireDAC][C++ Builder]Параметризированный запрос к базе данных
Здравствуйте, как правильно написать параметры для FDConnection.ExecSQLScalar

На Delphi это выглядит так:
Код: pascal
1.
FDConnection1.ExecSQLScalar('SELECT Count(*) FROM [Users] WHERE Login=:Log', [sh_Login], [ftString]);



Т.е. в строке :Log это параметр, во 2 параметре функции - данные(в виде массива) которые нужно подставить в строку запроса, и указываются типы указываемых параметров.

Так вот, как это сделать в C++?

В справке есть такое описание функции из заголовочного файла:
Код: plaintext
1.
System::Variant __fastcall ExecSQLScalar(const System::UnicodeString ASQL, const System::Variant *AParams, const int AParams_High)/* overload */;



Если с 1 параметром всё понятно - строка, то со вторым не понятно как записать его...

P.S. про такую запись знаю(как пример, через ParamByName):
Код: plaintext
1.
2.
3.
FDQuery->SQL->Add("INSERT INTO [Users] VALUES(:id,:log,:pas,:level)");
FDQuery->Params->ParamByName("id")->Value = max + 1;
FDQuery->Params->ParamByName("log")->Value = "qwe";


Хотелось бы через ExecSQLScalar без конкатенации строк.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / [FireDAC][C++ Builder]Параметризированный запрос к базе данных / 1 сообщений из 1, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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