mysql数据库

718 阅读8分钟

今天的总结,今天我们讲了MYSQL数据库,讲了常用的数据库有哪些,怎么卸载mysql,还有数据库语言分类,还有DDL,DML,DQL,DCL,还有建立表格,增 , 删, 改,查。

讲了常用的数据库有哪些,

oracle,mysql,sqlserver,redis,sqlite,mongodb,neo4j,计算机用的最多的师sqlserver,redis用的也师比较多的

NAVICAT PREMIUM

绿色的图标:seiko数据库 红色的图标是:oracle数据库 黄色的图标:支持多种数据库

怎么卸载mysql

1.在控制面版中找到mysql的服务删除 2.mysql安装所有的路径进行删除文件 3.在运行输入regedit进行对注册表的删除 4.重启电脑

##多次安装无法正常安装的原因是: 1.my.ini 文件没有删除 2.注册表有对应的mysql服务没有删除 3.之前的mysqld的3306的被占用

3个重点DDL, DML,DQL

数据库语言分类:

DDL数据库定义语音 :对库的增删改查 DML 数据操作语音 :对表的增删改 DQL 数据库上的语言 :对库和表结构模糊查询,分页查询,子查询,多表查询,聚合函数,分类,分组,排序等

DCL 数据控制语言

如果昨天的start中修改过数据库的密码,今天需要用该国的密码

##是对数据库和创建表的操作的DDL语句。

--DDL 数据库定义语言对数据库的增,删,改

创建数据库

create dutabase 1907Text (text可以加也可以不加)

ALTER 1907text taname

使用

use 1907text

展示所有库名

show databases use mysql show TAVKES 展示所有表名

--修改数据的编码格式

create database 1907text character set gbk

--删除库

drop database 1903text

创建crate 删除drop 改ALTER

对表的操作 创建 修改 删除 语速条件 数据类型

--数据类型:数据类型intlong double float

--时间类型 time datetime year timestanp

--文本类型 text

--对货币的类型 Decimnl Numric

字符类型 char varchar (固定子节数 自动去识别字节数达到少占资源)

##--数据类型的约束条件 primary key 立键 都是自增 unqiue 唯一 not null defualt默认值 auto_increment自增

##--创建表 create table users( user_id int prIMARY key auto_increment user_name varchar(20), user_idcard uarchar(20)unique, user_sex char(2), user_phne varchar(20), user_address varchar(50) )

--差看表结构(用的不多)

desc users

--差看创建表的sql语句

show CREATE table users

-- 对表结构的修改 ALTER

ALTER TABLE users add user_hobbx varchar (20)

##--对表格结构的添加字段 ACTER TABLE USERS add user_hobby varchar(20)

##--对表结构的删除字段方式 drop ALTER table users drop user_addres

--DML 数据操作语言 增改

##--方式一 inserr into usserscuser_name,user_id(urd) values('名字',1000)身份后4位 ##--方式2所有字段都添加内容 insert into users VALUES('名字',) user——name.varchar(20), user_idcard varchar(20) UNIQUE, user_sex char(2), user_phne varchar(20) user_addvess varchar(50) ##--方式3 批量添加数据多条数据用隔开 insert into users VALUES(3,‘’,‘’)

##-改 ##--只修改字段值没有条件 update users set user_name=‘姓名’ ##--如果对指定数据需要添加 where关键子 update users set user——name =‘mingzhi’where user_idchr(287)

##--删除 ##--逻辑删除 修改状态 比如银行卡 0--1 在开发过程中不存在真实人物理删除 --真是删除 将数据冲数据库中完成删除 --1是存在 --0不存在(模拟删除用户)关联到查询结果 UPDATE users set user_started=1 where_user_id=2

--delete删除表中的所有数据

DELETE users where user_idcard=5819

DELETE from users

##--指定数据的删除 DELETE from users where user_id=2

还有mysql基本语句总结

[查] - 查看所有数据库

1 SHOW DATABASES;

[增] - 创建新数据库

1 CREATE DATABASE 库名;

[查] - 查看创建数据库的SQL的语句

1 SHOW CREATE DATABASE 库名;

[用] - 使用数据库

1 USE 库名;

[改] - 修改数据库的编码结构

1 ALTER DATABASE 库名 DEFAULT CHARACTER SET 编码结构;

[删] - 删除数据库

1 DROP DATABASE 库名;

[查] - 查看当前使用的数据库

1 SELECT DATABASE(); 表操作

[查] - 查看该数据库所有数据表

1 SHOW TABLES;

[查] - 查看表结构

1 DESC 表名;

[查] - 查看创表语句

1 SHOW CREATE TABLE 表名;

[查] - 查看引擎

1 SHOW ENGINES;

[增] - 创建新数据表

1 CREATE TABLE 表名 ( 2

列名1 数据类型 [约束 注释],

3

列名2 数据类型 [约束 注释],

4

列名3 数据类型 [约束 注释]

5

) CHARACTER SET 编码结构; 表的约束 约束条件 含义 UNSIGNED 无符号约束 NULL 空约束 NOT NULL 非空约束 AUTO_INCREMENT 自动增长约束 PRIMARY KEY 主键约束 FOREIGN KEY 外键约束 DEFAULT 默认约束 UNIQUE 唯一约束 CHARACTER SET name 指定字符集

MySQL的数据类型

数值类型 类型 大小 范围(有符号) 范围(无符号) 用途 TINYINT 1字节 (-128, 127) (0, 255) 小整数值 SMALLINT 2字节 (-32768, 32767) (0, 65535) 大整数值 MEDIUMINT 3字节 (-8388608, 8388607) (0, 16777215)

大整数值

INT或INTEGER 4字节 (-2147483648, 2147483647) (0, 4294967295) 大整数值 BIGINT 8字节 (-9 233 372 036 854 775 808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615)

极大整数值

FLOAT 4字节 (-3.402 823 466 E+38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38) 0,(1.175 494 351 E-38,3.402 823 466 E+38)

单精度浮点数值

DOUBLE 8字节 (-1.797 693 134 862 315 7 E+308,-2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 双精度浮点数值 DECIMAL 对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2 依赖于M和D的值 依赖于M和D的值 小数值

日期类型

类型 大小 范围 格式 用途 DATE 3 1000-01-01/9999-12-31 YYYY-MM-DD 日期值 TIME 3 '-838:59:59'/'838:59:59' HH:MM:SS 时间值或持续时间 YEAR 1 1901/2155 YYYY 年份值 DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59:59 YYYY-MM-DD HH:MM:SS 混合日期和时间值 TIMESTAMP 4 1970-01-01 00:00:00/2038. 结束时间是第 2147483647 秒,北京时间 2038-1-19 11:14:07,格林尼治时间 2038年1月19日 凌晨 03:14:07 YYYYMMDD HHMMSS 混合日期和时间值,时间戳

字符串类型

类型 大小 用途 CHAR 0-255字节 定长字符串 VARCHAR 0-65535 字节 变长字符串 TINYBLOB 0-255字节 不超过 255 个字符的二进制字符串 TINYTEXT 0-255字节 短文本字符串 BLOB 0-65 535字节 二进制形式的长文本数据 TEXT 0-65 535字节 长文本数据 MEDIUMBLOB 0-16 777 215字节 二进制形式的中等长度文本数据 MEDIUMTEXT 0-16 777 215字节 中等长度文本数据 LONGBLOB 0-4 294 967 295字节 二进制形式的极大文本数据 LONGTEXT 0-4 294 967 295字节 极大文本数据

注:

一个汉字占多少长度与编码有关: UTF-8:一个汉字=3个字节 GBK:一个汉字=2个字节

[删] - 删除数据表

1 DROP TABLE 表名;

[删] - 删除列

1 ALTER TABLE 表名 DROP 列名;

[改] - 插入一个新列

1 ALTER TABLE 表名 ADD 列名 列数据类型 [AFTER 插入位置]; 2 ALTER TABLE 表名 ADD 列名 列数据类型 [FIRST 插入位置];

[改] - 修改已有列类型等

1 ALTER TABLE 表名 MODIFY 列名 新类型 [新参数 约束];

[改] - 修改列名

1 ALTER TABLE 表名 CHANGE 旧列名 新列名 新类型 新参数;

[改] - 修改表名

1 ALTER TABLE 旧表名 RENAME 新表名; 记录操作

[增] - 插入记录**

1 INSERT INTO 表名 (列名1, 列名2, 列名3,......) VALUES 2 (数据, 数据, 数据,......), 3 (数据, 数据, 数据,......), 4 (数据, 数据, 数据,......), 5 (数据, 数据, 数据,......); [查] - 查找记录***

1

SELECT 列名1, 列名2,...... FROM 表名 [WHERE 条件]; WHERE 条件; <条件表达式> GROUP BY 列名 [ASC/DESC]; <查询结构分组>(ASC升序,DESC降序) HAVING 条件; <过滤组> ORDER BY 列名 [ASC/DESC]; <排序>(ASC升序,DESC降序) LIMIT M,N; <限制查询结果返回数量>(从m+1行开始,返回n行)

[改] - 修改记录

1 UPDATE 表名 SET 列名=新值 WHERE 更新条件;

[删] - 删除记录

1 DELETE FROM 表名 WHERE 删除条件;

[删] - 删除记录并清空主键记录

1 TRUNCATE TABLE 表名;