Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Interbase Interactive SQL [D5, XP]


Страницы:   1 2

Tatushka ©   (2006-09-13 15:52:00) 

Подскажите пожалуйста, как в ISQL изменить тип поля, и его позицию? Был задан не верный тип поля...
Версия Interbase 5.5.


Tatushka   (2006-09-14 10:41:00) [1]


> С таким подходом, да еще на таблице с приличным количеством
> полей, поимеешь ты когда нибудь гемороя.

Уже имею... :(


Sergey13   (2006-09-14 10:33:00) [2]

> [19] Tatushka ©   (14.09.06 09:59)

С таким подходом, да еще на таблице с приличным количеством полей, поимеешь ты когда нибудь гемороя.


Tatushka   (2006-09-14 09:59:00) [3]


> И как это связано с позицией поля? Ты по номерам к ним обращаешься
> что-ли?

Просто перечисляю по порядку с помощью функции AppendRecord.

Table1.AppendRecord([IDRecord,Table2IDRecord.AsInteger,
            Table3IDRecord.AsInteger, ... {поля которые не нужно заполнять} , {последнее поле, которое должно заполняться автоматически});

Поэтому, получается, что для заполнения надо перечислять все поля в таблице...


Sergey13   (2006-09-14 09:42:00) [4]

> и при автоматическом заполнении некоторых полей, в том
> числе и этого, необходимо перечислять все поля.

И как это связано с позицией поля? Ты по номерам к ним обращаешься что-ли?


Tatushka   (2006-09-14 09:29:00) [5]


> изменение структуры таблицы приводит к необходимости переделывать
> все запросы

На данном этапе создается только структура всей БД, и в частности этой таблицы, поэтому соответственно запросов еще никаких не созданно.

> Позиция поля - только для эстетики важна.

В данном случае, это поле, позицию которого необходимо было изменить, находится на самом последнем месте, и при автоматическом заполнении некоторых полей, в том числе и этого, необходимо перечислять все поля. По крайней мере мне только такой известен способ. Возможно существуют и другие...
Все равно спасибо! :)


> для изменения порядка полей можно создать временную таблицу
> и т. д

Самое противное что эта таблица завязана, с другими таблицами и разными триггерами.
Но если уж другого выбора нет, придется выкручиваться каким-то таким способом...
Спасибо за совет!


palva   (2006-09-13 22:07:00) [6]

Документация InterBase советует в таких случаях создать новую временную колонку, переместить туда данные из исправляемой колонки, уничтожить эту колонку, переименовать временное поле. Аналогично, для изменения порядка полей можно создать временную таблицу и т. д.


Desdechado   (2006-09-13 22:03:00) [7]

Позиция поля - только для эстетики важна.
А в остальных случаях (SELECT *FROM) я бы пальцы выдергивал писателям, которые гребут все, вместо того, чтоб перечислить явно нужное. Потому как изменение структуры таблицы приводит к необходимости переделывать все запросы, которые можно было бы часто оставить как есть.


Tatushka   (2006-09-13 17:12:00) [8]


> Ты не поверишь - www.ibexpert.com
> 8-)

Спасибо огромное! :))

И всем большое спасибо, кто откликнулся!
:)


Sergey13   (2006-09-13 16:58:00) [9]

>Где это можно скачать?
Ты не поверишь - www.ibexpert.com
8-)


Tatushka   (2006-09-13 16:55:00) [10]


> Тебе это непременно надо в Interbase Interactive SQL? Скачай
> IBExpert - могучая весчь. И бесплатная.

Где это можно скачать?
Вообще мне надо сделать БД, которая бы совмещалась с Interbase 5.5.
С IBExpert это наверно можно будет сделать...


Tatushka   (2006-09-13 16:51:00) [11]


> Ну и сделай за 2 раза.

Он ругается на этот: ALTER TABLE TABLE1 ALTERFIELD4 TYPE INTEGER


> Это работает в FireBird 1.5 SQL Dialect 3

Значит у меня ничего не получится? :(

Попробую посмотреть в документации.


Sergey13   (2006-09-13 16:45:00) [12]

> [7] Tatushka ©   (13.09.06 16:34)

Тебе это непременно надо в Interbase Interactive SQL? Скачай IBExpert - могучая весчь. И бесплатная.


palva   (2006-09-13 16:40:00) [13]


> Tatushka ©   (13.09.06 16:34) [7]
> Не получается :(
> Ругается на второй Alter, типа не узнает и все тут.


Это работает в FireBird 1.5 SQL Dialect 3


Sergey13   (2006-09-13 16:36:00) [14]

> [7] Tatushka ©   (13.09.06 16:34)

Ну и сделай за 2 раза.


Tatushka   (2006-09-13 16:34:00) [15]

Не получается :(
Ругается на второй Alter, типа не узнает и все тут.


Sergey13   (2006-09-13 16:31:00) [16]

> .е.? Где это можно посмотреть?

Так в документации разумеется. Ее можно взять на ibase.ru

> Неа. Дальше в реализации проги очень не удобно будет :(
> т.к. кол-во полей в таблице приличное...

Неудобства не опишешь? Интересно.

> К сожалению не могу, а с удовольствием бы... :(

Кто/что мешает? Ты не говори никому - никто и не узнает. 8-)


palva   (2006-09-13 16:29:00) [17]

Номера позиций начинаются с единицы


palva   (2006-09-13 16:28:00) [18]

ALTER TABLE TABLE1 ALTER FIELD4 TYPE INTEGER, ALTER FIELD4 POSITION 1;


Tatushka   (2006-09-13 16:21:00) [19]


> см. ALTER clause

Т.е.? Где это можно посмотреть?


> А не по барабану ли она ?

Неа. Дальше в реализации проги очень не удобно будет :( т.к. кол-во полей в таблице приличное...


> Выкинуть нафиг. По мнению многих уважаемых - самая нестабильная
> версия. К тому же платная.

К сожалению не могу, а с удовольствием бы... :(


Sergey13   (2006-09-13 16:01:00) [20]

> Версия Interbase 5.5.

Выкинуть нафиг. По мнению многих уважаемых - самая нестабильная версия. К тому же платная.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо