MySQLdb操作數據庫(三)
阿新 • • 發佈:2018-07-30
char abs set ive com cursor 事務回滾 rand name 刪除數據
刪除單條數據
刪除單條數據
#conding=utf-8 import MySQLdb import random try: conn = MySQLdb.connect( host = ‘127.0.0.1‘, user = ‘root‘, passwd = "123456", port = 3306) conn.select_db(‘python‘)# 選擇pythonDB數據庫 cur = conn.cursor()# 獲取遊標 cur.execute("delete from user where id=0") cur.execute("select * from user") for v in cur.fetchall(): print v cur.close() conn.commit() conn.close() print u"sql執行成功" except Exception, e: print e
刪除多條數據
#conding=utf-8 import MySQLdb import random try: conn = MySQLdb.connect( host = ‘127.0.0.1‘, user = ‘root‘, passwd = "123456", port = 3306) conn.select_db(‘python‘)# 選擇pythonDB數據庫 cur = conn.cursor()# 獲取遊標 sql = "delete from user where id=%s" cur.executemany(sql,[(3),(2,)]) cur.execute("select * from user") for v in cur.fetchall(): print v cur.close() conn.commit() conn.close() print u"sql執行成功" except Exception, e: print e
事務回滾
import MySQLdb import random try: conn = MySQLdb.connect( host = ‘127.0.0.1‘, user = ‘root‘, passwd = "123456", port = 3306) conn.select_db(‘python‘)# cur = conn.cursor()# 獲取遊標 cur.execute("select * from user") datas = cur.fetchall() print u"修改前的數據:\n", datas[0] cur.execute("update user set birthday=‘2100-08-12‘where name=‘tom6") cur.execute("select * from user") datas = cur.fetchall() print u"修改後的數據:\n", datas[0] #回滾事務 conn.rollback() cur.execute("select * from user") datas = cur.fetchall() print u"事務回滾後的數據:\n", datas[0] #關閉遊標 cur.close() #提交事務 conn.commit() #關閉數據庫連接 conn.close() print u"sql語句執行成功!" except Exception, e: print e
重置遊標位置
scroll(value, mode=‘relative‘)
移動指針到參數value指定的行;
Mode = relative則表示從當前所在行前移value行
Mode=absolute表示移動到絕對位置的value行。遊標索引從0開始
cursor.rownumber
返回當前遊標所在位置
數據庫表內容:
#coding=utf-8
import MySQLdb
#打開數據庫連接
conn = MySQLdb.connect(
host = "localhost",
port = 3306,
user = "root",
passwd = "123456",
db = "python",
charset = "utf8")
#使用cursor()方法獲取數據庫的操作遊標
cursor = conn.cursor()
cursor.execute("select * from user order by id")
print u"當前遊標所在位置:", cursor.rownumber
print cursor.fetchone()
print u"當前遊標所在位置:", cursor.rownumber
cursor.scroll(0,mode="absolute")#移動遊標到第一行
print u"當前遊標所在位置:", cursor.rownumber
print cursor.fetchone()
#coding=utf-8
import MySQLdb
#打開數據庫連接
conn = MySQLdb.connect(
host = "localhost",
port = 3306,
user = "root",
passwd = "123456",
db = "python",
charset = "utf8")
#使用cursor()方法獲取數據庫的操作遊標
cursor = conn.cursor()
cursor.execute("select * from user order by id")
print u"當前遊標所在位置:", cursor.rownumber
res = cursor.fetchmany(5)
for value in res:
print value
print u"當前遊標所在位置:", cursor.rownumber
cursor.scroll(3,mode="relative")#遊標會向前移動3,對應數據庫表就是向後移動3行
print u"當前遊標所在位置:", cursor.rownumber
print cursor.fetchone()
MySQLdb操作數據庫(三)