python操作mysql数据库(增删查改)

这篇博客介绍了如何使用Python的MySQLdb模块来连接MySQL数据库,包括创建、删除表,以及对数据进行增、删、查、改的操作。示例代码详细展示了对dept、emp、salgrade和stu四个表的CRUD操作。
摘要由CSDN通过智能技术生成
#coding=utf-8
import MySQLdb


class Mysql_Oper:

	def __init__(self,host,user,passwd,db):
		self.host=host
		self.user=user
		self.passwd=passwd
		self.database=db
	
	def db_connecet(self):
		try:
			#连接    
			conn=MySQLdb.connect(host=self.host,user=self.user,passwd=self.passwd,db=self.database,charset="utf8")
			cursor = conn.cursor()
			
		except MySQLdb.Error,e:
				print "Mysql Error %d: %s" % (e.args[0], e.args[1])
			
	def drop_table(self,table):
		try:
			#删除表
			sql = "drop table if exists" + table
			cursor.execute(sql)
		except MySQLdb.Error,e:
				print "Mysql Error %d: %s" % (e.args[0], e.args[1])
	
	def create_table(self,table):
		try:  
			if table=="dept":
				#创建
				sql = "create table if not exists dept(deptno int primary key, dname varchar(50),loc varchar(50))"
				cursor.execute(sql)
			elif table=="emp":
				sql == "create table if not exists emp(empno INT PRIMARY KEY,ename VARCHAR(50),job VARCHAR(50),mgr INT,hiredate DATE,sal DECIMAL(7,2),COMM DECIMAL(7,2),deptno INT,loc varchar(50),CONSTRAINT fk_emp FOREIGN KEY(mgr) REFERENCES emp(empno))"
				cursor.execute(sql)
			elif table=="salgrade":
				sql = "create table if not exists salgrade(grade INT PRIMARY KEY,losal INT,hisal INT)"
				cursor.execute(sql)
			elif table=="stu":
				#创建
				sql = "create table if not exists dept(sid INT PRIMARY KEY,sname VARCHAR(50),age INT,gander VARCHAR(10),province VARCHAR(50),tuition INT)"
				cursor.execute(sql)
			else:
				print u"输入错误的表名,表明为dept、emp、salgrade、stu..."
				
	    except MySQLdb.Error,e:
				print "Mysql Error %d: %s" % (e.args[0], e.args[1])
			
	def inser_onedata_table(self,table):	
		try:  
			if table=="dept":
				sql = "insert into dept values(%s,%s,%s)"   
				param = (40, 'cai wu bu', 'wu han')    
				n = cursor.execute(sql,param)    
				print 'insert',n    
			
			elif table=="emp":
				sql = "insert into emp values(%s,%s,%s,%s,%s,%s,%s,%s)"   
				param = (1009, 'a niu', 'dong shi zhang', NULL, '2001-11-17', 50000, NULL, 10)    
				n = cursor.execute(sql,param)    
				print 'insert',n 
				
			elif table=="salgrade":
			
				sql = "insert into salgrade values(%s,%s,%s)"   
				param = (1, 7000, 12000)    
				n = cursor.execute(sql,param)    
				print 'insert',n 
			elif table=="stu":
				
				sql = "insert into stu values(%s,%s,%s,%s,%s,%s)"   
			
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WEL测试

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值