SQL笔记MySQL基础

41次阅读

共计 1721 个字符,预计需要花费 5 分钟才能阅读完成。

SQL 基本语句

数据库操作

# 创建数据库
create database dbname;

# 创建字符集为 UTF8 的数据库
create database dbname charset=utf8;

# 切换数据库
use dbname

# 查看当前使用哪个数据库
select database();

# 删除数据库
drop database dbname;

表操作

查看当前数据库中所有表

show tables;

创建表

# 格式
create tables tbname(字段 1 数据类型 [完整性约束条件], 字段 2 数据类型 [完整性约束条件],...);

#如:create table students(
    id int auto_increment primary key,
    name varchar(16) not null
);

删除表

drop table tbname;

查看表结构

desc tbname;

修改表

## 修改表名
alter table 旧表名 rename [to] 新表名;
## 或者
rename table 旧表名 to 新表名;

## 修改字段名
alter table tbname change 旧字段名 新字段名 新数据类型;

## 修改字段数据类型
alter table tbname modify 字段名 数据类型;

## 添加字段
alter table tbname add 新字段名 数据类型 [约束条件] [first|after 已存在字段名];

## 删除字段
alter table tbname drop 字段名;

## 修改字段的排序
alter table tbname modify 字段名 1 数据类型 first |after 字段名 2 

说明:
添加字段命令中,firstafter 已存在的字段名 都是可选参数,first 用于将新添加的字段设置为表的第一个字段,after 用于将新添加的字段添加到指定的 ’ 已存在的字段名 ’ 的后面。
修改字段位置命令中,字段名 1 是要修改位置的字段,数据类型也是字段名 1 的数据类型,first 与 afer 与上诉说明一样。

查看表创建语句

show create table tbname;

表的约束

为了防止数据表中插入错误的数据,在 MYSQL 中定义了一些维护数据库完整性的规则,即表的约束,针对表中字段进行限制,常见的约束条件如下:

  • PRIMARY KEY 主键约束,用于唯一标识对应的记录
  • FOREIGN KEY 外键约束
  • NOT NULL 非空约束
  • UNIQUE 唯一性约束
  • DEFAULT 默认值约束,用于设置字段的默认值

主键约束是通过 primary key 定义的,它可以唯一标识表中的记录,好比身份证可以标识人的身份。
主键约束分为单字段主键 (由一个字段构成的主键) 和多字段主键(多个字段构成的主键):

## 创建数据表,并设置 id 作为主键
create table example01(
    id int primary key,
    name varchar(16),
    grade float
);

## 创建数据表,并设置 stu_id 和 course_id 共同作为主键
create table example02(
    stu_id int,
    course_id int,
    grade float,
    primary key(stu_id,course_id)
);

非空约束指字段的值不能为 NULL,通过 not null 进行定义:

## 创建数据表,将 name 字段设置为非空
create tbale example03(
    id int primary key,
    name varchar(16) not null,
    grade float
);

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

## 创建数据表,将 stu_id 字段设置唯一约束
create table example04(
    id int primary key,
    stu_id int unique,
    name varchar(16) not null
);

默认约束用于将数据表中的字段指定默认值,当在表中插入数据的时候,如果没有为这个设置了默认约束的字段赋值,那么会 MYSQL 会自动为这个字段插入默认值,默认值通过 DEFAULT 关键字定义

## 创建数据表,并为 grade 字段设置默认值为 10
creare table example05(
    id int primary key,
    name varchar(16) not null,
    grade float default 10
);

正文完
 0