0

以下のコードは、挿入コマンドを実行しようとしている CGI スクリプトです。

#! C:\Python27\python.exe -u

import cgi
import MySQLdb
import xml.sax.saxutils


query = cgi.parse()
db = MySQLdb.connect(


host = "127.0.0.1",
user = "root",
passwd = "mysql123",
db = "welcome")

print 'Content-type: text/plain\n\n<?xml version="1.0" encoding="utf-8"?>\n<result>'

try:
c = db.cursor()
c.execute("insert into welcome.registrations values ('test','test',now())")
print '\t<update>true</update>'
except:
print '\t<update>false</update>'


print "</result>"

URL - .com/cgi-bin/reg.cgi に移動すると、mysql DB で行われた挿入操作が見つかりません。

4

2 に答える 2

0

すべての挿入後に db.commit() を実行してください(または最後に、すべてが機能します):

try:
c = db.cursor()
c.execute("insert into welcome.registrations values ('test','test',now())")
db.commit()
db.close() # Make sure you close the connection else multiple connections will result in hanging of mysql server. 
于 2013-04-06T09:08:36.427 に答える