mysql,数据库和表的核心语句

复制代码
一.库操作

1.创建库
	create database if not exists 库名  default 字符集 default 校对规则

2.删除库
	drop database if exists 库名

3.修改库的,字符集,校对规则
	alter databse 库名  default 字符集 default 校对规则

4.查看当前使用的库
	seclect databse();

5.查看库
	show databases;

6.使用库
	use 库名;



二.表操作

1.创建表

	create table 库名.表名 (
	    字段 类型  约束,
	    ...
	    约束
	);

	约束:
	1.not null
	2.default:给字段设置默认值 default 'aaa'
	3.unique:该字段值唯一性
	4.primary key:主键,联合auto_increment使用
	5.auto_increment:自增
		(1)create table 库名.表名 (
		    	字段 类型  primary key auto_increment,
		    	...
		    	
		);

		(2)create table 库名.表名 (
		    	字段 类型,
		    	...
		    	 primary key(字段)
		);
	
		(3)添加删除主键

			alter table 库.表 add primary key(字段)
			alter table 库.表 drop primary key

		(4)复合主键:多个字段一起做主键,多个字段的值不完全相同

			create table 库名.表名 (
			    	字段1 类型,
				字段2 类型,
			    	...
			    	primary key(字段1,字段2)
			);

	5.foreign key:外键

		(1)create table db1.gz(
			字段 类型 约束,
			foreign key(字段) references 其它库.其它表(字段) 
			on update cascade  #级联更新
			on delete cascade  #级联删除
			);
	 	#级联更新, 当被引用的 yg 表中的 yg_id 列的值更新时,gz 表中的 gz_id 列的值也会相应地更新

		(2)删除外键
			show create table 库.表;

			alter table 库.表 drop foreign key 外键名;

		(3)添加外键
			alter table 库.表 
			add foreign key(字段) references 其它库.其它表(字段)
			on update cascade
			on detete cascade

2.查看库里面有哪些表
	show tables from 库名

3.查看表字段有哪些
	desc 库名.表名;

4.查看建库,建表的完整语句
	show create  database  库名
	show create  table     表名

5.修改表
	alter table 库名.表名 动作 操作

	动作:
	(1)rename:重命名表


	(2)drop:删除表字段


	(3)add:添加新字段
		alter table 表名 add 字段 字段类型 after 字段1,:在字段1后添加字段
		alter table 表名 add 字段 字段类型 first: 在最前面添加字段

	(4)change:修改字段名
		alter table 表名 change 旧字段名 新字段名 新数据类型;

	(5)modify:修改字段类型
		alter table 表名 modify 字段名 新数据类型;

6.复制表
	(1)select复制表结构和数据
		create table 库1.表1 select 字段 from 库2.表2 where 条件
	
	(2)like复制表结构
		create table 库1.表1 like 库2.表2

一.库操作

1.创建库

create database if not exists 库名 default 字符集 default 校对规则

2.删除库

drop database if exists 库名

3.修改库的,字符集,校对规则

alter databse 库名 default 字符集 default 校对规则

4.查看当前使用的库

seclect databse();

5.查看库

show databases;

6.使用库

use 库名;

二.表操作

1.创建表

create table 库名.表名 (

字段 类型 约束,

...

约束

);

约束:

1.not null

2.default:给字段设置默认值 default 'aaa'

3.unique:该字段值唯一性

4.primary key:主键,联合auto_increment使用

5.auto_increment:自增

(1)create table 库名.表名 (

字段 类型 primary key auto_increment,

...

);

(2)create table 库名.表名 (

字段 类型,

...

primary key(字段)

);

(3)添加删除主键

alter table 库.表 add primary key(字段)

alter table 库.表 drop primary key

(4)复合主键:多个字段一起做主键,多个字段的值不完全相同

create table 库名.表名 (

字段1 类型,

字段2 类型,

...

primary key(字段1,字段2)

);

5.foreign key:外键

(1)create table db1.gz(

字段 类型 约束,

foreign key(字段) references 其它库.其它表(字段)

on update cascade #级联更新

on delete cascade #级联删除

);

#级联更新, 当被引用的 yg 表中的 yg_id 列的值更新时,gz 表中的 gz_id 列的值也会相应地更新

(2)删除外键

show create table 库.表;

alter table 库.表 drop foreign key 外键名;

(3)添加外键

alter table 库.表

add foreign key(字段) references 其它库.其它表(字段)

on update cascade

on detete cascade

2.查看库里面有哪些表

show tables from 库名

3.查看表字段有哪些

desc 库名.表名;

4.查看建库,建表的完整语句

show create database 库名

show create table 表名

5.修改表

alter table 库名.表名 动作 操作

动作:

(1)rename:重命名表

(2)drop:删除表字段

(3)add:添加新字段

alter table 表名 add 字段 字段类型 after 字段1,:在字段1后添加字段

alter table 表名 add 字段 字段类型 first: 在最前面添加字段

(4)change:修改字段名

alter table 表名 change 旧字段名 新字段名 新数据类型;

(5)modify:修改字段类型

alter table 表名 modify 字段名 新数据类型;

6.复制表

(1)select复制表结构和数据

create table 库1.表1 select 字段 from 库2.表2 where 条件

(2)like复制表结构

create table 库1.表1 like 库2.表2

相关推荐
+VX:Fegn08959 分钟前
计算机毕业设计|基于springboot + vue图书管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
cq林志炫12 分钟前
MySQL 英文逗号隔开的数据如何模糊精确查询
mysql
杨云龙UP1 小时前
MySQL 8.0.x InnoDB 写入链路优化:Redo Log 与 Buffer Pool 扩容与缓冲区调优实战记录-20251029
linux·运维·数据库·sql·mysql
黄俊懿2 小时前
【深入理解SpringCloud微服务】Seata(AT模式)源码解析——开启全局事务
java·数据库·spring·spring cloud·微服务·架构·架构师
我命由我123452 小时前
python-dotenv - python-dotenv 快速上手
服务器·开发语言·数据库·后端·python·学习·学习方法
繁星蓝雨2 小时前
Qt优雅的组织项目结构三(使用CMakeLists进行模块化配置)——————附带详细示例代码
开发语言·数据库·qt
Jerry.张蒙3 小时前
SAP业财一体化实现的“隐形桥梁”-价值串
大数据·数据库·人工智能·学习·区块链·aigc·运维开发
无名修道院3 小时前
DVWA 靶场搭建:Windows11(phpstudy 搭建)(步骤 + 截图 + 常见问题)
数据库·网络安全·渗透测试·靶场·php·dvwa·phpstudy
UCoding5 小时前
新能源技术面试 -- 给出一套mysql备份容灾方案
mysql·面试·主从
CodeAmaz5 小时前
MySQL 事务隔离级别详解
数据库·mysql·事务隔离级别