python-mysql基本用法

     由于项目数据库要转到mysql,所以今天花了个把小时对python-mysql用法基本上了解了下,总结如下:
     先来看一个代码:
# -*- coding: utf-8 -*-
import MySQLdb as mdb
import sys

#将con设定为全局连接
con = mdb.connect ('localhost', 'root', '', 'test');

with con:

    #获取链接的cursor,只有获取了cursor, 我们才能进行各种操作
    cur = con.cursor()
    #创建一个数据表 writers(id , name)
    cur.execute ("create table if not exists \
        Writers(Id INT PRIMARY KEY AUTO_INCREMENT, Name VARCHAR(25))")
    #插入5条数据
    cur.execute ("insert into Writers(Name) values('Jack London')")
    cur.execute ("insert into Writers(Name) values('Honore de Balzac')")
    cur.execute ("insert into Writers(Name) values('Lion Feuchtwanger')")
    cur.execute ("insert into Writers(Name) values('Emile Zola')")
    cur.execute ("insert into Writers(Name) values('Truman Capote')")
下面我们对上面的代码分析下:
   con = mdb.connect ('localhost', 'root', '', 'test'); :这个用来连接到本地的‘test’数据库,‘root’是本地数据库的用户名,‘’是这个用户的密码, 我们这里密码设的时候为空。
   cur = con.cursor():获得连接的cursor,这样我们就可以在后面通过cur来调用命令了
   import MySQLdb as mdb:表示导入一个名为“mdb”的MySQLdb模块。
import MySQLdb as mdb
import sys

con = mdb.connect('localhost', 'root', '', 'test');

with con:
    cur = con.cursor()

    cur.execute("select * from Writers")
    '''rows = cur.fetchall()
    for row in rows:
        print row
    '''
    
    numrows = int (cur.rowcount)
    for i in range(numrows):
        row = cur.fetchone()
        print row[0], row[1]

你可能感兴趣的:(Python)