python使用mysql数据库

python3 使用pymysql VS python2.7 使用 MySQLdb

import pymysql
conn = pymysql.connect(           #Connect() 方法用于创建数据库的连接,里面可以指定参数:用户名,密码,主机等信息
    host = 'localhost',           #这只是连接到了数据库,要想操作数据库需要创建游标
    port = 3306,
    user = 'root',
    password = '',
    db = 'samp_db',
)
cur = conn.cursor()               #通过获取到的数据库连接conn下的cursor()方法来创建游标

sqli = 'insert into projectorlamps values(%s,%s,%s)'

cur.executemany(sqli,[           #executemany()方法可以一次插入多条值,执行单挑sql语句,但是重复执行参数列表里的参数,返回值为受影响的行数
                (15,'gg',45),
                (12,'fg',18),
                (13,'ty',33),
                (14,'uy',20),


                ])
aa = cur.execute('select * from projectorlamps')  #通过游标cur 操作execute()方法可以写入纯sql语句。通过execute()方法中写如sql语句来对数据进行操作
print (aa)

info = cur.fetchmany(aa)
for ii in info:
    print (ii)

#fetchone()方法可以帮助我们获得表中的数据,可是每次执行cur.fetchone() 获得的数据都不一样,
# 换句话说我没执行一次,游标会从表中的第一条数据移动到下一条数据的位置,
# 所以,我再次执行的时候得到的是第二条数据。

#fetchmany()方法可以获得多条数据,但需要指定数据的条数,通过一个for循环就可以把多条数据打印出啦



conn.commit()        #conn.commit()方法在提交事物,在向数据库插入一条数据时必须要有这个方法,否则数据不会被真正的插入
cur.close()          #关闭游标
conn.close()         #关闭数据库连接

执行结果:

13
(1, 'alan', None)
(2, 'GF', None)
(3, 'kobe', None)
(4, '??', None)
(5, 'gg', 45)
(6, 'asd', None)
(7, 'ddd', None)
(8, 'gg', 45)
(11, 'gg', 45)
(12, 'fg', 18)
(13, 'ty', 33)
(14, 'uy', 20)
(15, 'gg', 45)

 

  

posted @ 2016-04-11 17:50  编程青年的崛起  阅读(306)  评论(0编辑  收藏  举报