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)
我可以输,但我不会认输

浙公网安备 33010602011771号