【MySQ必知必会】MySQL 是怎么存储数据的?
文章目录
- 总结
- 前言
- 一,创建数据库
- 二,确认字段
- 三,创建数据表
- 四,插入数据
总结
CREATE DATABASE demo;
DROP DATABASE demo; -- 删除数据库
SHOW DATABASES; -- 查看数据库
--创建数据表
CREATE TABLE demo.test (
barcode text,
goodsname text,
price int );DESCRIBE demo.test; -- 查看表结构SHOW TABLES; -- 查看所有表--怎加主键
ALTER TABLE demo.test ADD COLUMN itemnumber int PRIMARY KEY auto_increment;
-- 向表中添加数据
INSERT INTO demo.test23(barcode,goodsname,price)24 VALUES ('0001','本',3);
前言
在 MySQL 中,一个完整的数据存储过程总共有 4 步,分别是创建数据库、确认字段、创建数据表、插入数据。
一,创建数据库
在Workbench下创建数据库demo。
create database demo;
mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| blog |
| demo |
| mysql |
| performance_schema |
| sys |
+--------------------+
二,确认字段
MySQL 会让我们确认新表中有哪些列及它们的数据类型。这些列就是 MySQL 数据表的字段。MySQL 数据表由行与列组成,一行就是一条数据记录,每一条数据记录都被分成许多列,一列就叫一个字段。每个字段都需要 定义数据类型,这个数据类型叫做字段类型。每一条数据记录的每一个片段,就按照字段的定义被严格地管理起来了,从而使数据有序而且可靠。MySQL 支持多种字段类型,字段的定义会影响数据的取值范围、精度,以及系统的可靠性。
三,创建数据表
MySQL 中的数据表是什么呢?你可以把它看成用来存储数据的最主要工具。数据表对存储在里面的数据进行组织和管理,使数据变得有序,并且能够实现高效查询和处理。
CREATE TABLE demo.test (
barcode text,
goodsname text,
price int );
执行完后就可在Workbench中的demo数据库中查看数据表test
注意两点:
- 创建表的时候,最好指明数据库。 否则,如果你没有选中数据库,Workbench 会提示错误; 要是你当前选中的光据 ; 不时,还可能把表创建到错误的数据库中。
- 不要在最后一个字段的后面加逗号“,”,这也是初学者容易犯的错误。
查看数据表的结构
mysql> desc demo.test;
+-----------+---------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+---------+------+-----+---------+-------+
| barcode | text | YES | | NULL | |
| goodsname | text | YES | | NULL | |
| price | int(11) | YES | | NULL | |
+-----------+---------+------+-----+---------+-------+
3 rows in set (0.00 sec)
我来解释下文些信息都代表什么意思。
Field:表示字段名称。
Type:表示字段类型,这里 barcode、goodsname 是文本型的,price 是整数类型的。Null:表示这个字段是否允许是空值(NULL)。
这里你一定要注意,在 MySQL 里面,空值不等于空字符串。一个空字符串的长度是 0, 而一个空值的长度是空。而且,在MySQL 里面,空值是占用空间的。
Key:我们暂时把它叫做键。
Default:表示默认值。我们导入的表的所有的字段都允许是空,默认值都是 NULL。Extra:表示附加信息。关于字段类型和 Key,后面我会具体讲解,这里你只需要知道它们的含义就可以了。
查看数据库中的表
mysql> use demo --选择数据库
Database changed
mysql> show tables; --查看数据库中的表
+----------------+
| Tables_in_demo |
+----------------+
| test |
| test9 |
+----------------+
2 rows in set (0.00 sec)
如何使设置主键
MySQL 中数据表的主键,是表中的一个字段或者几个字段的组合。它主要有 3 个特征:
- 必须唯一,不能重复;
- 不能是空;
- 必须可以唯一标识数据表中的记录。
由于数据表中的字段,每一个都有重复的可能,我们自己创建一个逻辑主键itemnumber
我们就可以添加一个字段,字段类型是整数,我们给它取个名字叫商品编号“itemnumber”。让这个字段的值自动加 1,这样就永远不会重复了.
在 workbench中我们可以修改表结构,也可以使用sql语句修改。
mysql> ALTER TABLE demo.test -> ADD COLUMN itemnumber int PRIMARY KEY auto_increment;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
- ALTER TABLE ,表示修改表;
- ADD COLUMN,表示增加一列;
- PRIMARY KEY,表示这一列是主键;
- auto_increment,表示每增加一条记录,这个值自动增加。
四,插入数据
Workbench的数据导入功能,可以帮助我们把Excel的数据导入到表里面,那么,我们自己怎么向数据表中插入一条数据呢?我
们可以借助 SQL 语句。这里的INSERT INTO 表示向 demo.test 中插入数据,后面是要插入数据的字段名,VALUES 表示对应的值。
mysql>
mysql> INSERT INTO demo.test(barcode,goodsname,price) -> VALUES ('0001','本',3);
Query OK, 1 row affected (0.01 sec)
- 要插入数据的字段名也可以不写。这样做的好处是可读性好,不易出错,而且容易修改。
- 由于字段 itemnumber 定义了 AUTO_INCREMENT,所以我们插入一条记录的时候,不给它赋值,系统也会自动给它赋值。每次赋值,都会在上次的赋值基础上,自动增加 1。你也可以在插入一条记录的时候给 itemnumber 赋值,由于它是主键,新的值必须与已有记录的 itemnumber 值不同,否则系统会提示错误。
【MySQ必知必会】MySQL 是怎么存储数据的?相关推荐
- MySQL必知必会教程:深入理解MySQL技术内幕
2019独角兽企业重金招聘Python工程师标准>>> MySQL必知必会教程:深入理解MySQL技术内幕 作为最流行的开源数据库软件之一,MySQL数据库软件已经是广为人知了.当前 ...
- mysql必知必会_《MySQL必知必会》学习小结
关于SQL,之前通过sqlzoo的题目,完成了入门,也仅仅是入门而已. 最近都在忙着投简历和找新的数据分析项目做(为了练python和面试的时候有的聊),所以SQL放了一段时间没练.目前的工作用不到, ...
- mysql正则表达式关键字_《MySQL必知必会》正则表达式
<MySQL必知必会>正则表达式 正则表达式 1.1.关键字 REGEXP 正则表达式的使用需要用到关键字 REGEXP . select prod_name from products ...
- 《MySQL必知必会》所有SQL语句图表集合(可作为查询表使用)---已完结
本篇文章是对<MySQL必知必会>所有语句知识点的图表集合,适合快速查询遗忘的SQL语句. 本文的脉络结构,首先先给出<MySQL必知必会>的目录和本书中用到的数据表的UML图 ...
- MYSQL必知必会学习笔记(二)
MYSQL必知必会四-五章--检索.排序 书中部分代码展示: ##第四第五章 SELECT prod_name FROM products; /*从products表中检索一个叫prod_name的列 ...
- mysql必知必会学习笔记(一)
MYSQL必知必会第三章--了解数据库和表 书中部分代码展示: CREATE DATABASE crashcourse; /*创建名为 crashcourse 的新数据库*/SHOW DATABASE ...
- mysql第四章分页显示查询出租房屋信息_MYSQL必知必会读书笔记第四章之检索数据...
MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理. 使用Select语句返回的数据,可能会发现显 ...
- 《MySQL必知必会》[01] 基本查询
<MySQL必知必会>(点击查看详情) 1.写在前面的话 这本书是一本MySQL的经典入门书籍,小小的一本,也受到众多网友推荐.之前自己学习的时候是啃的清华大学出版社的计算机系列教材< ...
- mysql必_MySQL必知必会(一)
摘自<MySQL必知必会> 1.1.1 什么是数据库 数据库:保存有组织的数据的容器(通常是一个文件或一组文件) 人们通常用数据库这个术语来代表他们使用的数据库软件.这是不正确的,它是引起 ...
- mysql中用完即删用什么_MySQL使用和操作总结(《MySQL必知必会》读书笔记)
简介 MySQL是一种DBMS,即它是一种数据库软件.DBMS可分为两类:一类是基于共享文件系统的DBMS,另一类是基于客户机--服务器的DBMS.前者用于桌面用途,通常不用于高端或更关键应用. My ...
最新文章
- 027_jdbc-mysql几个常用的日期类型
- testng接口自动化测试_Java+Maven+TestNG接口(API)自动化测试教程(10) 使用 Jenkins 构建自动化测试持续集成...
- java 多线程性能_Java中多线程的性能比较
- mysql主库从库在同一台服务器_MySQL_MySQL 数据库两台主机同步实战(linux),当一个从服务器连接到主服务 - phpStudy...
- VS2008都出來了﹐看來我們升級VS2005的計划要改了。
- 拓端tecdat|R语言使用倾向评分提高RCT(随机对照试验)的效率
- 二项分布的期望与方差的证明
- NBIoT接收十六进制数据格式转化
- 帝国cms 7.5 utf8集成百度编辑器完美集成版
- mysql数据库误删后能恢复吗_MySQL 数据库误删除后的数据恢复
- C++调用C的函数,出现 undefined reference to 的解决办法
- Jupyter notebook 报错 500 : Internal Server Error的解决方法
- 如何控制Excel统计图数据的实际显示范围
- mysql 查询去除小数点_SQL查询金额去掉小数点后面的零
- POI点数据获取与NOAA(美国海洋和大气管理局)气象数据获取
- 收银机打印数据截取_既然没有苹果系统,那收银机选安卓还是Windows好?
- 【CRM】CRM下半场,不比融资,比盈利!
- 【机器人学习】三自由度康复机器人运动学分析()
- 2014迅雷校园招聘笔试题(C++)
- stegsolve使用方法
热门文章
- nubia基于android深度定制的ui,FiT2.0突破新维度 nubia UI 4.0系统体验
- 单片机毕设分享 STM32的智能宠物投喂系统(全套资料)
- SQL Server 和 Azure SQL 索引体系结构和设计指南
- java文件中搜索的快捷键_eclipse 项目中搜索资源 快捷键
- python:绘制GAM非线性回归散点图和拟合曲线
- Android 实用自定义Dialog页面加载动画
- Contest3032 - 计科2101~2104算法设计与分析上机作业03
- 小满Vue3第四十五章(Vue3 Web Components)
- 我觉得CISA要不比CISSP更难,分享我的备考经验
- web开发技术栈(框架)总结