python-centos-mysql-mysqldb





yum install MySQL-python -y
 
conn = MySQLdb.Connect(host='localhost', user='root', passwd='root', db='python',charset='utf8') 
charset是要跟你数据库的编码一样,如果是数据库是gb2312 ,则写charset='gb2312'。
 然后,这个连接对象也提供了对事务操作的支持,标准的方法
commit() 提交
rollback() 回滚

cursor用来执行命令的方法:
callproc(self, procname, args):用来执行存储过程,接收的参数为存储过程名和参数列表,返回值为受影响的行数
execute(self, query, args):执行单条sql语句,接收的参数为sql语句本身和使用的参数列表,返回值为受影响的行数
executemany(self, query, args):执行单挑sql语句,但是重复执行参数列表里的参数,返回值为受影响的行数
nextset(self):移动到下一个结果集

cursor用来接收返回值的方法:
fetchall(self):接收全部的返回结果行.
fetchmany(self, size=None):接收size条返回结果行.如果size的值大于返回的结果行的数量,则会返回cursor.arraysize条数据.
fetchone(self):返回一条结果行.
scroll(self, value, mode='relative'):移动指针到某一行.如果mode='relative',则表示从当前所在行移动value条,如果 mode='absolute',则表示从结果集的第一行移动value条.
 
import MySQLdb
try:
    conn=MySQLdb.connect(host='127.0.0.1',user='root',passwd='admin',db='mysql',port=3306)
    cur=conn.cursor()
    #cur.execute('select * from user')
    cur.execute('select version()')
    data = cur.fetchone()
    print "Databases version: %s " %  data
    cur.close()
    conn.close()
except MySQLdb.Error,e:
     print "Mysql Error %d: %s" % (e.args[0], e.args[1])
 
import MySQLdb as mdb
import sys
conn = mdb.connect(host='127.0.0.1',user='root',passwd='admin',db='game',port=3306)
with conn:

    cur = conn.cursor()
    cur.execute("Create TABLE IF NOT EXISTS \
        Writers(Id INT PRIMARY KEY AUTO_INCREMENT,NAME VARCHAR(25))")
    cur.execute("INSERT INTO Writers(Name) VALUES('Jack Luo')")
    cur.execute("INSERT INTO Writers(Name) VALUES('Kity Alice')")
    cur.execute("INSERT INTO Writers(Name) VALUES('Alex ok')")
 
import MySQLdb as mdb
import sys
conn = mdb.connect(host='127.0.0.1',user='root',passwd='admin',db='game',port=3306)
with conn:
    cur = conn.cursor()
    cur.execute("SELECT * from Writers")
    rows = cur.fetchall()
    for row in rows:
        print row
 
import MySQLdb as mdb
import sys
conn = mdb.connect(host='127.0.0.1',user='root',passwd='admin',db='game',port=3306)
with conn:
    cur = conn.cursor()
    cur.execute("SELECT * from Writers")
    numrows = int(cur.rowcount)
    for i in range(numrows):
        row = cur.fetchone()
        print row[0],row[1]


####

import MySQLdb as mdb
import sys
conn = mdb.connect(host='127.0.0.1',user='root',passwd='admin',db='game',port=3306)
with conn:
    cur = conn.cursor(mdb.cursors.DictCursor)
    cur.execute("SELECT * FROM Writers")

    rows = cur.fetchall()

    for row in rows:
        print "%s %s" % (row["Id"],row["NAME"])
import MySQLdb as mdb
import sys

conn = mdb.connect(host='127.0.0.1',user='root',passwd='admin',db='game',port=3306)
with conn:
    cur = conn.cursor()
    cur.execute("SELECT * from Writers")
    rows = cur.fetchall()
    desc = cur.description
    print 'cur.description:',desc
    print "%s %3s" % (desc[0][0],desc[1][0])
    for row in rows:
        print "%2s %3s" % row


import MySQLdb as mdb
import sys
conn = mdb.connect(host='127.0.0.1',user='root',passwd='admin',db='game',port=3306)
with conn:
    cur = conn.cursor()
    cur.execute("UPDATE Writers SET NAME=%s WHERE Id = %s",("Guy de Maupasant","4"))
    print "Number of rows updated: %d" % cur.rowcount
import MySQLdb as mdb
import sys
try:
    fin = open("logo.png")
    img = fin.read()
    fin.close()
except IOError,e:
    print "Error %d: %s" % (e.args[0],e.args[1])
    sys.exit(1)
try:
    conn = mdb.connect(host='127.0.0.1',user='root',passwd='admin',db='game',port=3306)
    cursor = conn.cursor()
    cursor.execute("INSERT INTO Images SET Data='%s'" % mdb.escape_string(img))
    conn.commit()
    cursor.close()
    conn.close()
except mdb.Error,e:
    print "Error %d:%s" % (e.args[0],e.args[1])
    sys.exit(1)


###


import MySQLdb as mdb
import sys
try:
    conn = mdb.connect(host='127.0.0.1',user='root',passwd='admin',db='game',port=3306)
    cursor = conn.cursor()
    cursor.execute("SELECT Data FROM Images LIMIT 1")
    fout = open('logo2.png','wb')
    fout.write(cursor.fetchone()[0])
    fout.close()
    cursor.close()
    conn.close()
except IOError,e:
    print "Error %d: %s" %(e.args[0],e.args[1])
    sys.exit(1)



####

import MySQLdb as mdb
import sys
try:
    conn = mdb.connect(host='127.0.0.1',user='root',passwd='admin',db='game',port=3306)
    cursor = conn.cursor()
    cursor.execte("UPDATE Writers SET Name = %s WHERE Id = %s",("JACK LUO","1"))
    cursor.execte("UPDATE Writers Set Name = %s where Id = %s ",("Alex LI",'2'))
    cursor.execte("UPDATE Writers Set Name = %s where Id = %s",("Leonid Leonov",'3'))
    conn.commit()
    cursor.close()
    conn.close()
except mdb.Error,e:
    conn.rollback()
    print "Error %d: %s" % (e.args[0],e.args[1])
 
 

猜你喜欢

转载自886.iteye.com/blog/2310995