Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2006.07.09;
Скачать: [xml.tar.bz2];

Вниз

Значение по умолчанию.   Найти похожие ветки 

 
SHD ©   (2006-05-10 11:21) [0]

Вопрос как к созданному полю добавить значение по умолчанию?

Пользуюсь я для управления БД прогой EMS Manager.

Так вот когда я создаю поле, то можно сразу задать значение по умолчанию.
А если поле уже создано то нельзя.

Пытался к созданному полю поставить галочку not null и задать поле по умолчанию. Сервак это сьедает, но по умолчанию всё равно не ставит значение.


 
Desdechado ©   (2006-05-10 11:24) [1]

ALTER TABLE читать в LangRef.pdf
брать с ibase.ru или www.ibphoenix.com


 
SHD ©   (2006-05-10 11:38) [2]

Может домен использовать?


 
Ega23 ©   (2006-05-10 11:44) [3]

default


 
Desdechado ©   (2006-05-10 11:46) [4]

домен, имхо, имеет смысл только для случаев, когда данные имеют одинаковый физический смысл в разных таблицах

галку NOT NULL поставить после создания поля можно только в случае, если данных еще нет или поле в самом деле не пустое во всех записях
иначе получишь невосстановимый бэкап


 
Sergey13 ©   (2006-05-10 11:53) [5]

2[2] SHD ©   (10.05.06 11:38)
>Может домен использовать?
В ИБ ты его по любому используешь. Выбор стоит - подставленный системой автоматически или созданный сознательно программистом.


 
SHD ©   (2006-05-10 11:56) [6]

Вот если новое поле добавлять то команда вот эта и она работает
ALTER TABLE POLES ADD POLES_FLD INTEGER DEFAULT 26;

А если поле уже было создано
ALTER TABLE POLES ADD POLES_FLD INTEGER;

То какую команду нужно дать что бы умолчанию задалось поле???


 
Desdechado ©   (2006-05-10 12:07) [7]

Desdechado ©   (10.05.06 11:24) [1]


 
SHD ©   (2006-05-10 12:26) [8]

Никак не получется. Там написано что ежели нужно сменить тип поля или его кол-во символов или знач по умолчанию нужно менять домен.
Домен у этого поля называется "RDB$104"

запускаю команду
ALTER DOMAIN RDB$104 SET DEFAULT 26

Команда проходит а ничего не меняется. :(


 
Desdechado ©   (2006-05-10 12:42) [9]

изменение таких вещей действительно выполняется через изменение домена (хотя тип можно поменять и легально
ALTER TABLE table <operation> [, <operation> …];
<operation> = {ADD <col_def>
| ADD <tconstraint>
| ALTER [COLUMN] column_name <alt_col_clause>
| DROP col
| DROP CONSTRAINT constraint}
<alt_col_clause> = {TO new_col_name
| TYPE new_col_datatype
| POSITION new_col_position}

)
но после изменения домена (системных таблиц), надо переподключаться к БД


 
SHD ©   (2006-05-10 12:56) [10]

>>хотя тип можно поменять и легально
Тип то я менял, всё проходило. Но мне нужно просто поставить значение по умолчанию.

>>но после изменения домена (системных таблиц), надо переподключаться к БД
Пробывал, даже сервак перезапускал, не помогает.


 
Desdechado ©   (2006-05-10 13:00) [11]

попробуй IBExpert, у него есть нормальное интерактивное средство для этих целей
причем рабочее


 
SHD ©   (2006-05-10 14:23) [12]

>> Desdechado ©   (10.05.06 13:00) [11]
Если ты не знаешь ответ просто промолчи.
Какая разница что я использую.
и вообще то SQL Manager 2005 for InterBase and Firebird на данный момент считается лучшей.

>> SHD ©   (10.05.06 11:21)
Пытался к созданному полю поставить галочку not null и задать поле по умолчанию. Сервак это сьедает, но по умолчанию всё равно не ставит значение.
Это он спрашивал для уже введённых данных сменить.

А вот для новых дефаулт так и не ставит.
Пока только добавив и удалив поле получилось :(


 
Mike Kouzmine ©   (2006-05-10 14:50) [13]

SHD ©   (10.05.06 14:23) [12]
>> Desdechado ©   (10.05.06 13:00) [11]
Если ты не знаешь ответ просто промолчи.

Боюсь после этого спича тебе никто больше отвечать не будет


 
SHD ©   (2006-05-10 14:58) [14]

Извинияюсь. Просто сами поймите форум создан не для того что бы посылать на книжки, текстовики или проги.
 Если человек знает он напишет, а если нет...


 
Mike Kouzmine ©   (2006-05-10 15:13) [15]

SHD ©   (10.05.06 14:58) [14] Просто сами поймите форум создан не для того что бы посылать на книжки, текстовики или проги.
Если человек знает он напишет, а если нет...

Это где написано? Ты не прав.


 
Desdechado ©   (2006-05-10 15:56) [16]

> на данный момент считается лучшей
Дело твое.
Я использую то, что работает так, как мне нужно, а не то, что считается лучшим.
И не факт, что "лучшее" (и кто его решил, что оно лучшее?) делает всё и так, как мне того хочется.
И если я посоветовал, то это из своего опыта. А из твоего опыта вижу, что у тебя не работает.
Ну, делай выводы, если умеешь.



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

Форум: "Базы";
Текущий архив: 2006.07.09;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.009 c
15-1149690012
Iehbr
2006-06-07 18:20
2006.07.09
Как Вы относитесь к спаму на "физические" почтовые ящики?


10-1121666630
Mefodiy
2005-07-18 10:03
2006.07.09
NumberFormat не срабатывает


2-1150881191
Dmitrij_K
2006-06-21 13:13
2006.07.09
Номер выделенной строки в StringGrid


1-1148300012
Schooler
2006-05-22 16:13
2006.07.09
Как правильно реализовать эффект


15-1149861807
Vlad
2006-06-09 18:03
2006.07.09
Сходства не находите? :-)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский