【测试基础03】

本期参考文献: 链接

一、安装mysql

1、安装mysql可以参考链接: 文章
2、安装mysql与python的工具
【测试基础03】_第1张图片
进行校验,查看是否安装成功
【测试基础03】_第2张图片

二、创建库

mycursor = mydb.cursor()
mycursor.execute("CREATE DATABASE ck")       执行语句创建库

在mysql库里可以看到创建的ck库
【测试基础03】_第3张图片

三、创建表

1、使用create创建表

import mysql.connector
mydb = mysql.connector.connect(
  host="localhost",
  user="root",
  passwd="westos",
  auth_plugin='mysql_native_password',
  database='ck'
)
mycurson=mydb.cursor()
mycurson.execute("create table customers (name varchar(255),address varchar(255) )")

【测试基础03】_第4张图片
2、创建主键,即给每列进行编号

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="root",
  passwd="westos",
  auth_plugin='mysql_native_password',
  database='ck'
)
mycurson=mydb.cursor()
mycurson.execute("CREATE TABLE customers (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), address VARCHAR(255))")

【测试基础03】_第5张图片

四、插入表格

INSERT INTO
对刚才建立表格进行插入

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="root",
  passwd="westos",
  auth_plugin='mysql_native_password',
  database='ck'
)
mycurson=mydb.cursor()
sql = "INSERT INTO customers (name ,address) values('ck1','china1') "    插入的语法
mycurson.execute(sql)
mydb.commit()

结果显示成功插入
【测试基础03】_第6张图片
如果插入多个数据可以用executemany

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="root",
  passwd="westos",
  auth_plugin='mysql_native_password',
  database='ck'
)
mycurson=mydb.cursor()

sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
val = [
  ('Peter', 'Lowstreet 4'),
  ('Amy', 'Apple st 652'),
  ('Hannah', 'Mountain 21'),
  ('Michael', 'Valley 345'),
  ('Sandy', 'Ocean blvd 2'),
  ('Betty', 'Green Grass 1'),
  ('Richard', 'Sky st 331'),
  ('Susan', 'One way 98'),
  ('Vicky', 'Yellow Garden 2'),
  ('Ben', 'Park Lane 38'),
  ('William', 'Central st 954'),
  ('Chuck', 'Main Road 989'),
  ('Viola', 'Sideway 1633')
]

mycurson.executemany(sql, val)

mydb.commit()

【测试基础03】_第7张图片

五、查询表

1、使用select查询表格的全部内容
fetchall()语法可以获取所有内容

import mysql.connector
mydb = mysql.connector.connect(
  host="localhost",
  user="root",
  passwd="westos",
  auth_plugin='mysql_native_password',
  database='ck'
)
mycurson=mydb.cursor()
mycurson.execute('SELECT * FROM customers')
results = mycurson.fetchall()
for x in results:
    print(x)

【测试基础03】_第8张图片
2、查询某个列
select后跟某个列名
【测试基础03】_第9张图片
【测试基础03】_第10张图片
3、查询某一行
使用fetchone()只显示某行

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="root",
  passwd="westos",
  auth_plugin='mysql_native_password',
  database='ck'
)
mycurson=mydb.cursor()
mycurson.execute('SELECT name,address FROM customers')
results = mycurson.fetchone()
for row in results:
    print(row)

4、筛选表格
使用where筛选
【测试基础03】_第11张图片
【测试基础03】_第12张图片
5、使用通配符筛选
%xx%代表对xx相关的内容都进行显示【测试基础03】_第13张图片【测试基础03】_第14张图片
注意为了防止sql注入,使用安全查询方式
【测试基础03】_第15张图片
【测试基础03】_第16张图片
7、排序
使用 ORDER BY 语句按升序或降序对结果进行排序。
ORDER BY 关键字默认按升序对结果进行排序。若要按降序对结果进行排序,请使用 DESC 关键字。
【测试基础03】_第17张图片
【测试基础03】_第18张图片

六、删除表格中的行

【测试基础03】_第19张图片

【测试基础03】_第20张图片
注意为了安全删除防止sql注入,使用安全删除方式
【测试基础03】_第21张图片
【测试基础03】_第22张图片

七、修改表格内容

【测试基础03】_第23张图片

【测试基础03】_第24张图片

你可能感兴趣的:(测试,mysql,数据库)