Bug 45856 - Некорректное поведение при названии Имени поля в LibreOffice base
Summary: Некорректное поведение при названии Имени поля в LibreOffice base
Status: NEW
Alias: None
Product: Sisyphus
Classification: Development
Component: LibreOffice-still (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Andrey Cherepanov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-04-13 17:52 MSK by Pavel Shilov
Modified: 2023-04-13 17:52 MSK (History)
1 user (show)

See Also:


Attachments
screen (90.84 KB, image/png)
2023-04-13 17:52 MSK, Pavel Shilov
no flags Details
Ошибка при сохранении (70.25 KB, image/png)
2023-04-13 17:52 MSK, Pavel Shilov
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Pavel Shilov 2023-04-13 17:52:09 MSK
Created attachment 12958 [details]
screen

Произвел тестирование на платформах обновленных до Сизифа:
* alt-education-10.1-x86-64
* alt-education-10.1-x86-64-kde
* alt-kworkstation-10.1-x86-64
* alt-server-10.1-x86-64
* alt-workstation-10.1-x86-64

Версия пакетов:
* LibreOffice-sdk-7.5.1.1-alt1.x86_64
* LibreOffice-extensions-7.5.1.1-alt1.x86_64
* LibreOffice-langpack-ru-7.5.1.1-alt1.x86_64
* LibreOffice-common-7.5.1.1-alt1.x86_64
* LibreOffice-gtk3-7.5.1.1-alt1.x86_64
* LibreOffice-integrated-7.5.1.1-alt1.x86_64

1 Первичная настройка 
# apt-get remove mariadb-server
# rm -rf /var/lib/mysql
# apt-get install mariadb-server
# control mysqld server
# systemctl enable --now mysqld
# mysql << EOF
CREATE DATABASE movies;
USE movies ;
CREATE TABLE Actors (ActorId INT NOT NULL AUTO_INCREMENT, ActorName VARCHAR(255) NOT NULL, PRIMARY KEY (ActorId));
EOF


2 Установка необходимые компоненты и создать тестовую базу:
# apt-get install mariadb-server mysql-connector-java -y && control mysqld server && systemctl enable --now mysqld && sleep 5 && mysql << EOF
CREATE DATABASE movies;
USE movies ;
CREATE TABLE Actors (ActorId INT NOT NULL AUTO_INCREMENT, ActorName VARCHAR(255) NOT NULL, PRIMARY KEY (ActorId));
EOF

3 Настройка LibreOffice:
* Сервис - Параметры - Расширенные возможности - Путь класса...
* Добавить архив... - /usr/share/java/mysql-connector-java.jar - Открыть. - ОК - ОК
* Перезапустить LibreOffice.
* Создать базу данных:
1. Файл -> Создать -> Базу данных
2. Выбор базы данных - Соединиться с существующей базой данных - MySQL - Далее.
3. Соединение через JDBC.
4. Имя базы данных: movies
   Сервер: localhost
   Порт: 3306
* Класс драйвера MySQL JDBC - com.mysql.jdbc.Driver - Нажать Тест класса.
* Настройка аутентификации пользователей
   Имя пользователя: root
   Оставить пустым поле Требуется пароль
   Тест подключения.
* Сохранить и выполнить - Готово - Сохранить базу данных.

4 Нажать Создать таблицу в режиме дизайна
5 Нажать ПКМ по Имя поля -> Вставить Emoji

Ожидаемый результат:
Подменю Вставить Emoji неактивно

Фактический результат:
Есть возможность вставить смайлик в название столбца, при сохранении таблицы выводится ошибка 
Состояние SQL: HY000
Код ошибки: 1300
Invalid utf8mb3 character string: '\xF0\x9F\x98\x80\xEF\xB8\x8F' at /usr/src/RPM/BUILD/libreoffice-7.4.2.3/connectivity/source/drivers/jdbc/Object.cxx:173
Comment 1 Pavel Shilov 2023-04-13 17:52:45 MSK
Created attachment 12959 [details]
Ошибка при сохранении