Python对数据库进行简单操作

上一篇 / 下一篇  2015-11-07 16:55:24 / 个人分类:Python学习

Python数据库进行简单操作
#!/usr/bin/python
#-*- coding:UTF-8  -*-

import MySQLdb

#打开数据库连接localhost--服务器;testuser--连接用户名; test123--连接密码; TESTDB--数据库名
db=MySQLdb.connet("localhost","testuser","test123","TESTDB")

#使用cursor()方法获取操作游标
cursor=db.cursor()

#如果数据表已经存在使用execute()方法删除表。
cursor.exectute("DROP TABLE IF EXISTS EMPLOYEE")

#创建数据表SQL语句
sql="""CREATE TABLE EMPLOYEE(
       FIRST_NAME CHAR(20) NOT NULL,
       LAST_NAME CHAR(20),
       AGE INT,
       SEX CHAR(1)
       INCOME FLOAT)"""

cursor.execute(sql)


#SQL插入语句
sqlinsert="""INSERT INTO EMPLOYEE(FIRST_NAME,
             LAST_NAME,AGE,SEX,INCOME)
             VALUES('Mac','Mohan',20,'M',2000)"""
#与上一句sql语句等效  --向SQL语句中传递参数
sqlinsert1="INSERT INTO EMPLOYEE(FIRST_NAME,\
            LAST_NAME,AGE,SEX,INCOME)\
            VALUES('%s','%s','%d','%c','%d')" %\
            ('Mac','Mohan',20,'M',2000)

try:
    #执行sql语句
    cursor.excute(sqlinsert)
    #提交数据到数据库执行
    db.commit()
except:
    #Rollback in case there is any error
    db.rollback()



#SQL查询语句
sqlsel="SELECT * FROM EMPLOYEE WHERE INCOME >'%d'"%(1000)

try:
    #执行sql语句
    cursor.execute(sqlsel)
    #获取所有记录列表
    results=cursor.fetchall()
    for row in results:
        fname=row[0]
        lname=row[1]
        age=row[2]
        sex=row[3]
        income=row[4]
        #打印结果
        print("fname=%s,lname=%s,age=%d,sex=%s,income=%d" %(fname,lname,age,sex,income))
except:
      print("Error:unable to fecth data")




#SQL更新语句
sqlupd="UPDATE EMPLOYEE SET AGE=AGE+1 WHERE SEX='%c'" %('M')

try:
   cursor.excute(sqlupd)
   db.commit()
except:
   db.rollback()


#关闭数据库连接
db.close()




TAG: 数据库

 

评分:0

我来说两句

日历

« 2024-03-27  
     12
3456789
10111213141516
17181920212223
24252627282930
31      

数据统计

  • 访问量: 3958
  • 日志数: 5
  • 建立时间: 2014-08-07
  • 更新时间: 2018-04-08

RSS订阅

Open Toolbar