数据库 --- 4 多表查询 ,Navicat工具 , pymysql模块

一.多表查询

  1.笛卡儿积 查询

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  2.连接

   语法:

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

   ①inner    显示可构成连接的数据

    mysql> select employee.id,employee.name,department.name as depart_name 

        from employee inner join department 
        on employee.dep_id=department.id;

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

   ②left    左连接:优先选择左表全部记录

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

   ③right   右连接:优先选择右表全部记录

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

   ④ 全连接:显示两个表的全部记录

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

用法实例:

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  3.子链接

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  ①带 in 关键字的子查询

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  ② 带比较运算符的子查询

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

   ③带 exists 的子查询

    在使用EXISTS关键字时,内层查询语句不返回查询的记录。而是返回一个真假值。True或False
      当返回True时,外层查询语句将进行查询;当返回值为False时,外层查询语句不进行查询。

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

二.Navicat 工具使用

  1.连接

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  2.建数据库

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  3,建表

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  4 。查看

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  5。导入与导出

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  6.查询

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

三.  pymysql 模块的使用

  1.基本语法

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  2.  增 ,删 ,改  要用  conn.commit( )

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  3. execute()   之sql 注入

错误现象:

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

bug 1:  知道用户 不知道密码

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  原因:--  是注释的意思,对后面的密码限制条件进行了注释

bug 2: 用户和密码 都不知道

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  原因:or 后面跟了一个永远为真的数据

解决方式;

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  4.获取插入的最后一条数据的自增ID

数据库 ---  4  多表查询  ,Navicat工具 ,  pymysql模块

  5.建库建表

import pymysql

# 建库和建表
con = pymysql.connect(host='localhost', user='root',
passwd='', charset='utf8',database="awesome")
cur = con.cursor()
# 开始建库
cur.execute("create database awesome character set utf8;")
# 使用库
cur.execute("use awesome;")
# 建表
cur.execute("create table blogs(id char(20) primary key,user_id char(20),name char(20));")
上一篇:Navicat工具、pymysql模块 sql注入


下一篇:Navicat工具、pymysql模块、数据备份