Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Обновление поля запросом, как вставить NULL 
V
    Опции темы
kulikoff
Дата 29.11.2006, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 334
Регистрация: 5.11.2005
Где: Киев

Репутация: 1
Всего: 1



Собственно сабж... В таблице БД есть поле типа number, которое содержит число, скажем 56384. Мне необходимо параметризированным запросом обновить поле так, чтоб оно стало со значением NULL, СУБД Oracle. Что написать в параметре р3 запроса?
Код

          ADOQuery9.Close;
          ADOQuery9.SQL.Clear;
          ADOQuery9.SQL.Text:='update REN.bankvup b set b.roz=:p1, b.prin=:p2, b.subpackid=:p3, b.kr1=:p4 where b.keybank=:p5';
          ADOQuery9.Parameters.ParseSQL(ADOQuery9.SQL.Text, true);
          ADOQuery9.Parameters.ParamByName('p1').Value:='текст';
          ADOQuery9.Parameters.ParamByName('p2').Value:='текст';
          ADOQuery9.Parameters.ParamByName('p3').Value:=??????????????????????;
          ADOQuery9.Parameters.ParamByName('p4').Value:=0;
          ADOQuery9.Parameters.ParamByName('p5').Value:=ADOQuery7.FieldByName('keybank').AsInteger;
          ADOQuery9.Prepared;
          ADOQuery9.ExecSQL;

PM MAIL WWW ICQ Skype   Вверх
Rodman
Дата 29.11.2006, 16:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 22
Всего: 122



Код

          ADOQuery9.Close;
          ADOQuery9.SQL.Clear;
          ADOQuery9.SQL.Text:='update REN.bankvup b set b.roz=:p1, b.prin=:p2, b.subpackid=:p3, b.kr1=:p4 where b.keybank=:p5';
          ADOQuery9.Parameters.ParseSQL(ADOQuery9.SQL.Text, true);
          ADOQuery9.Parameters.ParamByName('p1').Value:='текст';
          ADOQuery9.Parameters.ParamByName('p2').Value:='текст';
          ADOQuery9.Parameters.ParamByName('p3').Value:=0;
          ADOQuery9.Parameters.ParamByName('p4').Value:=0;
          ADOQuery9.Parameters.ParamByName('p5').Value:=ADOQuery7.FieldByName('keybank').AsInteger;
          ADOQuery9.Prepared;
          ADOQuery9.ExecSQL;


а так что не пойдет?
PM MAIL WWW Skype GTalk YIM MSN   Вверх
superVad
Дата 29.11.2006, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 735
Регистрация: 6.4.2006
Где: Черкассы, Украина

Репутация: 3
Всего: 15



nil попробуй
PM MAIL   Вверх
kulikoff
Дата 29.11.2006, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 334
Регистрация: 5.11.2005
Где: Киев

Репутация: 1
Всего: 1



Rodman, 0 нельзя, надо именно NULL

superVad, выдает ошибку
Код

Incompatible types: 'Variant' and 'Pointer'

на строку:
Код

 ADOQuery9.Parameters.ParamByName('p3').Value:=nil;

PM MAIL WWW ICQ Skype   Вверх
Vas
Дата 29.11.2006, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 830
Регистрация: 29.6.2005
Где: Stavropol region

Репутация: 23
Всего: 28



Вот так попробуй
Код

ADOQuery9.Parameters.ParamByName('p3').AsString:='';


Добавлено @ 16:56 
или пиши в самом запросе 
Код

update REN.bankvup b set b.roz=:p1, b.prin=:p2, b.subpackid=null, b.kr1=:p4 where b.keybank=:p5



--------------------
И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин)
PM MAIL   Вверх
kulikoff
Дата 29.11.2006, 17:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 334
Регистрация: 5.11.2005
Где: Киев

Репутация: 1
Всего: 1



СпасибоЁ Прям в запросе написал - всё работает! Как-то не подумал сразу в запросе писать.... smile 
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0468 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.