使用Python连接数据库

Python与数据库连接
from pymysql import *
#1.连接数据库,在实例化的时候自动连接数据库
#2.定义获取单条数据的方法,
#3. 实现在程序执行的完毕的时候自动关闭连接,要使用del魔法方法


class MyDb(object):#Python2里需要写object但在Python可以不写默认为object类
#2.初始化时,自动连接数据库
	def __init__(self):#实例化方法通过self调用
		self.my_conn()
	#1.连接数据库
	def my_conn(self):#实例化方法
		try:
			self.conn = connect(host="127.0.0.1",port=3306,user="root",passwd="root",db="mb",charset="utf8")
		except Exception as e:
			print(e)
	#3.获取单条数据
	def get_one(self):
		#3.1获取游标,
		cs = self.con.cursor#我们是通过连接数据来获取游标,并且赋值给cs
		
		#3.2执行sql语句
		sql = "select * from 库名;"
		cs.execute(sql)#执行sql语句 ,execute()返回的是受影响进度的行数
		#3.3获取执行的结果
		res = cs.fetvhone()

		#3.4关闭
		cs.close()#先关闭游标
		self.conn.close()
		return res		
		
		#4.定义一个函数来获取全部
		def get_all(self):
			cs = self.con.cursor
		
		sql = "select * from goods;"#库名goods
		cs.execute(sql)
		#获取
		res = cs.fetchall()
		
		cs.close()#先关闭游标
		
		self.conn.close()
	
		def close_conn(self):#创建函数关闭连接
			#此处不关闭游标没关系,因为每获取一次数据时,都重新创建了游标
			#cs.close()
		self.conn.close()
def main():
	db = MyDb()
	#print(data)
	#data = db.get_one()#报错
	#print(data )
	
	all_data = db.get_all()
	#print(all_data)
	#数据太多,如果想取出每一条数据一个for循环
	for data in all_data:
		print(data)
if __name__ == '__main__'
	main()

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值