Как исправить этот кусок кода в Python, SQLite и XML - PullRequest
0 голосов
/ 23 марта 2019

Этот код считывает данные из файлов XML и заполняет базу данных SQLite.Сначала заполняется таблица Жанр, а в конце таблицы треки.Проблема в том, что мне нужен код для заполнения поля traks.genre_id, извлекающего идентификатор из таблицы жанров при чтении данных из файла XML.

Все данные получены из файла XML, кроме genre_idэто происходит из таблицы с именем Genre.

В следующем коде обратите внимание на вложенный cur.execute, это просто для иллюстрации того, что я пытаюсь сделать.Я удалил внутренний cur.execute, оставив оператор select, но он не сработал.

cur.execute('''INSERT OR REPLACE INTO Track
    (title, album_id, genre_id, len, rating, count) 
    VALUES ( ?, ?, ?, ?, ?, ? )''', 
    ( name, album_id, cur.execute('''SELECT id FROM Genre WHERE name = ? ', (genre, )''',length, rating, count ) )

Ожидаемый результат будет genre_id = SELECT id FROM Genre WHERE name =?', (genre,).

Все данные поступают из файла XML, за исключением genre_id, который поступает из таблицы с именем Genre.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...