前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python3数据库配置,远程连接mys

python3数据库配置,远程连接mys

作者头像
py3study
发布2020-01-09 15:17:19
7540
发布2020-01-09 15:17:19
举报
文章被收录于专栏:python3python3

python配置数据库mysql

安装mysql数据库,方法如下 安装配置mysql数据库服务器

安装pymysql

代码语言:javascript
复制
#在python虚拟环境中安装,我采用的是这种方法

$ pip install PyMySQL
Collecting PyMySQL
Downloading PyMySQL-0.8.0-py2.py3-none-any.whl (83kB)
  100% |████████████████████████████████| 92kB 222kB/s 
Installing collected packages: PyMySQL
Successfully installed PyMySQL-0.8.0


#PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。



#PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL 客户端库。



#安装成功


# eric @ ray in ~/.local/virtualenvs/my_env3.6/code [18:54:30] 

$ python
Python 3.6.3 (default, Oct  6 2017, 08:44:35) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pymysql#输入不报错
>>> 

连接mysql数据库 查询mysql版本信息

代码语言:javascript
复制
#!/usr/bin/python3                                                                                                              


# -*- coding: utf-8 -*-

"""

# Author: EricRay


# Created Time : 2017-12-27 16:45:02



# File Name: db.py


# Description:查询Mysql版本信息


"""
import pymysql


#打开数据库连接


db = pymysql.connect("192.168.122.58","eric","eric2017","test")

#pymysql.connect("localhost/IP","username","pwd","databs" )




#使用cursor()方法创建一个游标对象 cursor


cursor = db.cursor()


#使用execute()方法执行sql查询

cursor.execute("select VERSION()")


#使用 fetchone()方法获取单条数据

data = cursor.fetchone()

print ("database version : %s" % data)


#关闭连接

db.close()

建表

代码语言:javascript
复制
#!/usr/bin/python3                                                                                                                     


# -*- coding: utf-8 -*-

"""

# Author: EricRay


# Created Time : 2017-12-27 18:31:13



# File Name: cr_t.py


# Description:


"""
import pymysql


#打开数据库连接

db = pymysql.connect("192.168.122.58","eric","lyd2017","test")

cursor = db.cursor()

cursor.execute("drop table if exists employee")


#预处理语句建表

sql = """create table employee(
          tname varchar(20) not null default '',
          age int,
          sex varchar(1)) ENGINE=InnoDB DEFAULT CHARSET=utf8"""

cursor.execute(sql)

db.close()

插入数据

代码语言:javascript
复制
#!/usr/bin/python3                                                                                                                     


# -*- coding: utf-8 -*-

"""

# Author: EricRay


# Created Time : 2017-12-27 18:38:56



# File Name: insert.py


# Description:


"""


#!/usr/bin/python3


import pymysql


# 打开数据库连接

db = pymysql.connect("192.168.122.58","eric","lyd2017","test" )


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

cursor = db.cursor()

sql = "insert into employee(tname,age,sex) \
  values('%s','%d','%s')" % \ 
  ('Mary',18,'F')


try:
  cursor.execute(sql)
  db.commit()
except:
  db.rollback()

db.close()

查询 Python查询Mysql使用 fetchone() 方法获取单条数据, 使用fetchall() 方法获取多条数据。

fetchone(): 该方法获取下一个查询结果集。结果集是一个对象

fetchall(): 接收全部的返回结果行.

rowcount: 这是一个只读属性,并返回执行execute()方法后影响的行数。

代码语言:javascript
复制
#!/usr/bin/python3                                                                                                                     


# -*- coding: utf-8 -*-

"""

# Author: EricRay


# Created Time : 2017-12-27 19:07:30


# File Name: select.py


# Description:

"""
import pymysql


# 打开数据库连接

db = pymysql.connect("192.168.122.58","eric","lyd2017","test" )


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

cursor = db.cursor()


#查询

sql = "select * from employee"

try:
    cursor.execute(sql)

    result = cursor.fetchall()

    for row in result:
        tname = row[0]
        age = row[1]
        sex = row[2]

        #打印结果
        print('tname = %s, age = %d, sex = %s' % \ 
              (tname,age,sex))

except:
    print("Error: unable to fetch data")
db.close()   

结果

代码语言:javascript
复制
(my_env3.6) 

# eric @ ray in ~/.local/virtualenvs/my_env3.6/code [19:14:05] 

$ python select.py 
tname = eric, age = 28, sex = M
tname = Mary, age = 18, sex = F

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-08-26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档