Я пытаюсь вставить несколько значений в таблицу, но я не уверен синтаксиса .. Я читаю эти значения из файлов Excel ...pymssql: Вставка mutliple значения в таблицу
import xlrd
import pymssql
file_location = 'C:/Users/praveen/Downloads/OpTransactionHistory03-01-2015.xls'
#Connecting SQL Server
conn = pymssql.connect (host='host',user='user',password='pwd',database='Practice')
cur = conn.cursor()
# Open Workbook
workbook = xlrd.open_workbook(file_location)
# Open Worksheet
sheet = workbook.sheet_by_index(0)
for rows in range(13,sheet.nrows):
for cols in range(sheet.ncols):
cur.execute(
" INSERT INTO MONTHLY_BUDGET VALUES (%s, %s, %s, %s, %s)"
%(sheet.cell_value(rows,cols))) <---Getting 5 values from here as expected,but not sure how to map these values to the table values..
conn.commit()
Проблема:
Я вставив 5 значений в то время, и эти значения правильно исходя из (sheet.cell_value (строки, перевалы))), как это:
31/12/2014 147801503777:Int.Pd:30-06-2014 to 30-12-2014 - 860.00 20,458.74
но в т его дело, число аргументов не соответствует .. поэтому я получаю сообщение об ошибке:
TypeError: not enough arguments for format string
Структура таблицы:
CREATE TABLE MONTHLY_BUDGET
(
SEQUENCE INT IDENTITY,
TRANSACTION_DATE VARCHAR(100),
TRANSACTION_REMARKS VARCHAR(1000),
WITHDRAWL_AMOUNT VARCHAR(100),
DEPOSIT_AMOUNT VARCHAR(100),
BALANCE_AMOUNT VARCHAR(100)
)
Вы, вероятно, следует предоставить более подробную информацию относительно того, что делать у вас данных в обычной клетке и какие данные у вас в клетке, что вызывает проблему. –