是否可以使用 pymssql 将 python 列表写入数据库?
Is it possible to write a python list into a database with pymssql?
我正在尝试通过 pymssql 将 python 列表写入数据库 table。
我的目标是将每个列表条目写入同一列的不同行。
尝试此操作时出现错误:
ValueError: 'params' arg () can only be a tuple or a dictionary.
有没有办法使用 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()
您可以使用 executemany:
cursor.executemany('INSERT INTO mytablename (columnname) VALUES (%s);', clear)
我正在尝试通过 pymssql 将 python 列表写入数据库 table。 我的目标是将每个列表条目写入同一列的不同行。
尝试此操作时出现错误:
ValueError: 'params' arg () can only be a tuple or a dictionary.
有没有办法使用 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()
您可以使用 executemany:
cursor.executemany('INSERT INTO mytablename (columnname) VALUES (%s);', clear)