Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.13;
Скачать: CL | DM;

Вниз

Можно ли изменить длинну поля, не потеряв данные в этом поле   Найти похожие ветки 

 
Term ©   (2003-10-22 10:55) [0]

Можно ли изменить длинну поля, не потеряв данные в этом поле, если можно то как?


 
bushmen ©   (2003-10-22 10:58) [1]

Не знаю, как в IB, но в MSSQL если ты увеличиваешь длину поля или преобразуешь в другой тип, то ничего не теряешь. Если невозможно преобразовать - выдается ошибка, что есть данные, не соотвктствующие критерию. Ничего не теряется


 
Term ©   (2003-10-22 11:04) [2]

а как это сделать
я знаю как добавить новое поле:
ALTER TABLE < >
ADD < > < >;

а какой командой поменять тип поля???


 
bushmen ©   (2003-10-22 11:10) [3]

alter table <имя таблицы> alter column <имя столбца> <новый тип>


 
Johnmen ©   (2003-10-22 11:16) [4]

Через создание временного поля...


 
Term ©   (2003-10-22 11:16) [5]

сделал так:
ALTER TABLE STUDENTS
alter column FORMA_OBUCH VARCHAR(10);


получил это:

Dynamic SQL Error
SQL error code = -104
Token unknown - line 2, char 26
VARCHAR
Statement: ALTER TABLE STUDENTS
alter column FORMA_OBUCH VARCHAR(10)

в чом проблема??? я чтото непонял, почему на VARCHAR ругается??


 
bushmen ©   (2003-10-22 11:17) [6]

>Token unknown - line 2, char 26
VARCHAR

У тебя запись во второй строчки имеет длину поля 26 символов - я предупреждал, что меняется на большее !


 
Johnmen ©   (2003-10-22 11:20) [7]

Твоя проблема в нежелании прочитать хелп на ALTER TABLE


 
Term ©   (2003-10-22 11:20) [8]

так я и меняю на болшее была длинна 6 символов хочу сделать 10...
или я чтото недопонял...


 
Johnmen ©   (2003-10-22 11:22) [9]

>bushmen © (22.10.03 11:10)

Откуда взят такой синтаксис ?


 
Кщд   (2003-10-22 11:23) [10]

так тоже не идёт?
update RDB$FIELDS set
RDB$FIELD_LENGTH = M,
RDB$CHARACTER_LENGTH = M
where RDB$FIELD_NAME = "RDB$N"
где M - кол-во символов, N - внутренний номер домена IB


 
Term ©   (2003-10-22 11:24) [11]


> Johnmen © (22.10.03 11:20) [7]
> Твоя проблема в нежелании прочитать хелп на ALTER TABLE

у меня нет хелпа по SQL, а в книге только ADD


 
bushmen ©   (2003-10-22 11:24) [12]

>Откуда взят такой синтаксис ?

Я в первом своем сообщении писал - MS SQL, тут может и не прокатить - я предупреждал :)


 
Johnmen ©   (2003-10-22 11:27) [13]

>Term © (22.10.03 11:24)

Special for you:

Пуск->Программы->InterBase->Documentation->SQL Reference Help


 
Term ©   (2003-10-22 11:32) [14]


> Кщд (22.10.03 11:23) [10]
> так тоже не идёт?
> update RDB$FIELDS set
> RDB$FIELD_LENGTH = M,
> RDB$CHARACTER_LENGTH = M
> where RDB$FIELD_NAME = "RDB$N"
> где M - кол-во символов, N - внутренний номер домена IB

помогло!!!
ВСЕМ СПАСИБО :)))


 
Johnmen ©   (2003-10-22 11:39) [15]

Все, кто лазит без крайней нужды в системные таблицы, к тому же особенно не вникая в суть, рано или поздно будет иметь большие проблемы.
С которыми и придет сюда...:)


 
Кщд   (2003-10-22 11:42) [16]

проблемы будут
люди придут
всё - чистая правда
рву волосы, ухожу в монастырь :)


 
kaif ©   (2003-10-22 13:40) [17]

Нужно было чуть-чуть больше терпения проявить:

ALTER TABLE STUDENTS
alter column FORMA_OBUCH TYPE VARCHAR(10);

Колонка меняет тип и все данные сохраняются. Согласен с Johnmen - в системные таблицы лазить с апдейтами нужно в очень редких случаях


 
stud ©   (2003-10-22 14:02) [18]


> Johnmen © (22.10.03 11:39) [15]

золотые слова)))



Страницы: 1 вся ветка

Текущий архив: 2003.11.13;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.023 c
3-40791
Митяй
2003-10-22 15:15
2003.11.13
БД не сохраняет записи?????


14-42002
Soft
2003-10-17 04:26
2003.11.13
Игры... которые убивают.


3-40939
AndreyAs
2003-10-17 10:43
2003.11.13
Слить два dataset а


1-41413
Yuri Btr
2003-10-29 17:02
2003.11.13
Вопрос по FloattoStrF


7-42164
M@D
2003-09-01 22:53
2003.11.13
Shutdown XP