Можно ли написать список python в базу данных с помощью pymssql? - PullRequest
0 голосов
/ 18 октября 2019

Я пытаюсь написать список python через pymssql в таблицу базы данных. Я стремлюсь записать каждую запись списка в разные строки одного и того же столбца.

При попытке этого я получаю сообщение об ошибке:

ValueError: 'params' arg () может быть только кортежем или словарем.

Есть ли способ с pymssqlили я должен использовать что-то еще?

Мой код:

from bs4 import BeautifulSoup as bs
import re
import pandas as pd
from collections.abc import Iterable
import pymssql



conn = pymssql.connect(
    host='x',
    port=x,
    user='x',
    password='x',
    database='x'
)
cursor = conn.cursor() 
cursor.execute('SELECT x FROM x')

text = cursor.fetchall()

conn.close()



raw = []  
raw.append(text)
raw1 = str(raw)
soup = bs(raw1, 'html.parser')
autor = soup.get_text()

clear = []
s = autor.replace('\\n', '')
clear.append(s)




conn = pymssql.connect(
    host='x',
    port=x,
    user='x',
    password='x',
    database='x'
)

cursor = conn.cursor()

cursor.execute('INSERT INTO mytablename (columnname) VALUES (?);', [','.join(clear)])

conn.close()

1 Ответ

2 голосов
/ 18 октября 2019

Вы можете использовать executemany :

cursor.executemany('INSERT INTO mytablename (columnname) VALUES (%s);', clear)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...