Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.18;
Скачать: CL | DM;

Вниз

Одна ADOшная заморочка   Найти похожие ветки 

 
СН   (2002-10-29 14:43) [0]

Почему-то не удается вставить в базку (Access 2000) в поле типа VARCHAR пустое значение, используя ADO Express.

Например,

var
s: string;
begin
Query1.Parameters.ParamByName("Field").Value := "";
// или так
s := "";
Query1.Parameters.ParamByName("Field").Value := s;
// в следующей строке вылазит ошибка о том, что параметр якобы
// неправильно определен
Query1.ExecSQL;

Если вместо "" поставить " " (пробел) - работает.

Не подскажете, в чем проблема ?


 
stone ©   (2002-10-29 14:53) [1]

Попробуй присвоить значение null


 
СН   (2002-10-29 14:53) [2]

Не помогает :(
Странно, это должна быть весьма известная заморочка ...


 
alxx ©   (2002-10-29 14:53) [3]

А если попробовать Value:=#0?


 
СН   (2002-10-29 14:59) [4]

Вот что помогает немного:

... := PChar(string)^;

но это же один символ, а не вся строка ...


 
СН   (2002-10-29 15:00) [5]

Хм, Value := #0 - получилось
Но это частный случай, а как строку типа string пустую загнать ?


 
СН   (2002-10-29 15:39) [6]

Пришлось пока сделать офигительную функцию:

function ADOSTR(asStr: string): Variant;
begin
Result := asStr;
if asStr = "" then Result := #0;
end;

Тогда

Value := ADOSTR(""); - ок


 
dim- ©   (2002-10-30 00:12) [7]

а может в базе на этом поле стоит "пустые строки нет"



Страницы: 1 вся ветка

Текущий архив: 2002.11.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
14-59389
Николай Быков
2002-10-30 11:40
2002.11.18
Команда кодеров :-)


1-59196
bloodman
2002-11-08 23:35
2002.11.18
TStringGrid


3-59069
Андрусь
2002-10-21 21:43
2002.11.18
Быстрый поиск в ораклиной базе...


14-59409
Anatoly Podgoretsky
2002-10-31 07:48
2002.11.18
Именинники 31 октября


4-59517
dagsess
2002-10-07 06:40
2002.11.18
Поиск в памяти процесса