mySQL初学者需要掌握的【数据库与表的基本操作】
本内容会持续更新的哦!
注:“字段”=“列”,"记录’’=“行”文章目录
- 一:数据库的基本操作
- 二.数据表的基本操作
- 1.创建与查看数据表
- 2.修改数据表
- 1、 修改表名
- 2、 修改字段名
- 3.修改字段的数据类型 
- 4、 添加字段
- 5、删除字段 
- 6、修改字段的排列位置 
- 7.删除数据表 
- 三.表的约束
- 四.设置表的字段值自动增加
- 五.索引
一:数据库的基本操作
二.数据表的基本操作
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、创建普通索引
普通索引是可以由 KEY 或 INDEX 定义的索引,它是 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初学者需要掌握的【数据库与表的基本操作】的更多相关文章
- 【转】MYSQL入门学习之八:数据库及表的基本操作
转载地址:http://www.2cto.com/database/201212/175867.html 一.操作数据库 www.2cto.com 1.查看数据库 show ...
- MySQL<数据库和表的基本操作>
数据库和表的基本操作 数据库基础知识 创建数据库 就是在数据库系统中划分一块存储数据的空间 CREATE DATABASE itcast; 查看数据库 SHOW CREATE DATABASE 数据库 ...
- Mariadb/MySQL数据库单表查询基本操作及DML语句
Mariadb/MySQL数据库单表查询基本操作及DML语句 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一数据库及表相关概述 1>.数据库操作 创建数据库: CREATE ...
- MySQL学习笔记02_数据库和表的基本操作
02_1 操作数据库 (1)创建数据库 CREATE DATABASE [IF NOT EXISTS] db_name [create_specification[, create_specifica ...
- Mysql 创建普通用户、数据库、表、插入记录,用户赋权
C:\phpStudy\MySQL\bin>mysql -uroot -proot -h127.0.0.1 //创建用户 mysql> insert into mysql.user (ho ...
- MySQL学习总结(二)数据库以及表的基本操作
上一节中详细的介绍了关于MySQL数据库的安装过程,接下来我们就该对数据库以及表进行一些基本的操作了. 1.数据类型 MySQL数据库中提供了整数类型.浮点数类型.定点数类型.日期和时间类型.字符串类 ...
- MySQL之数据库和表的基本操作(建立表、删除表、向表中添加字段)
介绍关于数据库和表的一些基本操作 添加字段.给字段添加注释 ); ) COMMENT '统一社会信用代码录入单位'; ,) 更改字段类型 ,) COMMENT '一头签收,@0或空不用,1必须'; 有 ...
- MySQL : 数据库和表的基本操作总结
针对database和table的操作大致可分为三类:创建,查询,修改,删除 1. 创建 create ①创建数据库 create database db_name; ②创建表 create tabl ...
- Mac下安装MySQL、Workbench以及建数据库建表最基础操作
刚用上Mac,什么都不懂,加之以前还没有用过mysql,就想着在Mac上装一个mysql来自己玩,奈何,在网上找了大半天,没有一个干货!愤怒!下面是我安装的过程,希望能帮到和我情况差不多的朋友 首 ...
随机推荐
- leetcode103:permutations-ii
题目描述 给出一组可能包含重复项的数字,返回该组数字的所有排列 例如: [1,1,2]的排列如下: [1,1,2],[1,2,1], [2,1,1]. Given a collection of nu ...
- Zookeeper(4)---ZK集群部署和选举
一.集群部署 1.准备三台机器,安装好ZK.强烈建议奇数台机器,因为zookeeper 通过判断大多数节点的存活来判断整个服务是否可用.3个节点,挂掉了2个表示整个集群挂掉,而用偶数4个,挂掉了2个也 ...
- .NetMvc从http或本地下载pdf文件
1.帮助类 1 public static class PdfHelper 2 { 3 #region 从http链接下载 4 public static void Download(string u ...
- Spring Cloud 整合分布式链路追踪系统Sleuth和ZipKin实战,分析系统瓶颈
导读 微服务架构中,是否遇到过这种情况,服务间调用链过长,导致性能迟迟上不去,不知道哪里出问题了,巴拉巴拉....,回归正题,今天我们使用SpringCloud组件,来分析一下微服务架构中系统调用的瓶 ...
- MySQL索引结构之Hash索引、full-text全文索引(面)
Hash索引 主要就是通过Hash算法(常见的Hash算法有直接定址法.平方取中法.折叠法.除数取余法.随机数法),将数据库字段数据转换成定长的Hash值,与这条数据的行指针一并存入Hash表的对应位 ...
- mysql参数总结
1.innodb_old_blocks_pct 确定modpoint位置,默认37,(3/8=37%)可以通过这个调整young与old比. innodb_old_blocks_time:当有大的查询 ...
- ceph bluestore的db分区应该预留多大的空间
前言 关于bluestore的db应该预留多少空间,网上有很多资料 如果采用默认的 write_buffer_size=268435456 大小的话 那么几个rocksdb的数据等级是 L0: in ...
- Distributing Custom Apps
Distributing Custom Apps 分配自定义应用程序 November 10, 2020 2020年11月10日 Custom apps let you meet the unique ...
- SixLabors.ImageSharp 实践小结
前言 之前写过一篇 Linux/Docker 中使用 System.Drawing.Common 踩坑小计, 当时主要是有一块图像处理的需要从 .net framework 迁移到 .net core ...
- OWASP固件安全性测试指南
OWASP固件安全性测试指南 固件安全评估,英文名称 firmware security testing methodology 简称 FSTM.该指导方法主要是为了安全研究人员.软件开发人员.顾问. ...