mysql复杂查询练习题_MySQL-注释-Navicat基本使用-复杂查询练习题-解题思路-pymysql操作数据库-SQL注入-05...

mysql语句注释

利用注释备注信息(注释用的6 也可以造成SQL注入)

-- 这是行注释,这一行从这里开始的SQL语句都不会被执行

# 这也是行注释,这一行从这里开始的SQL语句都不会被执行

/*

这是块注释,写在里面的SQL语句都不会被执行

*/

navicat 的基本使用

我们使用 navicat 这个数据库图形化界面管理软件来简化数据库操作,提高开发效率

特色(个人总结)

就现阶段用到而言

把许多数据库基本操作语句用 鼠标点点点 的方式完成,并且可以看到操作对应的 sql 语句

有语法提示

有关键字颜色标识,不容易打错字单词

模型功能(设计、分析数据关系十分便利)

导入导出功能十分强大

支持多种数据库服务器(可以保存连接,点击登录)

navicat 官方使用手册写的还是挺详细的,图文结合,想要详细了解可以戳过去看看

此部分仅作为个人 navicat 使用快速查阅区

有些部分比较简单,就只写了一个标题,表示必须步骤

可以支持很多种数据库,可视化客户端界面

与数据服务器建立连接

4333316d708f97fc625101aa0d19abf8.png

创建&打开数据库、表

创建

选中上一级对象右键新建...

数据库连接 > 数据库 > 数据表 > 表记录 (忽略其他对象)

打开

直接双击数据库、表即可(像windows操作文件目录一样)

修改操作表结构

修改表结构

a125b48a70aee42f35b0629fc043c879.png

查询修改操作表数据

a5fcc164a2c5f0f6ac2e1dae90d210a6.png

基本语句对应的操作

忘了这里是打算写什么了,先空着吧...

模型 ***** 特色功能

从数据库建立模型

a0b6686eb8a483bdb5e4fd0f83e122ab.png

模型页面基本操作

常用功能个人小结

鼠标放在表上可以看到与之关联的表

鼠标放在线上可看到关联关系(外键)

双击表可以改表结构

右键重命名可以改表名

右下角有历史记录区,可回退

如图标注移动与整理格式视图功能

与库表结构之间的相互转换

d891fe631cd48320d6f7a35e761f23d8.png

用模型设计数据库并导出

打开模型视图

7d0d376c2746c9cf6879e8af9380080e.png

在工作区创建表

0ee4f9bd7b17586dcfb60bcfb9f65e1b.png

创建表字段关联(外键)

44bff48d5efd33f3d01829d60d5ac366.png

将模型导出

可以导出数据库,也可导出表

42caf166ea242310336f823e24554313.png

结构、数据导入导出

导出

注意对象(库、表)

dc48240fc29f80186a9fc0232a01a992.png

导入

一般导出的sql 文件中都有drop ... if exisists .... ,用之前慎重

0dd8399637a037b45583bd9fab72bb77.png

09804361b982770a99ca4e5543dbbdad.png

附属小功能

刷新小按钮

点击刷新小图标

11396464.html 或者选中对应对象右键刷新

查看操作对应sql语句

很多地方都有这个SQL预览

e01296e236d4c7a523b1401172aa72d5.png

执行时间查看

可以对自己的 sql 语句性能有个粗略评估

37caf44609bf611ded0e3648f1cd5f9c.png

手动筛选数据

93c5c6eb032271a2c90bb66cdc9d9f16.png

练习

数据准备

create database day38;

create table test(

id int primary key auto_increment,

name varchar(32),

sex enum('male', 'female', 'others') default 'male' not null

);

insert into test values(''), ('');

使用SQL语句导入表结构与数据

SET NAMES utf8;

SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------

-- Table structure for `class`

-- ----------------------------

DROP TABLE IF EXISTS `class`;

CREATE TABLE `class` (

`cid` int(11) NOT NULL AUTO_INCREMENT,

`caption` varchar(32) NOT NULL,

PRIMARY KEY (`cid`)

) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;

-- ----------------------------

-- Records of `class`

-- ----------------------------

BEGIN;

INSERT INTO `class` VALUES ('1', '三年二班'), ('2', '三年三班'), ('3', '一年二班'), ('4', '二年九班');

COMMIT;

-- ----------------------------

-- Table structure for `course`

-- ----------------------------

DROP TABLE IF EXISTS `course`;

CREATE TABLE `course` (

`cid` int(11) NOT NULL AUTO_INCREMENT,

`cname` varchar(32) NOT NULL,

`teacher_id` int(11) NOT NULL,

PRIMARY KEY (`cid`),

KEY `fk_course_teacher` (`teacher_id`),

CONSTRAINT `fk_course_teacher` FOREIGN KEY (`teacher_id`) REFERENCES `teacher` (`tid`)

) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;

-- ----------------------------

-- Records of `course`

-- ----------------------------

BEGIN;

INSERT INTO `course` VALUES ('1', '生物', '1'), ('2', '物理', '2'), ('3', '体育', '3'), ('4', '美术', '2');

COMMIT;

-- ----------------------------

-- Table structure for `score`

-- ----------------------------

DROP TABLE IF EXISTS `score`;

CREATE TABLE `score` (

`sid` int(11) NOT NULL AUTO_INCREMENT,

`student_id` int(11) NOT NULL,

`course_id` int(11) NOT NULL,

`num` int(11) NOT NULL,

PRIMARY KEY (`sid`),

KEY `fk_score_student` (`student_id`),

KEY `fk_score_course` (`course_id`),

CONSTRAINT `fk_score_course` FOREIGN KEY (`course_id&

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值