猿记录

一个记录、分享的博客

您的位置:主页 > 技术专栏 > python >

python 数据库操作

2017-11-09 09:43:32 作者:yxl 次阅读 python

## 首先我们安装PyMySQL( 最好使用pip安装 )
 
    pip install PyMySQL
    
## 新建一个python文件
    `首先导入pymysql 包`
    
## 数据库连接使用 Connect方法
 
    `(1)使用字典的配置信息传入,比较优雅
     config = {
         'host':'127.0.0.1',
         'port':3306,
         'user':'root',
         'password':'root',
         'db':'python_test',
         'charset':'UTF8',
          'cursorclass':pymysql.cursors.DictCursor,
        }
        
     const = pymysql.Connect(**config)
      (2)可以使用直接传入的方式(不提倡)
      connection = pymysql.connect(
                  host='127.0.0.1',
                  port=3306,
                  user='root',
                  password='zhyea.com',
                  db='employees',
                  charset='utf8mb4',
                  cursorclass=pymysql.cursors.DictCursor
                 )`
## 执行sql语句
    `# 首先得获取cursor   
      cursor = const.cursor()
       sql = 'select * from user where id = 1'
       sql2 = 'insert into user(user,password) values(%s,%s)'
      #把sql放在缓冲区 没有执行 
       cursor.execute(sql)
       #more不是自动提交,所以要手动提交
       #获取一条数据
       cursor.fetchone()
        const.commit()
        #一般执行sql需要放到try 里面执行,还有就是操作完sql需要关闭句柄
        try:
            cursor = const.cursor()
            sql = 'select * from user where id = 1'
            sql2 = 'insert into user(user,password) values(%s,%s)'
            cursor.execute(sql)
            cursor.execute(sql2,('小红',1212))
            print( cursor.fetchone() )
            #没有设置默认自动提交,需要主动提交,以保存所执行的语句
            const.commit()
        except Exception as e:
            print(e)
            cursor.close()
            const.close()
        finally:
            cursor.close()
            const.close()`
        
        
 

凡本站注明“本站”或“投稿”的所有文章,版权均属于本站或投稿人,未经本站授权不得转载、摘编或利用其它方式使用上述作品。

编辑:yxl 关键词: PyMySQL
0

网友评论