2013-02-21 30 views
6

Tôi đã gặp phải sự cố có dây khi tôi định chèn dữ liệu vào cơ sở dữ liệu của mình, nó không chèn và không bị lỗi (ném ngoại lệ)! ,, khi dữ liệu bị trùng lặp hoặc sai bảng cung cấp nó ném ngoại lệ !!chèn dữ liệu bằng cách sử dụng kết nối mysql trong python

đây là mã của tôi!

from mysql import connector 
con = connector.Connect(user='root',password='root',database='test',host='localhost') 
cur=con.cursor() 
cur.execute("""insert into user values ('userName', 'passWord')""") 

cơ sở dữ liệu test chỉ bao gồm một bảng mà là users và bao gồm 3 lĩnh vực đó là idusernamepassword, tên người dùng là duy nhất và id là A_I

lưu ý tôi đã sử dụng truy vấn này cũng thế ! :

"" "chèn vào sử dụng (username, password) giá trị ('username', 'Mật khẩu');" ""

và cố gắng rất nhiều cách khác nhau, nhưng không có gì happend (không chèn và không có trường hợp ngoại lệ nào bị ném!)

Trả lời

11
from mysql import connector 
con = connector.Connect(user='root',password='root',database='test',host='localhost') 
cur=con.cursor() 
cur.execute("""insert into user values ('userName', 'passWord')""") 
**con.commit()** 
con.close() 

Bạn có thể quên sử dụng con.commit, để cam kết thay đổi của bạn với cơ sở dữ liệu.

Không sử dụng con.commit() cho mỗi hoạt động INSERT/UPDATE, sử dụng nó cho nhóm hoạt động, kết hợp logic bởi SQL cai

3

Dường như bạn có thể quên cam kết thay đổi của mình.

Các vấn đề liên quan