本内容会持续更新的哦!
注:“字段”=“列”,"记录’’=“行”

文章目录

一:数据库的基本操作

二.数据表的基本操作

1.创建与查看数据表

2.修改数据表

在 MySQL 中, 修改数据表的操作都是使用 ALTER TABLE 语句。

全部语法:
ALTER TABLE 旧表名 RENAME TO 新表名; //1.修改表名
rename table 旧表名 to 新表名; //1.修改表名
ALTER TABLE 表名 change 旧字段名 新字段名 新数据类型; //2.修改列名
ALTER TABLE 表名 MODIFY 字段名 新数据类型; //3.修改字段的数据类型
ALTER TABLE 表名 ADD 字段名 数据类型 [约束条件][FIRST|AFTER 已存在字段名] ; //4.增加列
ALTER TABLE 表名 DROP 字段名; //5.删除列
ALTER TABLE 表名 MODIFY 字段名1 数据类型 FIRST|[AFTER 字段名2]; //6.修改字段的排列位置
DROP TABLE 表名; //7.删除没有关联关系的数据表
ALTER TABLE 表名 CHARACTER SET utf8; //8.修改表的字符集编码

示例:

1、 修改表名

两种方式:

2、 修改字段名

注意:新数据类型不能为空,即使新字段与旧字段的数据类 型相同,也必须将新数据类型设置为与原来一样的数据类型。

3.修改字段的数据类型

4、 添加字段

有两个可选参数:“FIRST"和"AFTER”
"FIRST"即:用于将新添加的字段设置 为表的第一个字段
"AFTER"即:用于将新添加的字段添加到指定的“已存在字段名”的后 面。

5、删除字段

6、修改字段的排列位置

7.删除数据表

三.表的约束

为了防止数据表中插入错误的数据,在 MySQL 中,定义了一些维护数据库完整性的规则,即表的约束。

1.主键约束

注意:要保证主键字段里的值非空且唯一

语法:
//添加单字段主键
CREATE TABLE 表名(
id INT(10) PRIMARY KEY,
name VARCHAR(20));
//添加多字段主键
CREATE TABLE 表名(
id INT(10),
name VARCHAR(20),
PRIMARY KEY(id,name)
);
//另一种方法添加主键
ALTER TABLE example01 ADD primary key(id) ;
//去除主键
ALTER TABLE example01 DROP primary key;

2.非空约束

语法:
CREATE TABLE 表名(
id INT(10) PRIMARY KEY,
name VARCHAR(20) NOT NULL
);

3.唯一约束

语法:
//为字段增加唯一约束方法1
CREATE TABLE 表名(
id INT(10) UNIQUE,
name VARCHAR(20) NOT NULL
);
//为字段增加唯一约束方法2
ALTER TABLE example05 ADD UNIQUE (stu_id);
//去除唯一约束
ALTER TABLE example05 drop index stu_id;

4.默认约束

语法:
CREATE TABLE 表名(
id INT(10) PRIMARY KEY,
name VARCHAR(20) ,
position VARCHAR(20) DEFAULT '实习生'
);

四.设置表的字段值自动增加

每次添加记录字段值都会从原来的值上加1,且该字段必须为主键

语法:
CREATE TABLE 表名(
id INT(10) PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(20)
);

五.索引

(1)索引的概念

数据库的索引好比新华字典的音序表,它是对数据库表中一列或多列的值进行排序后的一种结构,其作用就是提高表中数据的查询速度。
索引分类:普通索引 唯一性索引 全文索引 单列索引 多列索引 空间索引

(2)创建索引

一、创建表的时候创建索引

语法: CREATE TABLE 表名( 字段名 数据类型[完整性约束条件], 字段名 数据类型[完整性约束条件], ..... 字段名 数据类型 [UNIQUE|FULLTEXT|SPATIAL] INDEX|KEY [索引名] (字段名 1 [(长度)]) [ASC|DESC]) );

1、创建普通索引

普通索引是可以由 KEYINDEX 定义的索引,它是 MySQL 中的基本索引类型,可以创建在任何数据类型中,其值是否唯一和非空由字段本身的约束条件所决定。

2、创建唯一性索引

唯一性索引是由 UNIQUE 定义的索引,该索引所在字段的值必须是唯一的。
ASC 和 DESC:可选参数,ASC 表示升序排列,DESC 表示降序排列

3、创建全文索引

全文索引是由 FULLTEXT 定义的索引,它只能创建在 CHAR、VARCHAR 或 TEXT 类型的字段上, 而且,现在只有 MyISAM 存储引擎支持全文索引。

4、创建单列索引

即:在表中单个字段上创建索引,以上示例皆为单列索引

5、创建多列索引

多列索引指的是在表中多个字段上创建索引,只有在查询条件中使用了这些字段中的第一个字段时, 该索引才会被使用。

6、创建空间索引

空间索引是由 SPATIAL 定义的索引,它只能创建在空间数据类型的字段上。
MySQL中的空间数据类型有 4 种 : GEOMETRY、POINT、LINESTRING 和 POLYGON。
注意: 创建空间索引的 字段,必须将其声明为 NOT NULL,并且空间索引只能在存储引擎为 MyISAM 的表中创建。

二、使用 CREATE INDEX 语句在已经存在的表上创建索引

语法:
CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX 索引名 ON 表名 (字段名 [(长度)] [ASC|DESC]);

三、使用 ALTER TABLE 语句在已经存在表上创建索引

