Создание и оптимизация SQLite базы данных
Budget: $10 – $30 USD
Техническое задание: Импорт CSV в SQLite с корректной кодировкой
Цель
Создать базу данных karaoke.db в DB Browser for SQLite и импортировать файл songs.csv с корректным отображением кириллицы и других языков (русский, английский, немецкий, итальянский и др.) для Telegram-бота "Karaoke Absolutis".
Описание проблемы
Есть файл songs.csv с колонками id, artist, title, language, venue_id.
Данные в songs.csv корректно отображаются в Notepad++ (UTF-8), например: 33,Badesalz,Alles Gute,de,1, 1,Григорий Лепс,Рюмка водки,ru,1.
При импорте в DB Browser for SQLite в таблице songs кириллица отображается как ������ вместо, например, "Григорий Лепс".
Таблица songs нужна для поиска песен в боте ("/search Лепс Рюмка водки") ролями 3 (VIP-клиенты) и 4 (простые клиенты).
Требования
Создание базы данных:
Создать базу karaoke.db в DB Browser for SQLite.
Создать таблицу songs с колонками:
id: INTEGER, Primary Key, Auto Increment.
artist: TEXT, Not Null.
title: TEXT, Not Null.
language: TEXT, Not Null (например, ru, en, de, it).
venue_id: INTEGER, Not Null.
Импорт songs.csv:
Импортировать songs.csv в таблицу songs с кодировкой UTF-8.
Убедиться, что кириллица (например, "Григорий Лепс", "Рюмка водки"), немецкие умляуты (например, "Alles Gute") и другие языки отображаются корректно.
Проверка:
В DB Browser for SQLite во вкладке "Browse Data" проверить, что данные читаемы (без ������).
Выполнить тестовый SQL-запрос: SELECT * FROM songs WHERE artist LIKE '%Лепс%' OR title LIKE '%Рюмка%'; и убедиться, что возвращаются корректные строки.
Дополнительно:
Проверить, что id уникальны (без повторов, например, id=3 для разных песен).
Если в songs.csv есть ошибки (например, пустые artist или неверные language, такие как AR вместо IT), указать их и предложить исправления.
Исходные данные
Файл songs.csv предоставляется заказчиком (пример строки: 33,Badesalz,Alles Gute,de,1).
Проблемные строки могут включать:
Дубли id (например, id=3 для разных песен).
Пустые artist или title.
Неверные коды языка (например, AR вместо IT).
Таблица должна поддерживать поиск в боте по artist, title, language, venue_id.
Результат
База karaoke.db с таблицей songs, содержащей корректные данные.
Отчёт о проблемах в songs.csv (если есть) и как они исправлены.
Скриншот вкладки "Browse Data" с читаемой кириллицей (например, "Григорий Лепс").
Подтверждение, что запрос SELECT * FROM songs WHERE id = 33 AND artist = 'Badesalz' AND title = 'Alles Gute' AND language = 'de' AND venue_id = '1'; возвращает строку.
Цель
Создать базу данных karaoke.db в DB Browser for SQLite и импортировать файл songs.csv с корректным отображением кириллицы и других языков (русский, английский, немецкий, итальянский и др.) для Telegram-бота "Karaoke Absolutis".
Описание проблемы
Есть файл songs.csv с колонками id, artist, title, language, venue_id.
Данные в songs.csv корректно отображаются в Notepad++ (UTF-8), например: 33,Badesalz,Alles Gute,de,1, 1,Григорий Лепс,Рюмка водки,ru,1.
При импорте в DB Browser for SQLite в таблице songs кириллица отображается как ������ вместо, например, "Григорий Лепс".
Таблица songs нужна для поиска песен в боте ("/search Лепс Рюмка водки") ролями 3 (VIP-клиенты) и 4 (простые клиенты).
Требования
Создание базы данных:
Создать базу karaoke.db в DB Browser for SQLite.
Создать таблицу songs с колонками:
id: INTEGER, Primary Key, Auto Increment.
artist: TEXT, Not Null.
title: TEXT, Not Null.
language: TEXT, Not Null (например, ru, en, de, it).
venue_id: INTEGER, Not Null.
Импорт songs.csv:
Импортировать songs.csv в таблицу songs с кодировкой UTF-8.
Убедиться, что кириллица (например, "Григорий Лепс", "Рюмка водки"), немецкие умляуты (например, "Alles Gute") и другие языки отображаются корректно.
Проверка:
В DB Browser for SQLite во вкладке "Browse Data" проверить, что данные читаемы (без ������).
Выполнить тестовый SQL-запрос: SELECT * FROM songs WHERE artist LIKE '%Лепс%' OR title LIKE '%Рюмка%'; и убедиться, что возвращаются корректные строки.
Дополнительно:
Проверить, что id уникальны (без повторов, например, id=3 для разных песен).
Если в songs.csv есть ошибки (например, пустые artist или неверные language, такие как AR вместо IT), указать их и предложить исправления.
Исходные данные
Файл songs.csv предоставляется заказчиком (пример строки: 33,Badesalz,Alles Gute,de,1).
Проблемные строки могут включать:
Дубли id (например, id=3 для разных песен).
Пустые artist или title.
Неверные коды языка (например, AR вместо IT).
Таблица должна поддерживать поиск в боте по artist, title, language, venue_id.
Результат
База karaoke.db с таблицей songs, содержащей корректные данные.
Отчёт о проблемах в songs.csv (если есть) и как они исправлены.
Скриншот вкладки "Browse Data" с читаемой кириллицей (например, "Григорий Лепс").
Подтверждение, что запрос SELECT * FROM songs WHERE id = 33 AND artist = 'Badesalz' AND title = 'Alles Gute' AND language = 'de' AND venue_id = '1'; возвращает строку.