python 的一个简单插入的问题,请大侠指教

python 的一个简单插入的问题,请大侠指教

比较如下两段代码,

[Copy to clipboard] [ - ]
CODE:
#!/usr/bin/python
import sys , MySQLdb
conn = MySQLdb.connect (host = "127.0.0.1",
        user = "root",
        passwd = "xxxxxx",
        db = "test")
sql="""insert  test (a,b) values
('%s','%s' )  """ % ( sys.argv[1] , sys.argv[2] )

#print sql

cursor = conn.cursor ()
cursor.execute (sql)
cursor.close ()

这个能正常执行,sys.argv[1] , sys.argv[2]  是从shell 传过来的变量

然后我想做这样的 sql :

insert into test(a,b) values ('aaa','bbb') ,('aaa','bbb') ,('aaa','bbb') ,('aaa','bbb')

其中这些值 ('aaa','bbb') ,('aaa','bbb') ,('aaa','bbb') ,('aaa','bbb') 是从shell 脚本传过来的

于是我用下一段代码,结果出错:

[Copy to clipboard] [ - ]
CODE:
#!/usr/bin/python
import sys , MySQLdb
conn = MySQLdb.connect (host = "127.0.0.1",
        user = "root",
        passwd = "xxxxxx",
        db = "test")
sql="""insert  test (a,b) values
%S  """ % ( sys.argv[1]  )

#print sql

cursor = conn.cursor ()
cursor.execute (sql)
cursor.close ()

请赐教,谢谢
把sys.argv[1] print出来看是否正确
test(a,b)  应该对应2个值,只是sql语句执行错误
test(a,b)  应该对应2个值,只是sql语句执行错误