|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
09.11.2011, 02:08 | #1 |
Регистрация: 09.11.2011
Сообщений: 7
|
Добавление/Удаление столбца в таблице БД Delphi
Как создать поле(столбец) в AdoTabel в Delphi?
Имеется подключенная база данных (Access) Таблица сопоставлена с AdoTable1 В таблице требуется Добавить/Удалить последнее поле(столбец) подскажите оператор или набор операторов или SQL запрос (только так что бы потом им можно было пользоваться) Я пытался ввести SQL запрос в AdoQuery вот в таком виде ADOQuery1.SQL.Add('ALTER TABLE имя_таблицы ADD имя_столбца String[255]'); но мне выдает ошибку 'ADOTable1: Cannot perform this operation on a closed dataset' Не может выполнить операцию на закрытие данных Последний раз редактировалось Mag-Dark_Elf; 09.11.2011 в 02:11. |
09.11.2011, 03:27 | #2 |
Регистрация: 03.09.2010
Сообщений: 8
|
Нет, это означает что нельзя выполнить операцию, когда закрыта таблица. Просто свойство Connected у ADOConnection надо выставить в True если забыл или у ADOTable Active в True.
Последний раз редактировалось Vladilen; 09.11.2011 в 03:36. |
09.11.2011, 22:04 | #3 |
Регистрация: 09.11.2011
Сообщений: 7
|
Я это исправил
Но проблема не в этом, а в том что я не умею создавать и удалять поля SQL - Alter Table то создаёт поле, то выдаёт ошибку что "Текущий поставщик не поддерживает возврат нескольких наборов записей в результате выполнения одной операции" |
09.11.2011, 22:26 | #4 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
Запомните, когда Вы получаете выборку данных с помощью операции SELECT ... FROM - тогда вызываете метод ADOQuery1.Open; если же Вы добавляете/изменяте/удаляете данные или манипулируете структурой таблицы, то никаких данных Вам НЕ ВОЗРАЩАЕТСЯ, поэтому нужно использовать метод ADOQuery1.ExecSQL; и никак иначе! |
|
09.11.2011, 22:37 | #5 |
Регистрация: 09.11.2011
Сообщений: 7
|
ADOQuery1.ExecSQL;
И куда это вставит, У меня ADOQuery1.Open нету и я повторю: Я не умею создавать поля, мне сказали только то, что если в ADoQuery.SQL вписат sql запрос и включить его, "что-то" может и получиться, больше я ничего не знаю, поэтому прошу помочь мне в создании поля |
09.11.2011, 23:01 | #6 |
Регистрация: 03.09.2010
Сообщений: 8
|
Вот именно тебе и нужно "в ADoQuery.SQL вписат sql" но не включать его, а просто исполнить его, например на кнопку удалить повесить такой код:
ADOQuery1.ExecSQL |
09.11.2011, 23:53 | #7 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Vladilen, +1
Mag-Dark_Elf, Цитата:
Цитата:
Вы, наверное, делаете ADOQuery1.Active := true; ??!! Так сообщаю - вызвать метод Open или присвоить .Active := true - это АБСОЛЮТНО одно и то же! вот ВМЕСТО этой строчки и напишите Код:
|
||
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Добавление (удаление) строк в таблице | inside9 | Microsoft Office Excel | 29 | 01.01.2012 22:31 |
Удаление строк столбца совпадающих со строками другого столбца | ShamanGood | Microsoft Office Excel | 23 | 18.09.2010 09:26 |
сравнение ячеек и добавление нового столбца к таблице | robbe | Microsoft Office Excel | 7 | 22.01.2010 10:30 |
Добавление данных из Delphi в таблице Excel | Neket21 | БД в Delphi | 1 | 23.07.2009 08:06 |
Выделение последнего столбца в таблице | Busine2009 | Microsoft Office Word | 2 | 26.05.2009 07:20 |