Тема: Запис змінної в базу!

Доброго всім дня. Завдання таке необхідно записати змінну b = ('445.011', '423.011') class 'tuple'. В стовпчик Nom. При записі одного значення все добре, при записі декількох значень виникає ось така помилка not all arguments converted during string formatting. Підкажіть як виправити цю помилку та правильно записати цю змінну.
ДБ- 10.0.35-MariaDB
Програми пишу на Python.

import MySQLdb
#with open('201903291.txt') as f: 
    #for line in f: 
        #val1, val2 = line.split()
        #val1, val2 = line.strip().split()
        #print(val1); print(val2)
with open('201903291.txt', 'r') as f:
    content=[s.split() for s in f]
    a, b=zip(*content)
    print(a); print(b)
 
conn = MySQLdb.connect(host='0.0.0.0',
                             user='user',
                             password='password',                             
                             db='db')

cursor = conn.cursor()
cursor.execute("INSERT INTO Dozu (Nom) VALUES ('%s')" %b)

conn.commit()
conn.close()

Дякую.

2

Re: Запис змінної в базу!

INSERT INTO Таблиця[(стовпчик, стопчик, ...)] VALUES (значення, значення, ....), (значення, значення, ....), ...

Або в циклі по одному.

3

Re: Запис змінної в базу!

це не варіант, мені потрібно записати змінну в один стовпчик. І в мене проблема з аргументами подивіться будь-ласка проблему.

4

Re: Запис змінної в базу!

Я подивився. Це ви не можете від загального до простого прийти. Вам треба робити запит

INSERT INTO Dozu (Nom) VALUES (Значення), (Значення), (Значення)

В чому проблема таку стрічку сформувати?

5

Re: Запис змінної в базу!

Дивіться в змінній може буди від 150-400 таких значень, кожен раз різна кількість. Мені кожен раз змінювати код пропонуєте ?

6

Re: Запис змінної в базу!

'INSERT INTO Dozu (Nom) VALUES ' + ','.join(f'({value})' for value in b)

А ви правда не знали, що цикли в Python можна не лише фіксованої довжини робити?

Подякували: yarik.starinec961

7

Re: Запис змінної в базу!

Знаю. Я розумів свою помилку. Дивіться в мене є три зміні, в першій і другій однакова кількість значень, а в 3 змінній лише одне значення. І я ні як не можу вигадати як записати ці змінні, так щоб 3 змінна дописувалась до першої та другої. Може у вас є якісь ідеї.

8

Re: Запис змінної в базу!

В змінній завжди ОДНЕ значення. Воно може бути складним - наприклад, списком чи кортежем. Переформулюйте питання, що у вас там?

9

Re: Запис змінної в базу!

Той код що ви мені порадили, працює так як мені потрібно дякую

10

Re: Запис змінної в базу!

там ціле значення типу 20190322