美文网首页
Py3简单操作MySQL-1

Py3简单操作MySQL-1

作者: xtuBong | 来源:发表于2018-05-27 18:29 被阅读0次

什么是数据库?

为什么用数据库?

要永久存储数据,可以用文件、关系型数据库和其他一些数据库变种。在大型项目时,关系型数据库提供的接口让操作更方便。

数据库在哪里?需要安装

数据库安装:见 MySQL 安装,我使用的是windows的,注意打开命令行时以管理员身份运行。

操作MySQL的Python库:   

 1、mysql-connector-python

 2、PyMySQL

这里用PyMySQL。

SQL?

SQL:是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系型数据库系统。(数据库是用SQL命令操作的,Python通过调用执行SQL命令操作数据库)

常用命令:

#创建数据库

CREATE DATABASE  test;    #创建叫test的数据库

GRANT ALL ON  test.* to users;    #将数据库操作权限赋给users

#选择要使用的数据库

USE test;    #使用test数据库

#删除数据库

DROP DATABASE test;    #删除test数据库

#创建表

CREATE TABLE users (name VARCHAR(8), age INT, height INT);    #创建users表,有字符串的 name 列、整型 age、 height 列

#删除表

DROP TABLE users;

#插入行

INSERT INTO users VALUES("zhangsan", 40, 60);    #向表users插入一行数据

#更新行

UPDATE users SET age=41 WHERE age=40;    #对users表age=40的行,更新age=41

UPDATE users SET age=42  WHERE   name="zhangsan" ;      #对users表 name="zhangsan" 的行,更新 age=42

#删除行

DELETE FROM users WHERE age=40;    #删除age=40的一行数据

DELETE FROM users;    #删除users表全部数据



怎么使用?

1、用SQL命令操作MySQL

#从命令行进入MySQL的bin文件夹

>net start MySQL

>mysql -u root -p    #此处-u后的root可用你的用户名代替,-p后可接密码。都没有就直接按回车

mysql>use test    #使用test数据库

mysql> CREATE DATABASE  other;     #创建 other 数据库

mysql>quit

2、Python中操作

#创建表

#插入数据

#查询数据

# 更新数据

# 删除数据

import pymysql

#打开数据库连接

db = pymysql.connect(host="localhost",port=3306,user="root",passwd='',db="test",charset="utf8")  

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

cursor = db.cursor()

# 使用 execute() 方法执行 SQL命令

cursor.execute("DROP TABLE IF EXISTS users")    #存在users表就先删掉

#创建表

sql = """CREATE TABLE users( name  CHAR(20) NOT NULL, age INT, height INT ,income FLOAT )"""

cursor.execute(sql)    #执行创建表命令

#插入一行数据

sql = """INSERT INTO users(name, age,height, income) VALUES ('zhangsan',  40, 60, 5000)"""

try:

    cursor.execute(sql)     # 执行sql语句

    db.commit()     # 提交到数据库执行

except:

    db.rollback()     # 如果发生错误则回滚

#查询数据

sql = "SELECT * FROM users  WHERE income > '%d' " % (1000)    #选择income大于1000的行

try:

    cursor.execute(sql)      # 执行SQL语句

    #results = cursor.fetchone()     # 获取SELECT的单条记录列表

    results = cursor.fetchall()     # 获取SELECT的所有记录列表

    for row in results:

        name = row[0]

        age = row[1]

        height = row[2]

        income = row[3]

        print ("name=%s,age=%d,height=%d,income=%d" %(name, age,height, income ))

except:

    print ("Error: unable to fetch data")

# 更新数据

sql = "UPDATE users SET age = age + 1 WHERE name = '%c'" % ('zhangsan')

try:

    cursor.execute(sql)     # 执行SQL语句

    db.commit()     # 提交到数据库执行

except:

    db.rollback()     # 发生错误时回滚

# 删除数据

sql = "DELETE FROM users WHERE age > '%d' " % (20)

try:    

    cursor.execute(sql)     # 执行SQL语句    

    db.commit()     # 提交到数据库执行

except:    

    db.rollback()     # 发生错误时回滚

# 关闭连接

db.close()

演示:

1-1 1-1

以上摘自 

1、《Python核心编程》

2、    python3-mysql

相关文章

  • Py3简单操作MySQL-1

    什么是数据库? 为什么用数据库? 要永久存储数据,可以用文件、关系型数据库和其他一些数据库变种。在大型项目时,关系...

  • Jmeter操作MySQL-1

    声明 此种操作MySQL的方法,适合自动化清理环境 1.mysql-connector-java-*.jar包选用...

  • py3 安装 pyspider 关于pycurl的报错问题解决

    py3安装 pyspider的时候,官方文档给出的安装方法很简单pip install pyspider 但是真正...

  • Mysql-1

    Lesson_18 MySql 1.数据库介绍 数据库是用来存放数据的,数据不是直接存放在数据库中的,数据库中存放...

  • MySQL-1

    环境:Ubuntu Linux 14.04 64 位版本 程序:mysql5.5、xface终端 1、在Ubunt...

  • Mysql-1

    一、数据库系统 数据库DataBase【DB】,指的是长期保存到计算机上的数据,按照一定顺序组织,可以被各种用户或...

  • 使用anaconda创建python3.5环境,搭建tensor

    1、创建3.5环境: conda creat -n py3 python=3.5 py3是我这个环境的名字,然后会...

  • punctuation与translate

    这两个都是python内置的模块,都是用于字符串操作,translate可以直接使用,但是在py3中需要有一个表格...

  • How to remove query from URL w/

    Py3 Note: this method is not working with URL like http:/...

  • python3.6的环境下如何安装lxml

    我之所以在python3.6的环境下安装lxml。寒大说py3更加简单,但是pycharm 3.6环境安装失败,还...

网友评论

      本文标题:Py3简单操作MySQL-1

      本文链接:https://www.haomeiwen.com/subject/acysjftx.html