为什么当我尝试在 table 中插入一些值时 python 输出是 none?
Why when I tried to insert some values in the table with python the output it’s none?
我有这个代码
import MySQLdb
db = MySQLdb.connect("localhost", "root", "password", "db_name")
cursor = db.cursor()
cursor.execute("INSERT INTO directedEdges (`originLbl`, `targetLbl`) VALUES
('user1@enron.com', 'user2@enron.com' )")
data = cursor.fetchone()
print data
但是当我执行此脚本时,输出是 None 并且我无法将这些值插入到数据库中。为什么?
一开始我以为是数据库连接有问题,但如果我执行
import MySQLdb
db = MySQLdb.connect("localhost", "root", "password", "db_name")
cursor = db.cursor()
cursor.execute("SELECT * FROM directedEdges")
data = cursor.fetchone()
print data
我看到了 table directedEdges 的内容。
谢谢
您在插入数据库后立即发出了 cursor.fetchone()
命令。您没有任何类似的查询数据。在使用 fetchone()
之前,您需要查询一些数据。试试这个:
import MySQLdb
db = MySQLdb.connect("localhost", "root", "password", "db_name")
cursor = db.cursor()
cursor.execute("INSERT INTO directedEdges (`originLbl`, `targetLbl`) VALUES
('user1@enron.com', 'user2@enron.com' )")
# Commit your insert
db.commit()
# Query for data
cursor.execute("SELECT * FROM directedEdges")
data = cursor.fetchone()
print data
我有这个代码
import MySQLdb
db = MySQLdb.connect("localhost", "root", "password", "db_name")
cursor = db.cursor()
cursor.execute("INSERT INTO directedEdges (`originLbl`, `targetLbl`) VALUES
('user1@enron.com', 'user2@enron.com' )")
data = cursor.fetchone()
print data
但是当我执行此脚本时,输出是 None 并且我无法将这些值插入到数据库中。为什么?
一开始我以为是数据库连接有问题,但如果我执行
import MySQLdb
db = MySQLdb.connect("localhost", "root", "password", "db_name")
cursor = db.cursor()
cursor.execute("SELECT * FROM directedEdges")
data = cursor.fetchone()
print data
我看到了 table directedEdges 的内容。
谢谢
您在插入数据库后立即发出了 cursor.fetchone()
命令。您没有任何类似的查询数据。在使用 fetchone()
之前,您需要查询一些数据。试试这个:
import MySQLdb
db = MySQLdb.connect("localhost", "root", "password", "db_name")
cursor = db.cursor()
cursor.execute("INSERT INTO directedEdges (`originLbl`, `targetLbl`) VALUES
('user1@enron.com', 'user2@enron.com' )")
# Commit your insert
db.commit()
# Query for data
cursor.execute("SELECT * FROM directedEdges")
data = cursor.fetchone()
print data