美文网首页
04-mysql表怎删改查

04-mysql表怎删改查

作者: 亨锅锅 | 来源:发表于2019-01-05 11:14 被阅读0次

1.创建表
create table [if not exists] 表名(
字段名称 数据类型 [null | not null],
字段名称 数据类型 [auto_increment],
字段名称 数据类型 [primary key],
字段名称 数据类型 [default],
字段名称 数据类型 [comment]
)engine=存储引擎;

字段名称: 相当于Excel中每一列的名称
数据类型: 相当于Excel中每一列的数据类型

[null | not null] 该字段是否可以为空, 默认都可以为空
[auto_increment] 该字段的值自动增长
[primary key] 主键, 一张表中只能有一个主键
[default] 默认值, 如果没有传递对应的值, 就使用默认值
[comment] 备注, 方便程序员之间沟通
存储引擎 innodb/myisam/memory

注意点:
由于一个MySQL中可以有很多数据库, 所以在创建表之前必须告诉MySQL要创建到哪一个数据库中

示例一:
use person;
create table stu(
id int,
name varchar(20)
);
上面语句的含义: 在person数据库中创建一张叫做stu的表, 表中有两个字段, 分别是id和name, id将来可以存储int类型的值, name将来可以存储字符串类型的值

示例二: 企业开发推荐写法
use person;
create table if not exists stu(
id int,
name varchar(20)
);


1.查看数据库中的表
show tables;

2.查看表的结构
desc[ribe] 表名;


1.删除表
drop table [if exists] 表名1, 表名2, ....;

示例一:
drop table stu;
注意点: 表不存在会报错

示例二:
drop table if exists stu;

示例三:
drop table if exists stu1,stu2;


1.修改表
6.1添加字段
alter table 表名 add 字段名 数据类型 [位置];

示例一:
会将新的字段添加到原有字段的最后
alter table stu3 add email varchar(30);

示例二:
会将新的字段添加到原有字段的最前面
alter table stu3 add phone int first;

示例三:
会将新的字段添加到指定字段的后面
alter table stu3 add addr varchar(100) after name;

6.2删除字段
alter table 表名 drop 字段名;

示例一:
alter table stu3 drop name;

6.3修改字段
alter table 表名 change 原始字段名 新字段名 数据类型;

示例一:
改字段名称, 并且改字段的类型
alter table stu3 change addr age int;

示例二:
改字段的类型, 不改字段的名称
alter table stu3 modify phone varchar(20);

6.4修改存储引擎

  • 数据库的本质就是文件, 所以我们可以先观察一下
  • 通过我们的观察, 发现只要新建一个数据库, 就会自动创建一个文件夹
  • 通过我们的观察, 发现只要删除一个数据库, 就会自动删除一个文件夹

innodb: 默认
create table stu(
id int,
name varchar(20)
);
create table stu1(
id int,
name varchar(20)
)engine=innodb;

  • 通过观察发现指定存储引擎为innodb和不指定引擎创建表生成的文件夹都一样, 所以推断出默认使用的就是innodb存储引擎
  • innodb存储引擎只要创建一张表就会自动创建一个后缀为frm的文件
  • 注意:
    • .frm文件不是存储表中的数据的, 数据会存储到ibdata1中, 如果数据比较多系统会自动创建ibdata2, ibdata3, ....
    • .frm文件是MySQL表结构定义文件

myisam:
create table stu2(
id int,
name varchar(20)
)engine=myisam;

  • 通过观察发现指定存储引擎为myisam, 只要创建一张表就会自动创建三个文件
  • .frm文件是MySQL表结构定义文件
  • .MYD文件存储表的数据
  • .MYI文件存储表的索引

memory:
create table stu3(
id int,
name varchar(20)
)engine=memory;

  • 通过观察发现指定存储引擎为memory; 只要创建一张表就会自动创建一个文件
  • .frm文件是MySQL表结构定义文件
  • 注意点:
    • memory会将数据存储到内存中, 一旦电脑重启数据就不见了
    • 特点读写比较快, 但是不会永久存储

alter table 表名 engine=引擎名称;

修改表的存储引擎
alter table stu2 engine=innodb;

6.5修改表名
alter table 原始名称 rename to 新名称;

相关文章

  • 04-mysql表怎删改查

    1.创建表create table [if not exists] 表名(字段名称 数据类型 [null | no...

  • SQL语句

    数据库的增删改查 数据表的增删改查 表内记录的增删改查

  • mysql数据库的基本操作

    一、基本增删改查二、创建索引的几种方式三、单表查询四、连表查询 一、基本增删改查 1.数据库的增删改查 show ...

  • mysql

    mysql 增删改查数据库的增删改查: create drop alter show表结...

  • JAEE学习笔记(17)mysql

    MySQL数据库 数据库(CURD -- 增删改查) 表(table)(CURD -- 增删改查) 数据(CURD...

  • 2018-06-23 (数据库)

    /*表的增删改查增创建删除删除整张表改改变表名改变列名改变列类型查查询表结构查询表信息表数据的增删改查增插入指定列...

  • 用JeeSite快速搭建网站(3):提供api接口给移动端

    上次在用JeeSite快速搭建网站(2):单表的增删改查中我们实现单表数据的增删改查了,现在终于来冲击最终目标——...

  • JDBC实现增删改查综合实例

    JDBC实现增删改查综合代码 目标:完成商品品牌的增删改查操作 步骤 准备环境 Navicat中编写表tb_bra...

  • 增删改

    对于表中的操作,就是增删改查,查内容较多,这里先说增删改。 1.增(insert或者load) 即插入数据,多行插...

  • 表中列的 增删改查

    课程总结 表中列的 增删改查 表是由 列和行 组成的;对列的增删改查就相当于是对表属性的修改 所以用alte...

网友评论

      本文标题:04-mysql表怎删改查

      本文链接:https://www.haomeiwen.com/subject/yycrrqtx.html