MySQL数据库(2)_MySQL数据库和数据库表操作语句

时间:2022-06-07 06:43:29

一、关于数据库操作的sql语句

-- 1.创建数据库(在磁盘上创建一个对应的文件夹)
create database [
if not exists] db_name [character set xxx]

-- 2.查看数据库
show databases;查看所有数据库
show create database db_name; 查看数据库的创建方式

-- 3.修改数据库
alter database db_name [character
set xxx]

-- 4.删除数据库
drop database [
if exists] db_name;

-- 5.使用数据库
切换数据库 use db_name;
-- 注意:进入到某个数据库后没办法再退回之前状态,但可以通过use进行切换
查看当前使用的数据库
select database();

二、关于数据表操作的sql语句

创建一张数据库表

-- 语法
create table tab_name(
field1 type[完整性约束条件],
field2 type,
...
fieldn type
)[character
set xxx];

完整性约束条件:

 /* 约束:
primary key (非空且唯一) :能够唯一区分出当前记录的字段称为主键!
unique
not null
auto_increment :自增字段,用于主键字段,主键字段必须是数字类型
*/

示例:

-- 创建一个员工表employee

create table employee(
id
int primary key auto_increment ,
name varchar(
20),
gender bit
default 1, -- gender char(1) default 1 ----- 或者 TINYINT(1)
birthday date,
job varchar(
20),
salary
double(4,2) unsigned,
resume text
-- 注意,这里作为最后一个字段不加逗号
);

查看表信息:

desc tab_name                       #查看表结构
show columns
from tab_name #查看表结构
show tables #查看当前数据库中的所有的表
show create table tab_name #查看当前数据库表建表语句

修改表信息:

-- (1)增加列(字段)
alter table tab_name add [column] 列名 类型[完整性约束条件][first|after 字段名];
alter table user add addr varchar(
20) not null unique first/after username;
#添加多个字段
alter table users2
add addr varchar(
20),
add age
int first,
add birth varchar(
20) after name;

-- (2)修改一列类型
alter table tab_name modify 列名 类型 [完整性约束条件][first|after 字段名];
alter table users2 modify age tinyint
default 20;
alter table users2 modify age
int after id;

-- (3)修改列名
alter table tab_name change [column] 列名 新列名 类型 [完整性约束条件][first|after 字段名];
alter table users2 change age Age
int default 28 first;

-- (4)删除一列
alter table tab_name drop [column] 列名;
-- 思考:删除多列呢?删一个填一个呢?
alter table users2
add salary
float(6,2) unsigned not null after name,
drop addr;

-- (5)修改表名
rename table 表名 to 新表名;

-- (6)修该表所用的字符集
alter table student character
set utf8;

删除表:

drop table tab_name;