Форум: "Начинающим";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];
ВнизInterbase Interactive SQL Найти похожие ветки
← →
Tatushka © (2006-09-13 15:52) [0]Подскажите пожалуйста, как в ISQL изменить тип поля, и его позицию? Был задан не верный тип поля...
Версия Interbase 5.5.
← →
Сергей М. © (2006-09-13 15:55) [1]
> как в ISQL изменить тип поля
см. ALTER clause
> его позицию
А не по барабану ли она ?
← →
Sergey13 © (2006-09-13 16:01) [2]> Версия Interbase 5.5.
Выкинуть нафиг. По мнению многих уважаемых - самая нестабильная версия. К тому же платная.
← →
Tatushka © (2006-09-13 16:21) [3]
> см. ALTER clause
Т.е.? Где это можно посмотреть?
> А не по барабану ли она ?
Неа. Дальше в реализации проги очень не удобно будет :( т.к. кол-во полей в таблице приличное...
> Выкинуть нафиг. По мнению многих уважаемых - самая нестабильная
> версия. К тому же платная.
К сожалению не могу, а с удовольствием бы... :(
← →
palva © (2006-09-13 16:28) [4]ALTER TABLE TABLE1 ALTER FIELD4 TYPE INTEGER, ALTER FIELD4 POSITION 1;
← →
palva © (2006-09-13 16:29) [5]Номера позиций начинаются с единицы
← →
Sergey13 © (2006-09-13 16:31) [6]> .е.? Где это можно посмотреть?
Так в документации разумеется. Ее можно взять на ibase.ru
> Неа. Дальше в реализации проги очень не удобно будет :(
> т.к. кол-во полей в таблице приличное...
Неудобства не опишешь? Интересно.
> К сожалению не могу, а с удовольствием бы... :(
Кто/что мешает? Ты не говори никому - никто и не узнает. 8-)
← →
Tatushka © (2006-09-13 16:34) [7]Не получается :(
Ругается на второй Alter, типа не узнает и все тут.
← →
Sergey13 © (2006-09-13 16:36) [8]> [7] Tatushka © (13.09.06 16:34)
Ну и сделай за 2 раза.
← →
palva © (2006-09-13 16:40) [9]
> Tatushka © (13.09.06 16:34) [7]
> Не получается :(
> Ругается на второй Alter, типа не узнает и все тут.
Это работает в FireBird 1.5 SQL Dialect 3
← →
Sergey13 © (2006-09-13 16:45) [10]> [7] Tatushka © (13.09.06 16:34)
Тебе это непременно надо в Interbase Interactive SQL? Скачай IBExpert - могучая весчь. И бесплатная.
← →
Tatushka © (2006-09-13 16:51) [11]
> Ну и сделай за 2 раза.
Он ругается на этот: ALTER TABLE TABLE1 ALTER FIELD4 TYPE INTEGER
> Это работает в FireBird 1.5 SQL Dialect 3
Значит у меня ничего не получится? :(
Попробую посмотреть в документации.
← →
Tatushka © (2006-09-13 16:55) [12]
> Тебе это непременно надо в Interbase Interactive SQL? Скачай
> IBExpert - могучая весчь. И бесплатная.
Где это можно скачать?
Вообще мне надо сделать БД, которая бы совмещалась с Interbase 5.5.
С IBExpert это наверно можно будет сделать...
← →
Sergey13 © (2006-09-13 16:58) [13]>Где это можно скачать?
Ты не поверишь - www.ibexpert.com
8-)
← →
Tatushka © (2006-09-13 17:12) [14]
> Ты не поверишь - www.ibexpert.com
> 8-)
Спасибо огромное! :))
И всем большое спасибо, кто откликнулся!
:)
← →
Desdechado © (2006-09-13 22:03) [15]Позиция поля - только для эстетики важна.
А в остальных случаях (SELECT*
FROM) я бы пальцы выдергивал писателям, которые гребут все, вместо того, чтоб перечислить явно нужное. Потому как изменение структуры таблицы приводит к необходимости переделывать все запросы, которые можно было бы часто оставить как есть.
← →
palva © (2006-09-13 22:07) [16]Документация InterBase советует в таких случаях создать новую временную колонку, переместить туда данные из исправляемой колонки, уничтожить эту колонку, переименовать временное поле. Аналогично, для изменения порядка полей можно создать временную таблицу и т. д.
← →
Tatushka © (2006-09-14 09:29) [17]
> изменение структуры таблицы приводит к необходимости переделывать
> все запросы
На данном этапе создается только структура всей БД, и в частности этой таблицы, поэтому соответственно запросов еще никаких не созданно.
> Позиция поля - только для эстетики важна.
В данном случае, это поле, позицию которого необходимо было изменить, находится на самом последнем месте, и при автоматическом заполнении некоторых полей, в том числе и этого, необходимо перечислять все поля. По крайней мере мне только такой известен способ. Возможно существуют и другие...
Все равно спасибо! :)
> для изменения порядка полей можно создать временную таблицу
> и т. д
Самое противное что эта таблица завязана, с другими таблицами и разными триггерами.
Но если уж другого выбора нет, придется выкручиваться каким-то таким способом...
Спасибо за совет!
← →
Sergey13 © (2006-09-14 09:42) [18]> и при автоматическом заполнении некоторых полей, в том
> числе и этого, необходимо перечислять все поля.
И как это связано с позицией поля? Ты по номерам к ним обращаешься что-ли?
← →
Tatushka © (2006-09-14 09:59) [19]
> И как это связано с позицией поля? Ты по номерам к ним обращаешься
> что-ли?
Просто перечисляю по порядку с помощью функции AppendRecord.
Table1.AppendRecord([IDRecord,Table2IDRecord.AsInteger,
Table3IDRecord.AsInteger, ... {поля которые не нужно заполнять} , {последнее поле, которое должно заполняться автоматически});
Поэтому, получается, что для заполнения надо перечислять все поля в таблице...
← →
Sergey13 © (2006-09-14 10:33) [20]> [19] Tatushka © (14.09.06 09:59)
С таким подходом, да еще на таблице с приличным количеством полей, поимеешь ты когда нибудь гемороя.
← →
Tatushka © (2006-09-14 10:41) [21]
> С таким подходом, да еще на таблице с приличным количеством
> полей, поимеешь ты когда нибудь гемороя.
Уже имею... :(
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.012 c