Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.05.2008, 10:41   #11
AlexandrSid
Форумчанин
 
Регистрация: 31.10.2007
Сообщений: 103
По умолчанию

Цитата:
а уладять таблицу нужно, как я понял через DELETE TABLE. Так?
Так вот если так, то именно на ExecSQL программа и ругается
Сделай так

Код:
adoQuery1.SQL.Clear;
adoQuery1.SQL.ADD('DROP TABLE <Имя таблицы>');
adoQuery1.ExecSQL
AlexandrSid вне форума Ответить с цитированием
Старый 23.05.2008, 10:43   #12
TaTT DoGG
Форумчанин
 
Аватар для TaTT DoGG
 
Регистрация: 25.04.2008
Сообщений: 476
По умолчанию

да работает, понятно
спасибо
а как на счёт считывания названий таблиц в листбокс?
Life if about choices
Make the right choice

Последний раз редактировалось TaTT DoGG; 23.05.2008 в 10:45.
TaTT DoGG вне форума Ответить с цитированием
Старый 23.05.2008, 14:55   #13
AlexandrSid
Форумчанин
 
Регистрация: 31.10.2007
Сообщений: 103
По умолчанию

Выполняешь запрос 'SELECT * FROM MSysObjects'
Таблицы имеют тип 1, т.е. если нужны только таблицы то запрос будет
'SELECT * FROM MSysObjects WHERE type = 1'
При соединении обязательно нужно указать
'Jet OLEDB:Create System Database=true;'
'Jet OLEDB:System database='+<Путь к системной таблице>
У меня он 'C:\Windows\System32\system.mdw', но я встречал где то в Helpe 'C:\Documents and Settings\user\Application Data\Microsoft\Access\system.mdw'
AlexandrSid вне форума Ответить с цитированием
Старый 23.05.2008, 20:57   #14
mopozoff
Пользователь
 
Регистрация: 22.04.2008
Сообщений: 14
По умолчанию

А куда будет записываться список таблиц? В C:\Windows\System32\system.mdw? Если да, то как его оттуда достать?

Вообще мне надо чтобы список таблиц считывался в массив, например, или сразу в листбокс. В общем хоть куда-нибудь (переменные, компоненты) в Delphi.
mopozoff вне форума Ответить с цитированием
Старый 23.05.2008, 21:03   #15
AlexandrSid
Форумчанин
 
Регистрация: 31.10.2007
Сообщений: 103
По умолчанию

Он будет считываться из system.mdw
Считываешь его в таблицу например ADOTableSystem указанным выше запросом, а потом стандартно в цикле перебераешь записи ADOTableSystem

Код:
while not ADOTableSystem.EOF do begin
  //Здесь заполняешь массив или ListBox, как тебе надо
end;
AlexandrSid вне форума Ответить с цитированием
Старый 24.05.2008, 18:53   #16
mopozoff
Пользователь
 
Регистрация: 22.04.2008
Сообщений: 14
По умолчанию

Цитата:
Считываешь его в таблицу например ADOTableSystem указанным выше запросом
Если можно поподробнее об этом. Что и как писать.
mopozoff вне форума Ответить с цитированием
Старый 25.05.2008, 16:00   #17
mopozoff
Пользователь
 
Регистрация: 22.04.2008
Сообщений: 14
По умолчанию

2 AlexandrSid
Ну ты расписал тут всё намного проще
Код:
ADOConnection1.GetTableNames(Listbox1.items);
mopozoff вне форума Ответить с цитированием
Старый 26.05.2008, 08:32   #18
AlexandrSid
Форумчанин
 
Регистрация: 31.10.2007
Сообщений: 103
По умолчанию

Спасибо теперь буду знать, я с делфи только месяц работаю раньше никогда на нем не писал, вот и не знаю всех компонентов приходится все делать ручками.
AlexandrSid вне форума Ответить с цитированием
Старый 07.04.2009, 11:24   #19
new_user
Пользователь
 
Регистрация: 07.04.2009
Сообщений: 19
По умолчанию

как можно ввести название таблицы например в компоненте edit ?
например вот код

Код:
adoquery1.Close;
adoquery1.SQL.Clear;
with adoquery1.sql do begin
add('CREATE TABLE quit (id smallint NOT NULL PRIMARY KEY,fio varchar(50)not null); ');
end;
adoQuery1.ExecSQL;
чтобы название таблицы
Код:
quit
вводить в edit
new_user вне форума Ответить с цитированием
Старый 07.04.2009, 15:14   #20
soleil@mmc
SQL-коддинг
Участник клуба
 
Регистрация: 16.01.2009
Сообщений: 1,192
По умолчанию

можно так
Код:
add(format('CREATE TABLE %s (id smallint NOT NULL PRIMARY KEY,fio varchar(50)not null); ', [edit1.text]));
soleil@mmc вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание таблиц MAcK Общие вопросы Delphi 4 07.11.2007 15:51
Связывание таблиц FoxPro в Access 2002 Nessa Microsoft Office Access 2 04.11.2007 09:54
Через запрос перенести данные с 6 таблиц Таня84 БД в Delphi 5 22.03.2007 15:46
Создание новых объектов Washington Общие вопросы Delphi 1 10.03.2007 21:57
Создание новых разделов PAVEL315 О форуме и сайтах клуба 14 20.01.2007 23:05