Страница 1 из 2
Русские буквы в названии полей
Добавлено: 20 дек 2006, 13:55
Vetal
Здравствуйте!
случайно в названии полей были добавлены русские буквы... в результате таблица создана но вообще без полей и удалить я ее не могу. Подскажите плиз где искать ответ.
Добавлено: 20 дек 2006, 13:56
Dimitry Sibiryakov
Вообще без полей не бывает. Чем смотришь?
Дропать такие поля надо используя кавычки.
Добавлено: 20 дек 2006, 14:01
Vetal
Смотрю IBExpert 2006/10/14 работаю с Fierbird 2.0 при создании поля появилиь и исчезли... дропнуть талицу нельзя пишет
Arithmetic overflow or division by zero has occurred.
arithmetic exception, numeric overflow, or string truncation.
Cannot transliterate character between character sets.
у меня в настройках Win 1251
Добавлено: 20 дек 2006, 14:22
Vetal
поля не отображаются... таблица пустая а дропнуть ее нельзя блин... НУ посоветуйте...
Добавлено: 20 дек 2006, 14:30
Dimitry Sibiryakov
Брось эту гуевую примочку. Запусти isql. А дальше
Код: Выделить всё
SET NAMES WIN1251;
CONNECT 'localhost:d:\myDB.fdb' USER 'SYSDBA' password 'masterkey';
SHOW TABLES;
DROP TABLE "Моя кривая таблица";
COMMIT;
EXIT;
В-общем, применяй все что вычитал в LangRef.
Добавлено: 20 дек 2006, 15:07
Vetal
ссылку дашь? плиз ... где скачать...
Добавлено: 20 дек 2006, 15:11
Dimitry Sibiryakov
[url]file:///c:/Program%20Files/Firebird/Firebird_1_5/bin/isql.exe[/url]
Добавлено: 20 дек 2006, 15:30
Vetal
спасибо

Добавлено: 20 дек 2006, 16:20
Vetal
чето нифига не получилось сделать я с ним никогда не работал isql ... выдает :
sql> SET NAMES WIN1251
con> //когда здесь начинаю писать никакого ответа чтоб я ни писал всегда "con>" , а правильно я пишу или нет я не знаю. никакой реакции. И удаления таблицы не происходит
Добавлено: 20 дек 2006, 17:04
kdv
ой дикие люди! ой держите меня...
ТОЧКУ С ЗАПЯТОЙ В КОНЦЕ КОМАНДЫ НАДО ВВОДИТЬ!!!
СРОЧНО! НА КУРСЫ!
www.ibase.ru/courses.htm
Добавлено: 20 дек 2006, 17:37
Vetal
после drop таблицы в isql пишет statement failed, SQLCOD=-802
Arithmetic overflow or division by zero has occurred.
arithmetic exception, numeric overflow, or string truncation.
Cannot transliterate character between character sets.
т. е. тоже самое....
Добавлено: 20 дек 2006, 18:07
kdv
значит, придется ковырять метаданные напрямую в системных таблицах.
gbak -b -m проходит? потом рестор только метаданных проходит?
Добавлено: 21 дек 2006, 10:40
Vetal
где об этом можно почитать, если не долго объяснять где и как изменять метаданные то объясните плиз здесь
Добавлено: 21 дек 2006, 12:02
stix-s
Vetal писал(а):где об этом можно почитать, если не долго объяснять где и как изменять метаданные то объясните плиз здесь
имелось в виду проходит ли бэкап-рестор ежели ты в IB Expert к примеру выставишь галку сохранять тока метаданные (при бэкапе).
выгрузи ты лучше данные и метаданные (структуру базы) в скрипты, пересоздай под новым именем и залей
Добавлено: 21 дек 2006, 12:39
Merlin
Вообще-то вьюноше имхо можно только посочувствовать. Как же бакап метаданные-то выгрузит, ежели он их и прочитать-то не может? Мы с тобой наверное расковыряли бы, если б база была в руках, и удалили, но по переписке я не возьмусь - системные таблицы связаны и записи в них идентифицируются именно по наименованиям, а тут надо найти идентифицирующий это поле набор других атрибутов в каждой системной таблице, куда оно могло попасть, да предварительно идентифицировать такой набор, не имея возможности прочитать саму запись в relation_fields и далее по имени. Да и то - не факт что делет пройдёт даже при задании условий по другим полям, хотя тут не уверен. В общем, погорячились где-то в 2-ке с кодировками в системных таблицах, последствия весьма неприятны. Чем помочь наступившему - не знаю.
Добавлено: 21 дек 2006, 13:10
Dimitry Sibiryakov
Пусть создает пустую базу из образцового скрипта и перегоняет данные.
Добавлено: 21 дек 2006, 13:36
stix-s
Merlin писал(а):Вообще-то вьюноше имхо можно только посочувствовать.
Ну, если имеется бэкап до внесения русских буковок, то метаданные можно и с него сдернуть, а данные с изувеченной базы.
Добавлено: 21 дек 2006, 15:01
WildSery
Элементарно.
Выставляешь в коннекте эксперта чарсет UNICODE_FSS, соединяешься с базой, а дальше хочешь поле грохаешь, хочешь всю таблицу.
Добавлено: 21 дек 2006, 15:20
Merlin
В двойке там уже юникод другой системы и вообще кодировки пересмотрены.
Добавлено: 21 дек 2006, 15:30
WildSery
Merlin писал(а):В двойке там уже юникод другой системы и вообще кодировки пересмотрены.
Именно на двойке-то и пробовал, прежде чем советовать - создал поле, эксперт перестал показывать информацию о таблице, переконнектился в юникоде - всё пучком.
Системные таблицы как были UNICODE_FSS, так и остались. А переделанный вроде UTF8 называется.