MYSQL数据库------10月4号学习内容

2021/10/6 2:11:13

本文主要是介绍MYSQL数据库------10月4号学习内容,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

MYSQL数据库------10月4号学习内容

数据库的数据类型

整数类型可分为5种,分别是TINYINT、SMALUNT、MEDIUMINT、INT和 BIGINT

在MySQL数据库中使用浮点数和定点数来存储小数。浮点数类型有:FLOAT,DOUBLE,定点数则只有一种:DECIMAL(M,D)。

注:M为数据长度,D为小数点后的长度。

在MySQL中常用CHAR 和 VARCHAR 表示字符串。两者不同的是:VARCHAR存储可变长度的字符串。

文本类型用于表示大文本数据,包括四种:TINYTEXT,TEXT,MEDIUMTEXT,LONGTEXT。

MySQL提供的表示日期和时间的数据类型分别是 :YEAR、DATE、TIME、DATETIME 和 TIMESTAMP。

在MySQL中常用BLOB存储二进制类型的数据,包括四种:TINYBLOB,BLOB,MEDIUMBLOB,LONGBLOB。

数据库的基本操作

创建数据库

create database dh1;  //(dh1为数据库名称,以下同理)

查看该数据库

show create database dh1;

删除数据库

drop database dh1;

查看所有数据库

show databases;

将数据库字符集更改

alter database dh1 character set ghb1;

切换数据库

use dh1;

查看当前使用数据库

select database();

数据表的基本操作

创建数据表

create table student(

     字段 字段类型,

     字段 字段类型

);

查看数据表

show create table student;       (基本信息)
     desc student;             (字段信息)

修改数据表

修改表名

alter table student rename to stu;

修改字段名

alter table stu change name sname varchar(10);

修改字段数据类型

alter table stu modify sname int;

增加字段

alter table stu add address varchar(100);

删除字段

alter table stu drop address;

删除数据表

drop table stu;

数据表的约束

\1. 主键约束

主键约束即primary key用于唯一的标识表中的每一行。被标识为主键的数据在表中是唯一的且其值不能为空。

\2. 非空约束

非空约束即 NOT NULL指的是字段的值不能为空。

\3. 默认值约束

默认值约束即DEFAULT用于给数据表中的字段指定默认值,即当在表中插入一条新记录时若未给该字段赋值,那么,数据库系统会自动为这个字段插人默认值。

\4. 唯一性约束

唯一性约束即UNIQUE用于保证数据表中字段的唯一性,即表中字段的值不能重复出现

\5. 外键约束

外键约束即FOREIGN KEY常用于多张表之间的约束。基本语法如下:

– 在创建数据表时语法如下:

CONSTRAINT 外键名 FOREIGN KEY (从表外键字段) REFERENCES 主表 (主键字段)

– 将创建数据表创号后语法如下:

ALER TABLE 从表名 ADD CONSTRAINT 外键名 FOREIGN KEY (从表外键字段) REFERENCES 主表 (主键字段);

示例:学生表作为主表,班级表作为副表设置外键, MySQL命令:

alter table class add constraint fk_class_studentid foreign key(studentid) references student05(id);

删除外键

alter table 从表名 drop foreign key 外键名;

注意数据一致性

数据表插入数据

为表中所有字段插入数据

INSERT INTO 表名(字段名1,字段名2,...) VALUES (值 1,值 2,...);

为表中指定字段插入数据

INSERT INTO 表名(字段名1,字段名2,...) VALUES (值 1,值 2,...); (对想插入的数据指定即可)

同时插入多条数据

INSERT INTO 表名 [(字段名1,字段名2,...)]VALUES (值 1,值 2,…),(值 1,值 2,…),...;

数据表更新数据

更新部分数据

UPDATE 表名 SET 字段名1=值1[,字段名2 =值2,…] [WHERE 条件表达式];

更新全部数据

UPDATE 表名 SET 字段名=值1;

数据表删除数据

删除部分数据

DELETE FROM 表名 [WHERE 条件表达式];

删除全部数据

DELETE FROM 表名;
##DELETE和TRUNCATE的区别

DELETE语句后可跟WHERE子句,可通过指定WHERE子句中的条件表达式只删除满足条件的部分记录;但是,TRUNCATE语句只能用于删除表中的所有记录。

使用TRUNCATE语句删除表中的数据后,再次向表中添加记录时自动增加字段的默认初始值重新由1开始;使用DELETE语句删除表中所有记录后,再次向表中添加记录时自动增加字段的值为删除时该字段的最大值加1

DELETE语句是DML语句,TRUNCATE语句通常被认为是DDL语句

数据库的简单查询

查询所有字段(方法不唯一只是举例)

查询所有字段 MySQL命令:

select * from student;

查询指定字段MySQL命令:

select sid,sname from student;

常数的查询

在SELECT中除了书写列名,还可以书写常数。可以用于标记
常数的查询日期标记 MySQL命令:

select sid,sname,'2021-10-04' from student;

从查询结果中过滤重复数据

在使用DISTINCT 时需要注意:
在SELECT查询语句中DISTINCT关键字只能用在第一个所查列名之前。
MySQL命令:

select distinct gender from student;

算术运算符

在SELECT查询语句中还可以使用加、减、乘、除运算符。
查询学生10年后的年龄 MySQL命令:

 select sname,age+10 from student;

函数

聚合函数

count();

sum();

min();

max();

avg();

时间函数:

SELECT NOW();

SELECT DAY (NOW());

SELECT DATE (NOW());

SELECT TIME (NOW());

SELECT YEAR (NOW());

SELECT MONTH (NOW());

SELECT CURRENT_DATE();

SELECT CURRENT_TIME();

SELECT CURRENT_TIMESTAMP();

SELECT ADDTIME('15:12:34','23:08:07');

SELECT DATE_ADD(NOW(),INTERVAL 1 DAY);

SELECT DATE_ADD(NOW(),INTERVAL 1 MONTH);

SELECT DATE_SUB(NOW(),INTERVAL 1 DAY);

SELECT DATE_SUB(NOW(),INTERVAL 1 MONTH);

SELECT DATEDIFF('2021-10-07','2021-10-04');

字符串函数

–连接函数

SELECT CONCAT ()--SELECT INSTR ();

–统计长度

SELECT LENGTH();

数学函数

– 绝对值

SELECT ABS(-136);

– 向下取整

SELECT FLOOR(3.14);

– 向上取整

SELECT CEILING(3.14);


这篇关于MYSQL数据库------10月4号学习内容的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程