使用python将数据插入MSSQL服务器 [英] insert data into MSSQL server using python

查看:44
本文介绍了使用python将数据插入MSSQL服务器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用以下代码将数据插入到 sql server 表中,

I am trying to insert data to the sql server table using following code,

import pyodbc
user='sa'
password='PC#1234'
database='climate'
port='1433'
TDS_Version='8.0'
server='192.168.1.103'
driver='FreeTDS'

   con_string='UID=%s;PWD=%s;DATABASE=%s;PORT=%s;TDS=%s;SERVER=%s;driver=%s' % (user,password, database,port,TDS_Version,server,driver)
   cnxn=pyodbc.connect(con_string)
   cursor=cnxn.cursor()
   cursor.execute("INSERT INTO mytable(name,address) VALUES (%s,%s)",('thavasi','mumbai'))
   cnxn.commit()

它在执行时给我以下错误,

Its giving me the following error while executing,

   Traceback (most recent call last):
  File "sql.py", line 26, in <module>
  cursor.execute("INSERT INTO mytable(name,address) VALUES (%s,%s)",('thavasi','mumbai'))
 pyodbc.ProgrammingError: ('The SQL contains 0 parameter markers, but 2 parameters were supplied', 'HY000')

我已经检查了插入语句的语法是否正确.那么是什么导致了这个错误?

I have checked the syntax for the insert statement its correct. So what causes this error?

推荐答案

cursor.execute("INSERT INTO mytable(name,address) VALUES (?,?)",('thavasi','mumbai'))

在pyodbc模块中使用?代替%

use ? instead of % in pyodbc module

这篇关于使用python将数据插入MSSQL服务器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