数据库 Mysql
SQL语言
- DDL:数据定义语言。定义逻辑数据库,表、列,使用关键字:create、alter(修改)、drop(删除)
- DCL:数据控制语言,定义操作用户以及为其分配属性
- DML:数据操作语言,操作数据的,可以添加(inster)、修改(update)、删除(delete)
- DQL:数据查询语言,用来查询数据,使用select…from..where /group by/order by…
数据库操作的相关语句
创建数据库(db_demo):
- create database db_demo;
- create database db_demo character set 编码集;
查看数据库:show databases;
- 查看指定的数据库 :show databases db_demo;
- 删除数据库:drop db_demo;
- 切换数据库 :use db_demo;
- 查看当前正在使用的数据库:select database();
表操作相关SQL语句
创建表
create table 表明(
列名1 数据类型(长度)[约束],
列名2 数据类型(长度)[约束],
列名n 数据类型(长度)[约束]
(最后一列后面没有逗号)
);
创建学生信息表
creat table student(
name varchar(100),
age int,
sex char(1)
);
表student
- 查看数据库中的表 show tables;
- 查看表结构 desc student;
- 删除表 drop table student;
修改表结构
查看表结构:desc student;
查看数据库的编码:show variables like ‘character%’;
- 修改表名:rename table person to student
- 修改表的字符集:alter table student character set utf8;
- 添加属性列:alter table student add age int
- 删除属性列:alter table student drop age ;
- 修改属性列的类型和长度并加约束条件:alter table student modify
desc
varchar(20) not null; - 修改属性列的列名:alter table student change
desc
description varchar(30)是将desc名字改成description。
数据类型
注意:char和varchar的区别,都表示“字符串”,在MySQL中没有“字符类型”。
- char表示 “定长的字符串”,在实际数据的长度内没有超过,则自动添加空格补全,不够则截取到字符串长度的内容。
- varchar表示 “可变的的字符串”
数据的平均长度相差很小或基本相同时选择char;相差很大则选择varchar。
数据库操作语句 DML
- 添加数据:
- insert into 表名 values(值1、值2、….)
- insert into 表名 (字段1,字段2,…) values(值1,值2,…
- )
- 删除数据:delete from 表名 where 条件;
- 修改数据:update 表名 set 列名=新值,…[where 条件]
数据库约束
- 主键约束:promary key
- 删除主键约束:ALTER TABLE Persons DROP PRIMARY KEY
- 自动增长:auto_increment
- 非空约束:not null
唯一约束:UNIQUE
1.删除唯一约束: ALTER TABLE Persons DROP INDEX 名称
- 外键约束:FOREIGN KEY