三、数据表操作命令

一、查看数据库中存在的表列

命令:show tables ;

         或 show tables from database_name; -- 显示当前数据库中所有表的名称

MariaDB [test]> show tables;
+----------------+
| Tables_in_test |
+----------------+
| proc           |
+----------------+
1 row in set (0.00 sec)

二、创建表

1、创建表需要有:表名,字段名,列字段的数据类型

命令:

create table 库名.表名(
字段名1 类型[(宽度) 约束条件],
字段名2 类型[(宽度) 约束条件],
字段名3 类型[(宽度) 约束条件]
);

注:(1)多个列之间用逗号(,)隔开,最后一个列之后没有逗号;

        (2)同一张表中字段名不能重复;

        (3)宽度和约束条件可选,字段名和数据类型必须有

2、约束条件

primary key (PK)      #标识该字段为该表的主键,可以唯一的标识记录,主键就是不为空且唯一当然其还有加速查询的作用
foreign key (FK)      #标识该字段为该表的外键,用来建立表与表的关联关系
not null              #标识该字段不能为空
unique key (UK)       #标识该字段的值是唯一的
auto_increment        #标识该字段的值自动增长(整数类型,而且为主键)
default               #为该字段设置默认值
unsigned              #将整型设置为无符号即正数
zerofill              #不够使用0进行填充
案例:
MariaDB [test]> create table t1(
    ->     id int primary key auto_increment,
    ->     name varchar(16) not null,
    ->     sex enum('male','female') not null default 'male'
    -> );
Query OK, 0 rows affected (0.01 sec)
//创建表t1成功
MariaDB [test]> show tables;
+----------------+
| Tables_in_test |
+----------------+
| proc           |
| t1             |
+----------------+
2 rows in set (0.00 sec)

添加foreign key外键的方法

  语法:  constraint 外键名(可自取)foreign key (外键字段)  references  关联主表名(主表要关联的字段);

      或者

       foreign key (外键字段)  references  关联主表名(主表要关联的字段);

3、数据类型

MySQL 的数据类型有大概可以分为 5 种,分别是整数类型、浮点数类型和定点数类型、日期和时间类型、字符串类型、二进制类型等。

1) 数值类型

整数类型包括 TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT,浮点数类型包括 FLOAT 和 DOUBLE,定点数类型为 DECIMAL。

2) 日期/时间类型

包括 YEAR、TIME、DATE、DATETIME 和 TIMESTAMP。

3) 字符串类型

包括 CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM 和 SET 等。

4) 二进制类型

包括 BIT、BINARY、VARBINARY、TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB。

4、查看建立的表结构

命令:  show columns from  表名;

MariaDB [test]> show columns from t1;
+-------+-----------------------+------+-----+---------+----------------+
| Field | Type                  | Null | Key | Default | Extra          |
+-------+-----------------------+------+-----+---------+----------------+
| id    | int(11)               | NO   | PRI | NULL    | auto_increment |
| name  | varchar(16)           | NO   |     | NULL    |                |
| sex   | enum('male','female') | NO   |     | male    |                |
+-------+-----------------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)

三、删除表

命令: drop table 表名;

MariaDB [test]> drop table proc;
Query OK, 0 rows affected (0.00 sec)

 

posted @ 2021-03-10 14:11  chao_xiong  阅读(528)  评论(0)    收藏  举报