![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ошибка при удалении поля [D6, IB6.x]
Наташа © (2003-04-03 14:42:00)Уважаемые мастера Delphi! Очень нужен совет.
Решила изменить немного структуру таблицы, одно из полей стало не нужно. Удаляю его
выдает следующую ошибку.
Dynamic SQL Error
SQL error code = -104
Token unknown - line 2, char 4
percent
Statement: Alter Table List_order
drop percent
Ни ХП , ни тригеры с этим полем не связаны, индексов нет. Написание точно такое. В чем может быть дело?
Наташа (2003-04-03 15:48:00) [1]Когда созжавала таблицу, то в кавычки названия полей и таблицы не брала, т.е. Create Table List_Order(...). Тем не менее попробовала, что вызвало следующую ошибку
Unsuccessful metadata update
Table column not found
Statement: Alter Table "List_Order"
Drop "Percent"
y-soft (2003-04-03 15:28:00) [2]>zacho © (03.04.03 15:26)
Очень похоже, что Вы правы
zacho (2003-04-03 15:26:00) [3]DDL - Data Definition Language. Т.е. операторы SQL для создания и модификации метаданных. В данном случае - CREATE TABLE ... для твоей таблицы.
Собственно, у меня есть подозрение, что работаешь ты с диалектом 3 и таблица была создана как-то типа CREATE TABLE "List_Order" ("Percent" .. В этом случае при работе с полями надо названия полей заключать в кавычки, т.е. ALTER TABLE "List_Order" DROP "Percent"
Жук (2003-04-03 15:24:00) [4]Похоже в этой таблице уже нет поля Percent. :-)
y-soft (2003-04-03 15:24:00) [5]DDL = Data Definition Language, т.е. код SQL, с помощью которого создана таблица. Только IMHO здесь, судя по сообщению об ошибке, просто синтаксическая ошибка в SQL, с помощью которого вы пытаетесь удалить поле, если точнее, то парсер не может понять, что такое "percent"
Наташа (2003-04-03 15:20:00) [6]Извиняюсь за глупый вопрос, но что такое DDL таблицы?
А удаляю следующим образом
Alter Table List_Order
Drop Percent
y-soft (2003-04-03 15:04:00) [7]Ругается на синтаксическую ошибку, а не из-за нарушения целостности, поэтому ни ХП, ни Foreign Keys, никакие другие объекты базы здесь не виноваты. Ясно же английским языком написано: Token unknown.
Жук (2003-04-03 14:54:00) [8]А как вы удаляете это поле ?
zacho (2003-04-03 14:52:00) [9]Приведи DDL таблицы.