专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

mysql 表的操作

创建表

Example 1:

Create table if not exists `secondweek_tb`(
   `id` int Unsigned auto_increment,
   `title` Varchar(100) Not null,
   `author` Varchar(40) Not null,
   `submission_date` Date,
   primary key ( `id` )
)engine=InnoDB default charset=utf8;

解释:

Unsigned声明为无符号;

如果你不想字段为NULL可以设置字段的属性为Not NULL, 如果在操作数据库时如果输入该字段的数据为NULL ,就会报错;

Auto_increment定义列为自增的属性,一般用于主键,数值会自动加1;

Primary key关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔;

Engine设置存储引擎;

Charset设置编码;

Varchar(100) 和 Varchar(40)的区别:
一个汉字占多少长度与编码有关,如下说MySQL 5.0 以上的版本设置;

  • UTF-8:一个汉字=3个字节
  • GBK:一个汉字=2个字节

Varchar(100)表示字节的取值范围为0-65535 字节,但是可变长varchar(100);

4、0版本以下,varchar(100),指的是100字节,如果存放UTF8汉字时,只能存33个(每个中文3字节);

5、0版本以上,varchar(100),指的是100字符,无论存放的是数字、字母还是UTF8中文(每个中文3字节),都可以存放100个 ;

Example 2:

CREATE TABLE test_tb(
    id SMALLINT UNSIGNED KEY AUTO_INCREMENT,
    username VARCHAR(20) NOT NULL UNIQUE,
    password CHAR(32) NOT NULL,
    email VARCHAR(50) NOT NULL DEFAULT 'a@a.com',
    age TINYINT UNSIGNED DEFAULT 18,
    addr VARCHAR(200) NOT NULL DEFAULT '北京',
    salary FLOAT(6,2),
    regTime INT UNSIGNED,
    face CHAR(100) NOT NULL DEFAULT 'default.jpg',
    sex ENUM('男','女','保密') DEFAULT '保密'
)engine=InnoDB default charset=utf8;

约束

约束 = 别乱搞;
约束就是在定义字段类型的时候,我就先定义好规则,不让你乱插入(别乱搞!);

约束分类

  • 主键约束 Primary Key
  • 外键约束 Foreign Key
  • 非空约束 Not Null
  • 唯一性约束 Unique
  • 默认值约束(当输入空值时填充默认值)Default
  • 外键约束

Primary Key

主键约束又可以分为:

  • 单字段主键
  • 多字段主键

Example:

# 单字段主键
id Int Primary Key,

# 多字段主键
id int,
uid int Primary Key(id,uid),

Not Null

字段值不能为空,如果为空报错!

example:

name char(20) Not null;

Unique

保证数据表中的字段唯一性,即字段值不能重复;

phone int Unique,

Default

当插入空值时,默认填充默认值;

sex char(5) Default 0,

外键约束

待续;

字段值自动增加

创建表时字段类型后面加上 auto_increment,该列数据数值就会自动+1;

`id` int auto_increment,   #定义列为自增的属性,一般用于主键,数值会自动加1;

索引

索引就是用来加快数据表的查询和排序用的;

索引分类

了解每种(6种)索引方式的应用场景、优缺点;

  • 普通索引
  • 唯一性索引
  • 全文索引
  • 单列索引
  • 多列索引
  • 空间索引

修改表操作

修改表名

有两种方式;

方式一

Alter Table test1_tb Rename To test2_tb;

87_1.png

方式二

Rename Table test2_tb To test1_tb;

87_2.png

修改表字段操作

修改表字段名

alter table test change  column address address1 varchar(30);

修改表字段类型

alter table test modify address char(10);

87_3.png

修改表字段约束

待续;

修改表字段索引

待续;

添加表字段

alter table test1_tb add  column name varchar(10);

删除表字段

alter table test1_tb drop  column age;

87_4.png

删除表字段索引

待续;

删除表字段约束

待续;

删除表

Drop table name_table;

文章永久链接:https://tech.souyunku.com/22142

未经允许不得转载:搜云库技术团队 » mysql 表的操作

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们