python和数据库_python与数据库操作

1、启动SQL服务:net start mysql

2、登录MYSQL数据库>mysql -h localhost -u root -p

3、创建数据库:CREATE DATABASE [IF NOT EXISTS] <数据库名>;

4、创建表:-》USE test_db;

---》CREATE TABLE tb_emp1{字段}

5、事务机制可以保持数据一致性,具有4个属性:原子性,一致性,隔离性,持久性

6、内外连接区别:

(1)内连接:组合两个表中的记录,返回关联字段相符的记录,即返回两个表的交集 inner join ....on....

select * from a_table a inner join b_table b on a.a_id = b.b_id;

(2)左(外连接):left join on / left outer join on:左外连接中左表记录全部展示,右表只显示符合搜索条件的记录

语句:select * from a_table a left join b_table b on a.a_id = b.b_id;

(3)右(外连接):right join on / right outer join on:右外连接右边全部展示,左表只显示符合搜索条件的记录

语句:select * from a_table a right outer join b_table b on a.a_id = b.b_id;

7、如果需要将任意值转化为字符串用str()或repr(),repr()转化为供解释器阅读的形式

8、封装数据库相关操作

importpymysqlclassDbhelper(object):def __init__(self,host,user,password,port,database):

self.host=host

self.user=user

self.password=password

self.port=port

self.database=database

#连接数据库defget__conn(self):

conn=pymysql.connect(host=self.host, user=self.user, password=self.password, db=self.database)

cur=conn.cursor()returnconn,cur

#执行sql语句,主要用来做插入操作defexec_data(self,sql):

conn, cur=self.get__conn()try:

cur.execute(sql)

conn.commit()except:print("执行失败")

conn.rollback()

conn.close()

#查询数据库所有行defselectall(self,sql):

conn,cur=self.get__conn()

data=Nonetry:

cur.execute(sql)

data=cur.fetchall()except:print("查询失败")

conn.close()returndatadef __del__(self):

conn,cur=self.get__conn()

conn.close()

cur.close()

举例使用:

importSQL1if __name__=="__main__":

client=SQL1.Dbhelper('192.168.207.16','root','123456','3306','test')

#sql拼接用repr,将字符串原样输出

sql='insert into students(name,age,sex) values(%d,%s,%s)'%(10,repr('che'),repr('girl'))

sql1='select * from students'client.get__conn()

result=client.exec_data(sql)

res=client.selectall(sql1)for data inres:print("%s %s %s"%(data[0],data[1],data[2]))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值