Я импортирую таблицу из LibreOffice Cal c в новую встроенную базовую базу данных Libreoffice. Я выбираю данные, копирую и вставляю их, появляется мастер, и я выбираю использовать первую строку в качестве имен столбцов.
Затем я выбираю все поля и перехожу к третьему шагу мастера импорта. Я могу щелкнуть правой кнопкой мыши свое поле ID и сделать его первичным ключом, хорошо. Проблема в том, что если я установил типы данных поля на что-либо кроме double или varchar, импорт завершится с ошибкой «неправильный тип для settring». Я хочу использовать целочисленные типы и типы дат - как мне их импортировать?
Если я оставлю все поля в double или varchar и попытаюсь отредактировать таблицу позже, это не позволит мне изменить типы данных. Та же проблема, если я сначала определю таблицу, а затем добавлю записи.
Это было бы легко, если бы я создавал новую базу данных с нуля, но у меня есть много существующих записей для импорта. Мне нужно сохранить ключи, чтобы установить отношения с другими таблицами.
Я пробовал встроить HSQLDB и firebird.
Эта ошибка не позволяет мне отказаться от Microsoft Access в пользу базы libreoffice. Кто-нибудь может предложить обходной путь?
Редактировать
Спасибо, Джим К., за ваш ответ, это решает половину проблемы.
Я нашел два проблемных столбца c - поле даты и логическое поле. Хотя Cal c действительно понимает, что мое поле даты является датой, происходит сбой импорта в Base, как описано. Затем я велел Cal c отображать дату в формате YYYY-MM-DD, и импорт в Base работал отлично.
Следующая проблема - логическое (ДА / НЕТ) поле. Пустая ячейка в Cal c импортирует OK как логическое значение false. Все остальное, что я пробовал - ДА, НЕТ, ИСТИНА, ЛОЖЬ, 1, 0 - все вылетало при импорте в базу с сообщением об ошибке «неверный тип для settring».