将数据插入MS SQL Server数据库后,我的值将被截断,并在其间添加单个额外空间。例如: -
HomeShop18
保存为H o m e s
。它也被截断,并且还包括空间。
但当我select * from table where col= 'Homes'
显示数据时。问题是什么?
如何将数据插入SQL Server DB?
这是我目前正在做的事情? PS:我在SO上读过线程,指出要增加尺寸和TDS版本。我已经尝试了所有但仍然插入条目被截断。
def post_data(data):
os.environ['TDSVER'] = '8.0'
data = (
data['AWB_Number'], data['Weight'], data['Length'], data['Height'],
data['Width'], data['Customer_Name'], datetime.datetime.strptime(data['Scan_Time'][:19] , '%Y-%m-%d %H:%M:%S'),data['Series_Flag']
)
print data # ('40642847766', '0.011', '1.1', '1.1', '1.1', 'flipkart', datetime.datetime(2014, 8, 14, 11, 14, 53), 'True')
con_string = 'DSN=%s;UID=%s;PWD=%s;DATABASE=%s;' % (dsn, user, password, database)
cnxn = pyodbc.connect(con_string)
cursor = cnxn.cursor()
cursor.execute("insert into data_AutoScale_DELHUB(AWB_Number,Weight,Length,Width,Height,Customer_Name,Scan_Time,Series_Flag) VALUES (?, ?, ?, ?, ?, ?, ?, ?)" , data[0],data[1],data[2],data[3],data[4],data[5],data[6],data[7])
cursor.commit()
cnxn.close()
答案 0 :(得分:0)
注意参数的顺序。在查询和参数中似乎反转了“高度”和“宽度”。
检查execute()中参数的顺序是否与
相同(AWB_Number,Weight,Length,Width,Height,Customer_Name,Scan_Time,Series_Flag)