|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.03.2009, 03:06 | #1 |
Форумчанин
Регистрация: 09.09.2008
Сообщений: 418
|
Как изменить в InterBase размер поля varchar(10) на varchar(20)
Когда создавалась таблица (interbase) полю было присвоено свойство varchar и длина 10 (pole1 varchar(10)), затем понадобилось занести в это поле значение, длина которого больше 10 символов, как это сделать помогите пожалуйста. Думаю alter table MyTable... а дальше не знаю...
|
22.03.2009, 10:18 | #2 |
Новичок
Джуниор
Регистрация: 25.02.2009
Сообщений: 1
|
alter table <имя таблицы > modify pole1 varchar (20)
|
22.03.2009, 14:25 | #3 |
SQL-коддинг
Участник клуба
Регистрация: 16.01.2009
Сообщений: 1,192
|
в интербейзе нет такого оператора modify (в оракле да, без проблем)
если есть желание разобраться как изменить описалово поля, то рекомендую качнуть IBExpert (для русских полнейшая и законная халява), создать в нем алиас на интересующую БД и попробовать там в описании таблицы поменять размер строкового поля - в итоге сгенерится ДДЛ ваще-то в ИБ все описания полей хранятся в доменах, соотвественно, для изменения поля требуется изменить домен первый вариант: через "третий карман" - создаешь новое временное поле (my_field_tmp varchar(20)) с новым описанием поля, копируешь туда данные из старого поля (my_field). После проверки целостности копирования убиваешь старое поле (my_field), создаешь новое поле со старым названием (my_field varchar(20)) с новым описанием и копируешь туда данные из временного поля (my_field_tmp). После проверки целостности копирования убиваешь временное поле (my_field_tmp). второй вариант: еще добавлю, что нижеописанный апдейт затрагивает системную инфу и им нужно пользоваться осторожно - чо-нить напутаешь и прощай база. Код:
Последний раз редактировалось soleil@mmc; 22.03.2009 в 14:39. |
22.03.2009, 15:24 | #4 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
То tarakan1983
Вы можете модифицировать размер поля одной строкой: ALTER TABLE MYTABLE ALTER POLE1 TYPE VARCHAR(20); Последний раз редактировалось mihali4; 22.03.2009 в 16:01. |
23.03.2009, 15:35 | #5 | |
Форумчанин
Регистрация: 09.09.2008
Сообщений: 418
|
Цитата:
Unsuccessful metadata update key size exceeds implementation restriction for index "MYTABLE_INDEX1" буду пробовать способ 1 soleil@mmc Последний раз редактировалось tarakan1983; 23.03.2009 в 20:28. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Можно ли сделать SUM данных таблицы с типом varchar? | xxxsas | SQL, базы данных | 4 | 24.01.2009 22:42 |
varchar to blob in phpmyadmin | Alar | SQL, базы данных | 0 | 11.01.2009 07:14 |
Как изменить размер Видео | PilGrim | Компоненты Delphi | 1 | 19.11.2007 23:03 |
Как изменить размер рабочего стола? | Legat | Win Api | 5 | 26.10.2007 17:17 |
Как изменить размер поля БД | Алёна | БД в Delphi | 5 | 07.05.2007 10:06 |