Страница 1 из 1

Большие и маленькие буквы в названиях обьектов

Добавлено: 30 мар 2005, 14:14
windsurfer_ua
База Firebird 1.5. Прочитал в FAQ что в 3 диалекте необязательно использование двойных кавычек в названиях обектов. Но если только сделаю запрос без кавычек (например Select * from my_table) выдает TABLE unknown MY_TABLE. Тоесть название полюбому автоматически приводится в верхний регистр. Как этого избежать. Я импортировал довольно большую базу из Accessa и влом перебивать все назнавания таблиц и полей (а может есть способ это сделать автоматом?). А все время писать в кавычках неохота.

Добавлено: 30 мар 2005, 14:52
DSKalugin
Если при создании объектов БД указывал их имена в кавычках с разным регистром
то и вызывай в кавычках

Или если не устраивает, пересоздай все объекты без кавычек

Добавлено: 30 мар 2005, 16:40
windsurfer_ua
DSKalugin писал(а):Если при создании объектов БД указывал их имена в кавычках с разным регистром
то и вызывай в кавычках

Или если не устраивает, пересоздай все объекты без кавычек
Можно ли как-то переименовать таблицы без потери данных?

Добавлено: 30 мар 2005, 17:06
DSKalugin
Конечно

1-но это мучительно, если много зависимостей

а-через промежуточное поле

Alter table TTT add tmpField VarChar(32);
update TTT set tmpField="curField";
alter table TTT drop "curField";
Alter table TTT add curField VarChar(32);
update TTT set curField=tmpField;

б-Alter table TTT ALTER "curField" TO curField

2 заменой в текстовом файле, если база не очень большая

выгрузить всю базу (с метаданными и данными) в срипт создания базы, а дальше открыть его в редакторе и воспользоваться функциями типа РеплэйсТекст "curField"->curField

Добавлено: 30 мар 2005, 17:46
windsurfer_ua
DSKalugin писал(а):Конечно

1-но это мучительно, если много зависимостей

а-через промежуточное поле

Alter table TTT add tmpField VarChar(32);
update TTT set tmpField="curField";
alter table TTT drop "curField";
Alter table TTT add curField VarChar(32);
update TTT set curField=tmpField;

б-Alter table TTT ALTER "curField" TO curField

2 заменой в текстовом файле, если база не очень большая

выгрузить всю базу (с метаданными и данными) в срипт создания базы, а дальше открыть его в редакторе и воспользоваться функциями типа РеплэйсТекст "curField"->curField
Супер. Способ б мне понравился. Большое списибо.
Только для mysql я знаю как это сделать. Может подскажете как это сделать для Interbase'a?

Добавлено: 30 мар 2005, 18:15
DSKalugin
windsurfer_ua писал(а): Только для mysql я знаю как это сделать. Может подскажете как это сделать для Interbase'a?
:shock: :shock: :shock:
Кто из нас тормоз?
Разве я упомянал где-либо слово mysql???
Все сказанное относится именно к Interbase и FireBird
windsurfer_ua писал(а): Я импортировал довольно большую базу из Accessa
Следующий раз при экспорте правильно опции выбирай относительно диалекта и всего что с этим связано, если пользуешься не своей программой

Добавлено: 30 мар 2005, 18:44
Merlin
DSKalugin писал(а): :shock: :shock: :shock:
Кто из нас тормоз?
Не сердись, в этот раз я уже с искренним сочувствием, но начни уже читать вопросы :-D Бузина... Дядька... Таблица... Поле... :-D

Добавлено: 30 мар 2005, 19:38
DSKalugin
Merlin писал(а):
DSKalugin писал(а): :shock: :shock: :shock:
Кто из нас тормоз?
Не сердись, в этот раз я уже с искренним сочувствием, но начни уже читать вопросы :-D Бузина... Дядька... Таблица... Поле... :-D
:lol: :lol: :lol:
Выходит, опять тормоз - Я! :lol:
Надо пойти выспаться, ночное кодирование меня доканывает

Добавлено: 31 мар 2005, 10:04
windsurfer_ua
DSKalugin писал(а):
windsurfer_ua писал(а): Кто из нас тормоз?
Разве я упомянал где-либо слово mysql???
Все сказанное относится именно к Interbase и FireBird
Никто из нас не тормоз. Имелось ввиду что я незнаю как в FireBIRD слить дамп базы (DDL+ данные в текстовый файл). Какой инструмент надо использовать. На MYSQL я так делал с помощьо MyPHPAdmin, теперь перешел на FIREBIRD и не знаю как это сделать. Подскажите плиз.

Добавлено: 31 мар 2005, 11:52
DSKalugin
windsurfer_ua писал(а):
DSKalugin писал(а): Кто из нас тормоз?
Никто из нас не тормоз.
Вопрос закрыт. Мерлин его четко прояснил :roll:

Стоп! Давай разберемся. Когда ты просматриваешь структуру базы, имена объектов в двойных кавычках или нет?

Используй программу IBExpert.com для администрирования и разработки ФБ/ИБ. Она же позволит тебе выгрузить базу в скрипт.
Меню Инструменты->Извлечение метаданных

Добавлено: 31 мар 2005, 14:07
windsurfer_ua
Стоп! Давай разберемся. Когда ты просматриваешь структуру базы, имена объектов в двойных кавычках или нет?

Используй программу IBExpert.com для администрирования и разработки ФБ/ИБ. Она же позволит тебе выгрузить базу в скрипт.
Меню Инструменты->Извлечение метаданных
Все разобрался.
Да когда просматириваю структуру в IBExpert - все что маленеькими буквами - все в кавычках.
Выгрузил через IBEXPERT в текстовик, поменял все на большие буквы, и теперь все ок.
Спасибо всем!

2 Merlin

Добавлено: 31 мар 2005, 14:39
DSKalugin
2 Merlin

Выходит вопрос я понял правильно и ответил тоже правильно!
Вопрос о том кто тормозит снова объявляю открытым :D

Добавлено: 31 мар 2005, 14:46
Merlin
Ты ответил не на первый вопрос. А на следующий - ну вот, таблицы я пересоздал без кавычек, ы що мне теперь делать с полями в кавычках? :lol:

Добавлено: 31 мар 2005, 15:00
DSKalugin
блин, тока попадись мне в темном переулке, Мерлин!
впаймаю и напою пивом до поросячего визга,
чтобы не придерался :lol: