AI智能
改变未来

【MySQL】 基础操作及DDL数据定义语言


Mysql的使用

1)——连接数据库

C:\\Program Files\\MySQL\\MySQL Server 5.7\\bin>

net start mysql			(启动MySQL服务)net stop mysql			(关闭MySQL服务)mysql -uroot -p密码		(不建议这种情况)mysql -uroot -p密码					(推荐--安全)12345

注意事项:在开启MySQL服务时必须先关闭防火墙,否则会出现连接不到本地的错误

2)——常见命令

show databases;    显示数据库use dbname;        切换数据库show tables;       展示表

2、SQL

结构化查询语言、关系型数据库通用语言。
结束标识是 ;
字符串数据用引号
大小写不敏感

3)—— SQL的分类

  • DDL: 数据定义语言(结构)
    实现数据库对象(数据库,表,视图,索引等)的操作(创建,修改和销毁)
create   /   alter   /  drop1
  • DML: 数据操纵语言(数据)
    增删改
insert   /  delete  / update1
  • DQL: 数据查询语言
select1
  • TCL: (transaction)事务控制语言
commit   /   rollback(回滚)1
  • DCL: 数据控制语言(授权)
grant    /   revoke

数据定义语言,用于操作数据库对象的结构

  • 数据库的创建和销毁
# 创建数据库create database [if not exists] bd1906;#删除数据库drop database [if exists] bd1906;12345
  • 表的创建,修改和销毁
1. 创建表create table student(sid int,sname varchar(20),age int,gender varchar(10));# 查看表的状态desc student;2. 修改结构(添加字段,销毁字段,修改字段(字段名称,类型,长度,位置,约束等))alter table tname add/drop/change/modify  colname coltype... first|after* 添加字段追加字段alter table student add email varchar(20);添加到首列alter table student add phone char(11) first;指定位置:alter table student add card char(18) after sid;* 销毁字段alter table student drop card;* 修改字段alter table student modify colname 类型 约束...alter table student change 旧字段名称 新字段名称 类型 约束...# 修改字段名称alter table student change email semail varchar(20);# 修改字段的类型和长度alter table student modify sname varchar(50);# 修改位置alter table student modify semail varchar(20) after sname;3.销毁表drop table student;4.修改表的名称rename table student to stu;5.清空表(只清空数据,不改变结构)truncate table stu;delete,truncate和drop的区别?drop销毁表结构;truncate不改变结构,只清空数据和重置。12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  • 数据类型(仅限mysql)
数值类型:整数:int  / bigint浮点数:float(10,2): 长度是10,小数点后的位数是2double(16,4): 长度为16,小数点后的位数是4decimal(m,n): 金额等数据时必须使用decimal字符串类型:必须指明长度char(n): 固定长度varchar(n): 可变长度日期类型:date: 日期time: 时间datetime: 日期和时间timestamp: 时间戳其他类型:text: 文本类型blob: 二进制数据类型enum() / set()  / json()12345678910111213141516171819202122

4)—— 数据完整性

数据的准确性和可靠性

实体完整性
实体指的就是记录,就是保证记录是准确的,不重复的

  • 主键约束: 唯一而且不能为空(primary key)
# 场景1: 创建表的同时添加约束create table student(sid int primary key,sname varchar(20));create table student(sid int,sname varchar(20),primary key(sid));# 场景2: 表已经存在(主键字段绝对不能存在重复的数据)alter table stu add constraint PK_ID primary key (sid);# 注意:1.每张表必须有主键,但是有且只能有一个,允许有联合主键2.主键字段一般数据类型和长度尽可能小3.主键字段不要使用业务字段123456789101112131415161718
  • 唯一约束: 字段的值必须唯一
create table student(card char(18) unique)alter table stu add constraint UQ_CARD unique (card);1234
  • 主键自增:
    auto_increment: 默认从1开始每次增加1

5)—— 域完整性

域:字段

类型约束

  • not null:非空约束
  • default: 默认值

6)—— 引用完整性

其中一张表的字段取值需要依赖于另一张表

外键约束

alter table emp add constraint FK_DEPTNO foreign key(deptno) references dept(deptno);
赞(0) 打赏
未经允许不得转载:爱站程序员基地 » 【MySQL】 基础操作及DDL数据定义语言