语法:
ALTER TABLE 表名 ADD [UNIQUE|FULLTEXT|SPATIAL] INDEX 索引名 (字段名 [(长度)] [ASC|DESC])

(3)删除索引

1、使用 ALTER TABLE 删除索引

语法:
ALTER TABLE 表名 DROP INDEX 索引名

2、使用 DROP INDEX 删除索引

语法:
DROP INDEX 索引名 ON 表名;

听说看完这篇的同学,都会往下继续学习的哦!
下一篇《mySQL数据操纵》

mySQL初学者需要掌握的【数据库与表的基本操作】的更多相关文章

  1. 【转】MYSQL入门学习之八:数据库及表的基本操作

    转载地址:http://www.2cto.com/database/201212/175867.html 一.操作数据库  www.2cto.com    1.查看数据库          show ...

  2. MySQL<数据库和表的基本操作>

    数据库和表的基本操作 数据库基础知识 创建数据库 就是在数据库系统中划分一块存储数据的空间 CREATE DATABASE itcast; 查看数据库 SHOW CREATE DATABASE 数据库 ...

  3. Mariadb/MySQL数据库单表查询基本操作及DML语句

    Mariadb/MySQL数据库单表查询基本操作及DML语句 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一数据库及表相关概述 1>.数据库操作 创建数据库: CREATE ...

  4. MySQL学习笔记02_数据库和表的基本操作

    02_1 操作数据库 (1)创建数据库 CREATE DATABASE [IF NOT EXISTS] db_name [create_specification[, create_specifica ...

  5. Mysql 创建普通用户、数据库、表、插入记录,用户赋权

    C:\phpStudy\MySQL\bin>mysql -uroot -proot -h127.0.0.1 //创建用户 mysql> insert into mysql.user (ho ...

  6. MySQL学习总结(二)数据库以及表的基本操作

    上一节中详细的介绍了关于MySQL数据库的安装过程,接下来我们就该对数据库以及表进行一些基本的操作了. 1.数据类型 MySQL数据库中提供了整数类型.浮点数类型.定点数类型.日期和时间类型.字符串类 ...

  7. MySQL之数据库和表的基本操作(建立表、删除表、向表中添加字段)

    介绍关于数据库和表的一些基本操作 添加字段.给字段添加注释 ); ) COMMENT '统一社会信用代码录入单位'; ,) 更改字段类型 ,) COMMENT '一头签收,@0或空不用,1必须'; 有 ...

  8. MySQL : 数据库和表的基本操作总结

    针对database和table的操作大致可分为三类:创建,查询,修改,删除 1. 创建 create ①创建数据库 create database db_name; ②创建表 create tabl ...

  9. Mac下安装MySQL、Workbench以及建数据库建表最基础操作

    刚用上Mac,什么都不懂,加之以前还没有用过mysql,就想着在Mac上装一个mysql来自己玩,奈何,在网上找了大半天,没有一个干货!愤怒!下面是我安装的过程,希望能帮到和我情况差不多的朋友   首 ...

随机推荐

  1. 关于appium

    一.特点 1.appium是开源的移动端自动化测试框架: 2.appium可以测试原生的.混合的.以及移动端的web项目: "移动原生应用"是指那些用iOS或者 Android S ...

  2. 线上Java程序占用 CPU 过高,请说一下排查方法?

    我是风筝,公众号「古时的风筝」,一个兼具深度与广度的程序员鼓励师,一个本打算写诗却写起了代码的田园码农! 文章会收录在 JavaNewBee 中,更有 Java 后端知识图谱,从小白到大牛要走的路都在 ...

  3. spring cloud feign 添加headers

    原文地址: https://www.jianshu.com/p/dfec934b737f 很多时候我们需要feign的时候添加headers 1.把当前登录用户的token传到下一个服务 2.在自己的 ...

  4. 常用的Linux命令,日常收集记录

    1.# yum install -y xxxx 解释:install代表往系统中安装一个或者多个软件包:-y 代表回答全部问题为是 2.# ps -ef | grep yum   (根据进程名来查看进 ...

  5. Python调用飞书发送消息

    一.创建飞书机器人 自定义飞书机器人操作步骤,具体详见飞书官方文档:<机器人 | 如何在群聊中使用机器人?>

  6. 9、Django之模型层第四篇:进阶操作

    一 QuerySet对象 1.1可切片 使用Python 的切片语法来限制查询集记录的数目 .它等同于SQL 的LIMIT 和OFFSET 子句. Entry.objects.all()[:5] # ...

  7. leetcode37:path-sum-ii

    题目描述 给定一个二叉树和一个值sum,请找出所有的根节点到叶子节点的节点值之和等于sum的路径, 例如: 给出如下的二叉树,sum=22,     5     / \   4  8   /    / ...

  8. Jenkins(9)- 汉化 Jenkins 网站

    如果想从头学起Jenkins的话,可以看看这一系列的文章哦 https://www.cnblogs.com/poloyy/category/1645399.html 下载插件 安装这两个插件,然后重启 ...

  9. Windows平台Python Pyramid实战从入门到进阶:第一个服务

    Pyramid是比较流行的Python Web 框架,比较灵活,功能也很强大.最近项目上用到,便打算学习一下.网上教程比较少,而且很多都是针对linux平台的,我是windows土著所以对那些linu ...

  10. 【日拱一卒】链表——如何实现lru

    LRU Redis的内存淘汰机制好几种,如ttl.random.lru. lru(less recently used)即最近最少使用策略,表示在最近一段时间内最少被使用到的Redis键,如果遇到内存 ...