Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Поле Мемо / 3 сообщений из 3, страница 1 из 1
15.03.2004, 18:47
    #32442504
aleks_t
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поле Мемо
Я оставлял это сообщение в разделе Access, но там ни одного ответа так и не дождался:) может здесь поможете. Итак:

Нужна помощь!
есть таблица Access называется FormC. В ней есть поле Infsalary, тип Memo

проблема такая: я пытаюсь с помощью запроса QredC

update FormC
set Inftype=:Inftyper, Infview=:Infviewr, Infsalary=:Infsalaryr
where Inftype=:Inftypex and id_user=:idx and cnt=:cntx

ввести изменения в эту таблицу. Полей типа Мемо, кроме Infsalary, больше нет.
В программе параметры передаются так:

if (!QredC->Prepared)
QredC->Prepare();
QredC->ParamByName("Inftyper")->AsString = InfType->Text;
...
QredC->ParamByName("Infsalaryr")->AsMemo = InfSalary->Lines->GetText();
...
QredC->ExecSQL();

изменить данные в этой таблице.
В результате выдается ошибка №1: General SQL Error [Microsoft][Драйвер ODBC Microsoft Access]Усечение данных строки справа(null)

Поменяв тип параметра Infsalaryr с ftMemo на ftString и в программе сделав изменение QredC->ParamByName("Infsalaryr")->AsString, я получил ошибку №2:

General SQL Error [Microsoft][Драйвер ODBC Microsoft Access]Недопустимый индекс дескриптора
General SQL Error [Microsoft][Драйвер ODBC Microsoft Access]Недопустимое значение точности
Помогите разобраться:)
Спасибо
...
Рейтинг: 0 / 0
15.03.2004, 21:25
    #32442622
Lepsik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поле Мемо
--update FormC
set Inftype=:Inftyper, Infview=:Infviewr, Infsalary=:Infsalaryr
where Inftype=:Inftypex and id_user=:idx and cnt=:cntx


if (!QredC->Prepared)
QredC->Prepare();
QredC->ParamByName("Inftyper")->AsString = InfType->Text;
...
QredC->ParamByName("Infsalaryr")->AsMemo = InfSalary->Lines->GetText();
...
QredC->ExecSQL();

попробуйте так :
String sql_cmd = "SELECT Inftyper, Infsalaryr FROM FormC WHERE Inftype" + InfType->Text + " AND id_user=" + String(idx) + " AND cnt=" + String(cnt);

QredC->SQL->Clear();
QredC->SQL->Add( sql_cmd );
QredC->Open();
QredC->First();
QredC->Fields->Fields[1]->AsString = InfSalary->Lines->GetText();
QredC->Post();
QredC->Close();
...
Рейтинг: 0 / 0
16.03.2004, 15:04
    #32443739
MN
MN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поле Мемо
2 Lepsik:
результирующий набор, в предложенном вами варианте, можно только читать. записывать нельзя.
вот здесь должна быть ошибка.
автор QredC->Fields->Fields[1]->AsString = InfSalary->Lines->GetText();
QredC->Post();

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


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