day25 mysql数据库入门 (2)

day25 mysql数据库入门

如果将数据库管理系统与之前的文件管理做类比的话:

数据库管理系统 文件管理
数据库   文件夹  
数据表   文件夹下的文件  

接下来,我们先学习 数据表(文件夹中的文件)相关操作的指令。

day25 mysql数据库入门

其实在数据库中创建数据库 和 创建Excel非常类似,需要指定: 表名、列名称、类类型(整型、字符串或其他)。

3.1 内置客户端操作

数据表常见操作的指令:

进入数据库 use 数据库;,查看当前所有表:show tables;

创建表结构

day25 mysql数据库入门

create table 表名( 列名 类型, 列名 类型, 列名 类型 )default charset=utf8; create table tb1( id int, name varchar(16) )default charset=utf8; create table tb2( id int, name varchar(16) not null, -- 不允许为空 email varchar(32) null, -- 允许为空(默认) age int )default charset=utf8; create table tb3( id int, name varchar(16) not null, -- 不允许为空 email varchar(32) null, -- 允许为空(默认) age int default 3 -- 插入数据时,如果不给age列设置值,默认值:3 )default charset=utf8; create table tb4( id int primary key, -- 主键(不允许为空、不能重复) name varchar(16) not null, -- 不允许为空 email varchar(32) null, -- 允许为空(默认) age int default 3 -- 插入数据时,如果不给age列设置值,默认值:3 )default charset=utf8;

主键一般用于表示当前这条数据的ID编号(类似于人的身份证),需要我们自己来维护一个不重复的值,比较繁琐。所以,在数据库中一般会将主键和自增结合。

create table tb5( id int not null auto_increment primary key, -- 不允许为空 & 主键 & 自增 name varchar(16) not null, -- 不允许为空 email varchar(32) null, -- 允许为空(默认) age int default 3 -- 插入数据时,如果不给age列设置值,默认值:3 )default charset=utf8;

注意:一个表中只能有一个自增列【自增列,一般都是主键】。

删除表 drop table 表名;

清空表 delete from 表名; 或 truncate table 表名;(速度快、无法回滚撤销等)

修改表

添加列

alter table 表名 add 列名 类型; alter table 表名 add 列名 类型 DEFAULT 默认值; alter table 表名 add 列名 类型 not null default 默认值; alter table 表名 add 列名 类型 not null primary key auto_increment;

删除列

alter table 表名 drop column 列名;

修改列 类型

alter table 表名 modify column 列名 类型;

修改列 类型 + 名称

alter table 表名 change 原列名 新列名 新类型; alter table tb change id nid int not null; alter table tb change id id int not null default 5; alter table tb change id id int not null primary key auto_increment; alter table tb change id id int; -- 允许为空,删除默认值,删除自增。

修改列 默认值

ALTER TABLE 表名 ALTER 列名 SET DEFAULT 1000;

删除列 默认值

ALTER TABLE 表名 ALTER 列名 DROP DEFAULT;

添加主键

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

删除主键

alter table 表名 drop primary key;

常见列类型

create table 表( id int, name varchar(16) )default charset=utf8;

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzgswx.html