Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > Ошибка в запросе


Автор: Vavik 2.5.2010, 18:40
Access 2007, ADO
Есть запрос на создание таблицы при нажатии кнопки, который отказывается работать.
Ошибка такая
http://ipicture.ru/

Код

procedure TForm2.Button1Click(Sender: TObject);
begin
 Query.SQL.Clear;
 Query.SQL.Add('CREATE TABLE '+ edit1.text +'');
 Query.SQL.Add('(Mesto integer, ');
 Query.SQL.Add('Monitor boolean, ');
 Query.SQL.Add('Sis_blok boolean, ');
 Query.SQL.Add('Mouse boolean, ');
 Query.SQL.Add('Keyboard  boolean); ');
 Query.ExecSQL;
 Form2.close;
 Form1.ComboBox1.Items.Add(form2.edit1.text);
end;

Автор: Данкинг 2.5.2010, 19:11
Разве тип "boolean" в Access есть? Попробуй bit.

Автор: Vavik 2.5.2010, 19:18
Спасибо, помогло ^^

Автор: Vavik 3.5.2010, 00:24
М, а что надо дописать в запросе после bit, чтобы формат поля был Да/Нет ?

Автор: Данкинг 3.5.2010, 01:05
Цитата(Vavik @ 3.5.2010,  01:24)
М, а что надо дописать в запросе после bit, чтобы формат поля был Да/Нет ?

Какой "да/нет"? smile Чем тебя не устраивает 0/-1 ? smile 

Автор: Vavik 3.5.2010, 08:00
Цитата(Данкинг @ 3.5.2010,  01:05)
Какой "да/нет"? smile Чем тебя не устраивает 0/-1 ? smile

Я из-за пустогго поля "Формат поля" не могу таблицу редактировать, ошибку выдаёт.

Автор: Данкинг 3.5.2010, 10:00
Какую ошибку?

Автор: Vavik 3.5.2010, 10:29
А нет, всё нормально) 
Но есть другая проблема. 
Я добавляю текст из эдита в комбобокс
Код

 Form1.ComboBox1.Items.Add(form2.edit1.text);

Он добавляется, но если программку перезапустить, его там уже не будет. Почему он удаляется ?

Автор: Данкинг 3.5.2010, 10:33
Цитата(Vavik @  3.5.2010,  11:29 Найти цитируемый пост)
Он добавляется, но если программку перезапустить, его там уже не будет. 

А с какой стати он там должен оставаться, и, самое главное, где, по твоему мнению, текст должен храниться? smile 

Автор: Vavik 3.5.2010, 10:37
Цитата(Данкинг @ 3.5.2010,  10:33)
А с какой стати он там должен оставаться, и, самое главное, где, по твоему мнению, текст должен храниться? smile

В items комбобокса, где ещё ему храниться) или я как-то не так добавляю ?

Автор: superVad 3.5.2010, 11:20
Vavik, Когда ты запускаешь программу то создается обьект комбобокса, а когда закрываешь то он уничтожается. При повторном запуске это уже новый комбобокс.
Поэтому сохранение/чтение содержимого тебе придется реализовать самому.

Можно заюзать:
Items.SaveToFile и Items.LoadFromFile

Автор: Vavik 3.5.2010, 12:27
А как добавить все значения из одной колонки таблицы в memo подскажите)

Автор: Данкинг 3.5.2010, 12:37
Vavik, один вопрос - один топик. smile К тому же к базам данных это уже определённо не относится.

Автор: Vavik 3.5.2010, 12:40
Как это не относится ? таблица то в базе данных) Хотя мне всё равно, сейчас поищу, если не найду, создам тему.

Автор: Данкинг 3.5.2010, 12:55
Код

table1.first;
for j:=1 to table1.recordcount do
 begin
  memo.Lines.Add(table1.fieldvalues['pole1']);
  table1.next;
 end;


Добавлено через 58 секунд
Цитата(Vavik @  3.5.2010,  11:37 Найти цитируемый пост)
В items комбобокса, где ещё ему храниться) 

Не, ну чисто физически где будут храниться твои items, когда программа закрыта?

Автор: Vavik 3.5.2010, 13:35
Цитата(Данкинг @ 3.5.2010,  12:55)

Код

table1.first;
for j:=1 to table1.recordcount do
 begin
  memo.Lines.Add(table1.fieldvalues['pole1']);
  table1.next;
 end;


Спасибо помогло smile

Цитата(Данкинг @ 3.5.2010,  12:55)

Добавлено @ 12:56
Цитата(Vavik @  3.5.2010,  11:37 Найти цитируемый пост)
В items комбобокса, где ещё ему храниться) 

Не, ну чисто физически где будут храниться твои items, когда программа закрыта?

Знаю, туплю)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)