MySQL学习:day02

目录

一.SQL语句

1.sql通用语法

2.SQL语句分类

二、DDL——数据库操作

1.查询

(1)查询所有数据库

(2)查询当前数据库

2.创建

(1)▲注意

<1>最简单的创建语句

<2>[IF NOT EXISTS]

(2)练习

题目一

题目二

(3)注意

3.删除

(1)删除数据库

(2)练习

题目一

4.使用

(1)使用数据库

(2)练习

题目一

(3)注意

三、DDL——表操作

1.查询

(1)查询当前数据库所有表

(2)查询表结构

代码演示

(3)查询指定表的创建语句

代码演示

(4)练习

2.创建

(1)创建表

(2)注意

(3)练习

题目一

(4)▲注意

3.数据类型

(1)数值类型:

▲注意

(2)字符串类型

​编辑

▲注意

练习

(3)日期时间类型:

练习

题目一

题目二

4.修改

(1)添加字段

练习

        题目一

(2)修改字段

a.修改某一字段的类型

b.修改字段名和字段类型

c.练习

(3)删除字段

练习

(4)修改表名

练习

5.删除

(1)删除表

▲注意

(2)删除表,并重新创建该表

练习

▲注意


一.SQL语句

1.sql通用语法

2.SQL语句分类

(1)DDL:定义数据语言,用来定义数据库对象(数据库,表,字段)

(2)DML:数据操作语言,用来对数据库中的数据进行增删改

(3)DQL:数据查询语言,用来查询数据库中表的记录

(4)DCL:数据控制语言,用来创建数据库用户、控制数据库的访问权限

二、DDL——数据库操作

1.查询

(1)查询所有数据库

(2)查询当前数据库

2.创建

(1)▲注意

<1>最简单的创建语句

CREATE DATABASE 数据库名。([ ]里面内容可以省略)

<2>[IF NOT EXISTS]

意思:如果该数据库存在则不执行任何操作,如果不存在则创建该数据库

(2)练习

  • 题目一

show databases;(后面要带分号,否则会输出错误)

结果:输出内容为系统自带的数据库

  • 题目二

创建数据库:create database itheima;

数据库中多了itheima数据库,创建成功!

(3)注意

指定字符集为“utf8mb4”,他可以存储4个字节的字符,而不建议制定字符集为“utf8”,因为他只能存储3个字节,而有些字符是四个字节。

3.删除

(1)删除数据库

(2)练习

题目一

删除数据库itheima:drop database itheima;

删除成功!

此时已经没有刚才创建的itheima数据库了。

4.使用

(1)使用数据库

(2)练习

题目一

现重新创建一下itheima数据库。

使用itheima数据库:use itheima;

数据库发生改变,已经切换到itheima数据库中了。

(3)注意

<1>如果忘记当前处于哪个数据库时,可以用:select database();

当前处于itheima数据库。

<2>如果想要切换数据库,只需要输入use 数据库名;即可。

三、DDL——表操作

1.查询

(1)查询当前数据库所有表

先进入数据库,然后才可以通过show tables;查询当前数据库中的所有表结构。

(2)查询表结构

代码演示

(3)查询指定表的创建语句

  • 代码演示

解释:可以看到创建表时的语言,除此之外还多了一些内容。

ENGINE=InnoDB是存储引擎。

DEFAULT CHARSET=utf8mb4是默认的字符集。

COLLATE=utf8mb4_0900_ai_ci是默认的排序规则。

(4)练习

当前表结构为空。

2.创建

(1)创建表

(2)注意

<1>[ ]中的内容为可选内容,最后一个字段后面没有逗号。

(3)练习

题目一

创建表中内容

创建成功!用show tables;验证如下:

意思是:在数据库itheima中的表有tb_user。

(4)▲注意

<1>mysql中字符串类型用varchar(长度)表示;

<2>在输入表中内容时,括号里面的内容用逗号分隔每一行内容,最后一行内容不加逗号;

<3>mysql语言以分号结束符

3.数据类型

分类数值类型、字符串类型、日期时间类型

(1)数值类型:

▲注意

        <1>有符号范围是允许出现负数时的取值范围,无符号范围是不允许出现负数时的范围。

        <2>精度:是指整个数值的长度;标度:是指小数位数。

                例如:123.45

                        精度:5;  标度:2

        <3>age TINYINT UNSIGNED表示:年龄age是小整数型无符号的范围。

        <4>score double(4,1)表示分数score是double类型,并且最多只能是100.0四位,小数保留1位。

(2)字符串类型

▲注意

<1>char(n)最大长度为n的定长字符串,未使用的空间将用空格补位,所以即使u存储1个字符的时候长度也为10;

<2>varchar(n)最大长度为n的变长字符串,存1个字符只占用1个空间,存几个字符就占几个空间。

<3>区别:char(10)性能好,varchar(10)性能相对较差。

练习

<1>当存储name时,用varchar(10),因为name是变长的,

<2>当存储sex时,用sex(1),因为性别无论男女都是1个字节。

(3)日期时间类型:

练习
题目一

描述一个人的生日,字符段birthday类型用什么?

答:birthday data;

题目二

答:

create table emp(

id int comment '编号',

workno varchar(10) comment '工号',

name varchar(10) comment '姓名',

sex char(1) comment '性别',

age tinyint unsigned comment '年龄',

idcard char(18) comment '身份证号',

entrydate date comment '入职时间'

) comment '员工表';

4.修改

(1)添加字段

练习
        题目一

                在emp表中添加新字段“昵称”为nickname,类型为varchar(20)

        

        添加成功!alter table emp add nickname varcher(20);

(2)修改字段
a.修改某一字段的类型

b.修改字段名和字段类型

c.练习

        将emp表中nickname字段名修改为username,类型修改为varchar(30)

先输入alter table emp nickname username varcher(30);修改字段名和类型,再输入desc emp;查看表结构是否修改成功。

修改成功!

(3)删除字段

练习

        将username删除

首先输入alter table emp drop username;删除字段,再输入desc emp;查看表结构。

删除成功!

(4)修改表名

练习

        将emp表的名称修改为employee.

先输入alter table emp rename to employee;修改表名称,在输入desc employee;查看

5.删除

(1)删除表

▲注意

        drop table if exists tb-user;意思是:如果存在tb_user表,则删除tb_user这张表,如果不存在也不报错。

(2)删除表,并重新创建该表

练习

▲注意

        使用truncate table employee;删除并重新创建表格,表格存在,但表格中的内容只用表结构,没有数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值