我试图插入一些数据已经在SQL Azure中创建一个表。的Python 3.4.1 INSERT INTO SQL Azure的(pyodbc)
SQL结构
Field 1 DATE
Field 2 INT
Field 3 INT
Python中的代码:
#I know I have connected to the correct database.
Connection = pyodbc.connect(conn.conn())
cursor = Connection.cursor()
SQLCommand = ('INSERT INTO table_name ([Field 1], [Field 2], [Field 3]) VALUES ('31-Dec-14', 1, 2);')
cursor.execute(SQLCommand)
Connection.commit()
我收到以下错误
pyodbc.ProgrammingError: ('42S22', "[42S22] [Microsoft][SQL Server Native Client 11.0][SQL Server]Invalid column name '31-DEC-2014'. (207)
如果我
SQLCommand = ('INSERT INTO table_name ([Field 1], [Field 2], [Field 3]) VALUES (?, ?, ?);', ('31-DEC-2014',1,2))
cursor.execute(SQLCommand)
Connection.commit()
更换
我收到以下错误
TypeError: The first argument to execute must be a string or unicode query.
我应该如何输入日期和整数到通过Python的SQL Azure的表?
谢谢
注释1:我觉得pymssql需要使用 'freetds的' 吗? (即SQL Native Client 11.0)在Windows系统中不起作用? – Harris
注释2:我还是用pymssql收到无效的列名称的错误。我认为这是值得做把日期格式通过Python到SQL。 – Harris
你好哈里斯,它应该在Windows上运行。这里是你如何做到这一点 - https://azure.microsoft.com/en-us/documentation/articles/sql-database-develop-python-simple-windows/。另外你的日期格式在你的数据库中是什么样的。上面链接中的代码应该适用于默认日期格式。 –