数据库语言总结归纳-不定期更新

[]代表可选

数据库操作

创建数据库

create {database} [if not exists] db_name

使用数据库

use db_name

创建表前记得要指定是哪个数据库,即用这个语句指定

删除数据库

drop database [if exists] db_name

查看数据库

show databases


数据表操作

假设有一个学生信息表,字段有id(主键),姓名name,性别sex(1为男,2为女)

创建表

create [temporary] table [if not exits] tbl_name
( 
	<列名1> <数据类型> [<列选项>],
	<列名2> <数据类型> [<列选项>],
	<列名3> <数据类型> [<列选项>]
	...
	<表选项>
);

其中:
temporary关键字表示创建临时表,不加该关键字则创建的是持久表

断开与该数据库连接时,MySQL会自动删除临时表

数据类型常见的有:

整型:int
文本型:text
变长字符型:varchar(长度)
浮点型:float
日期:date

列选项有:

null 或 not null:是否允许为空,默认为null
default default_value:指定默认值,默认值default_value必须为一个常量
auto_increment:设置自增属性,只有数据类型为整型列的才能设置该属性。每个表只能有一个自增属性,并且它必须被索引
primary key | unique key:主键,一个表只能有一个主键,主键必须为not null
comment 'string':对于列的描述说明,string是描述的内容

表选项

定义主键primary key(列名,...),注意主键可能是由多个列组成的多列索引
定义外键:假设表A的一个字段A_id为表B的外键,则,foreign key (A_id) references B(A_id),第一个括号是表A中外键列名,第二个括号是表B中给这个外键取的名字

但是注意!!!:该外键在这个表里真正的名字并不是A_id,而是在定义外键是系统自动给他赋的一个约束,可以通过show create table 表名来查看创表时的sql语句,在其中可以找到,如下图
在这里插入图片描述
当然,也可以在创表定义外键时就自己写好约束:
constraint '约束名' foreign key (A_id) references B(A_id);


修改表

修改列名

alter table 表名 change 原列名 新的列名 列的类型 [<列选项>]; 例如:

alter table major_info change majorID MID int not null;

插入数据

所有列都插入:
insert into 表名 values(插入值列表); 空值写null

插入指定列:
insert into 表名 (指定列列名列表) values(插入值列表);

例子:
在这里插入图片描述

补充定义主键

alter table 表名 add primary key 列名/(列名表)

补充定义外键

alter table 表名 add <constraint '约束名'> foreign key (A_id) references B(A_id);

<constraint ‘约束名’>可选,若不写则系统会默认给一个约束,通过查看创建表的sql语句可以得到(见上面的相关部分)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值