mirror of
https://github.com/ZiuChen/ZiuChen.github.io.git
synced 2025-08-18 15:39:35 +08:00
58 lines
45 KiB
JavaScript
58 lines
45 KiB
JavaScript
import{_ as s,o as a,c as l,R as n}from"./chunks/framework.abedd97e.js";const D=JSON.parse('{"title":"MySQL","description":"","frontmatter":{},"headers":[],"relativePath":"note/MySQL.md","filePath":"note/MySQL.md","lastUpdated":1687752747000}'),e={name:"note/MySQL.md"},t=n(`<h1 id="mysql" tabindex="-1">MySQL <a class="header-anchor" href="#mysql" aria-label="Permalink to "MySQL""></a></h1><h2 id="mysql基础篇" tabindex="-1">MySQL基础篇 <a class="header-anchor" href="#mysql基础篇" aria-label="Permalink to "MySQL基础篇""></a></h2><h3 id="mysql简单使用" tabindex="-1">MySQL简单使用 <a class="header-anchor" href="#mysql简单使用" aria-label="Permalink to "MySQL简单使用""></a></h3><p>在命令行窗口输入</p><div class="language-sh line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sh</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#FFCB6B;">mysql</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-uroot</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-p1234</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-hlocalhost</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-P3306</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><p>指定用户名为 <code>root</code> 密码为 <code>1234</code> 连接host为 <code>localhost</code> 端口号为 <code>3306</code></p><p>除了以明文方式输入密码,也可以通过另一种方式登录:</p><div class="language-sh line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sh</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#FFCB6B;">mysql</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-u</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">root</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-p</span></span>
|
||
<span class="line"><span style="color:#FFCB6B;">1234</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br></div></div><p>进入mysql命令行工具后,查看所有表:</p><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">show databases;</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><p>MySQL默认为我们创建了四个表<code> information_schema</code> <code>mysql</code> <code>performance_schema</code> <code>sys</code></p><p>创建一个新的数据库:</p><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#F78C6C;">create</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">database</span><span style="color:#A6ACCD;"> </span><span style="color:#82AAFF;">dbtest1</span><span style="color:#A6ACCD;">;</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><p>使用数据库:</p><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#F78C6C;">use</span><span style="color:#A6ACCD;"> dbtest1;</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><p>创建一张表,初始化<code>id</code>与<code>name</code>字段:</p><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#F78C6C;">create</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">table</span><span style="color:#A6ACCD;"> </span><span style="color:#82AAFF;">employees</span><span style="color:#A6ACCD;">(id </span><span style="color:#C792EA;">int</span><span style="color:#A6ACCD;">, </span><span style="color:#F78C6C;">name</span><span style="color:#A6ACCD;"> </span><span style="color:#C792EA;">varchar</span><span style="color:#A6ACCD;">(</span><span style="color:#F78C6C;">15</span><span style="color:#A6ACCD;">));</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><p>查看表中数据:</p><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#F78C6C;">select</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">*</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">from</span><span style="color:#A6ACCD;"> emoloyees;</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><p>插入一条数据:</p><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#F78C6C;">insert into</span><span style="color:#A6ACCD;"> employees </span><span style="color:#F78C6C;">values</span><span style="color:#A6ACCD;">(</span><span style="color:#F78C6C;">1001</span><span style="color:#A6ACCD;">, </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">Tom</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">);</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">insert into</span><span style="color:#A6ACCD;"> employees </span><span style="color:#F78C6C;">values</span><span style="color:#A6ACCD;">(</span><span style="color:#F78C6C;">1002</span><span style="color:#A6ACCD;">, </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">Jack</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">);</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br></div></div><p>当我们向表中插入中文数据时,<code>5.7</code>版本的MySQL会报错,而<code>8.0</code>版本则不会:</p><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#F78C6C;">insert into</span><span style="color:#A6ACCD;"> employees </span><span style="color:#F78C6C;">values</span><span style="color:#A6ACCD;">(</span><span style="color:#F78C6C;">1003</span><span style="color:#A6ACCD;">, </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">杰瑞</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">);</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><p>检查一下表的信息:</p><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">show </span><span style="color:#F78C6C;">create</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">table</span><span style="color:#A6ACCD;"> employees;</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><p>可以发现,表的默认字符集是 <code>CHARSET=latin1</code> 拉丁字符集,不包含汉字。</p><p>查看编码与比较规则:</p><p>百分号<code>%</code>表示一个到多个字符</p><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">show variables </span><span style="color:#F78C6C;">like</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">character_%</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">;</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;">show variables </span><span style="color:#F78C6C;">like</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">collation_%</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">;</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br></div></div><p>若是<code>5.7</code>版本,默认的编码字符集为<code>latin1</code>,而最新的<code>8.0</code>为<code>utf8</code>。配置文件可以在<code>my.ini</code>中修改</p><p>删除一个数据库</p><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#F78C6C;">drop</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">database</span><span style="color:#A6ACCD;"> dbtest1;</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><h3 id="基本的select语句" tabindex="-1">基本的SELECT语句 <a class="header-anchor" href="#基本的select语句" aria-label="Permalink to "基本的SELECT语句""></a></h3><h4 id="sql分类" tabindex="-1">SQL分类 <a class="header-anchor" href="#sql分类" aria-label="Permalink to "SQL分类""></a></h4><ul><li>DDL <code>DataDefinitionLanguage</code> 用于定义数据库对象(数据库 表 字段) <ul><li>主要语句关键字包括<code>CREATE</code> <code>DROP</code> <code>ALERT</code>等</li></ul></li><li>DML <code>DataManipulationLanguage</code> 用于对数据库表中的数据进行增删改查 <ul><li>主要语句关键字包括<code>INSERT</code> <code>DELETE</code> <code>UPDATE</code> <code>SELECT</code>等</li><li><code>SELECT</code>是SQL语言的基础,最为重要</li></ul></li><li>DQL <code>DataQueryLanguage</code> 用来查询数据库中表的记录 <ul><li>由于查询语句使用的非常频繁,将查询语句单拎出来自成一类</li></ul></li><li>DCL <code>DataControlLanguage</code> 用来创建数据库用户、控制数据库的访问权限 <ul><li>主要的语句关键字包括<code>GRANT</code> <code>REVOKE</code> <code>COMMIT</code> <code>ROLLBACK</code> <code>SAVEPOINT</code>等</li></ul></li></ul><h3 id="sql规则和规范" tabindex="-1">SQL规则和规范 <a class="header-anchor" href="#sql规则和规范" aria-label="Permalink to "SQL规则和规范""></a></h3><ul><li>SQL语句可以单行或多行书写,为了提高可读性,各子句分行写,必要时使用缩进,<strong>以分号结尾</strong></li><li>每条命令以 <code>;</code> 或 <code>\\g</code> 或 <code>\\G</code> 结束</li><li>关键字不能被缩写也不能分行</li><li>关于标点符号 <ul><li>必须保证所有的()、单引号、双引号是成对结束的</li><li>必须使用英文状态下的半角输入方式</li><li>字符串型和日期时间类型的数据可以使用单引号(' ')表示</li><li>列的别名,尽量使用双引号(" "),而且不建议省略as</li></ul></li></ul><h4 id="sql大小写规则" tabindex="-1">SQL大小写规则 <a class="header-anchor" href="#sql大小写规则" aria-label="Permalink to "SQL大小写规则""></a></h4><ul><li>MySQL 在 Windows 环境下是大小写不敏感的</li><li>MySQL 在 Linux 环境下是大小写敏感的 <ul><li>数据库名、表名、表的别名、变量名是严格区分大小写的</li><li>关键字、函数名、列名(或字段名)、列的别名(字段的别名) 是忽略大小写的。</li></ul></li><li>推荐采用统一的书写规范: <ul><li>数据库名、表名、表别名、字段名、字段别名等都小写</li><li>SQL 关键字、函数名、绑定变量等都大写</li></ul></li></ul><h4 id="注释书写方法" tabindex="-1">注释书写方法 <a class="header-anchor" href="#注释书写方法" aria-label="Permalink to "注释书写方法""></a></h4><ul><li>单行注释:<code>--注释内容</code> 或 <code># 注释内容</code> (MySQL独有)</li><li>多行注释: /* 注释内容 */</li></ul><h4 id="ddl-数据库操作" tabindex="-1">DDL - 数据库操作 <a class="header-anchor" href="#ddl-数据库操作" aria-label="Permalink to "DDL - 数据库操作""></a></h4><ul><li>查询 <ul><li>查询所有数据库 <code>SHOW DATABASES;</code></li><li>查询当前数据库 <code>SELECT DATABASE();</code></li></ul></li><li>创建 <ul><li><code>CREATE DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARSET 字符集] [COLLATE 排序规则];</code></li></ul></li><li>删除 <ul><li><code>DROP DATABSE [IF EXISTS] 数据库名</code></li></ul></li><li>使用 <ul><li><code>USE 数据库名</code></li></ul></li></ul><div class="language-shell line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#FFCB6B;">mysql</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-u</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">root</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-p</span><span style="color:#A6ACCD;"> </span><span style="color:#676E95;font-style:italic;"># 进入mysql</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">SHOW DATABASES; # 展示所有数据库</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">CREATE</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">DATABASE</span><span style="color:#A6ACCD;"> </span><span style="color:#82AAFF;">custom</span><span style="color:#A6ACCD;">; # 创建一个名为custom的数据库</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">USE</span><span style="color:#A6ACCD;"> custom; # 使用custom数据库</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">SELECT</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">DATABASE</span><span style="color:#89DDFF;">()</span><span style="color:#A6ACCD;">; # 当前使用的是custom数据库</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br></div></div><h4 id="ddl-表操作" tabindex="-1">DDL - 表操作 <a class="header-anchor" href="#ddl-表操作" aria-label="Permalink to "DDL - 表操作""></a></h4><h5 id="创建表" tabindex="-1">创建表 <a class="header-anchor" href="#创建表" aria-label="Permalink to "创建表""></a></h5><p><strong>在命令行下,可以在多行内编写一个SQL语句</strong></p><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">SHOW TABLES; # 查询当前数据库所有表</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">DESC</span><span style="color:#A6ACCD;"> 表名; # 查询 表结构</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;">SHOW </span><span style="color:#F78C6C;">CREATE</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">TABLE</span><span style="color:#A6ACCD;"> 表名; # 查询指定表的建表语句</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br></div></div><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;"># 创建表</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">CREATE</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">TABLE</span><span style="color:#A6ACCD;"> </span><span style="color:#82AAFF;">custom</span><span style="color:#A6ACCD;">(</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> param1 type1 [comment ''],</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> param2 type2 [comment ''],</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> param3 type3 [comment ''],</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> param4 type4 [comment '']</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;">)[comment '']</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br></div></div><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;"># 创建一个tb_user表</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">create</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">table</span><span style="color:#A6ACCD;"> </span><span style="color:#82AAFF;">tb_user</span><span style="color:#A6ACCD;">(</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> id </span><span style="color:#C792EA;">int</span><span style="color:#A6ACCD;"> comment </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">编号</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">name</span><span style="color:#A6ACCD;"> </span><span style="color:#C792EA;">varchar</span><span style="color:#A6ACCD;">(</span><span style="color:#F78C6C;">50</span><span style="color:#A6ACCD;">) comment </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">姓名</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> age </span><span style="color:#C792EA;">int</span><span style="color:#A6ACCD;"> comment </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">年龄</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> gender </span><span style="color:#C792EA;">varchar</span><span style="color:#A6ACCD;">(</span><span style="color:#F78C6C;">1</span><span style="color:#A6ACCD;">) comment </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">性别</span><span style="color:#89DDFF;">'</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> ) comment </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">用户表</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">;</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"># 展示数据库中所有表</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;">show tables;</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"># 查询表内所有字段</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">desc</span><span style="color:#A6ACCD;"> tb_user;</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"># 展示表的所有信息(包含字段注释、存储引擎、默认字符集、排序规则等信息)</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;">show </span><span style="color:#F78C6C;">create</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">table</span><span style="color:#A6ACCD;"> tb_user;</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br></div></div><p>案例 - 员工信息表</p><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#F78C6C;">create</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">table</span><span style="color:#A6ACCD;"> </span><span style="color:#82AAFF;">emp</span><span style="color:#A6ACCD;"> (</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> id </span><span style="color:#C792EA;">int</span><span style="color:#A6ACCD;"> comment </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">编号</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> workno </span><span style="color:#C792EA;">varchar</span><span style="color:#A6ACCD;">(</span><span style="color:#F78C6C;">10</span><span style="color:#A6ACCD;">) comment </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">工号</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">name</span><span style="color:#A6ACCD;"> </span><span style="color:#C792EA;">varchar</span><span style="color:#A6ACCD;">(</span><span style="color:#F78C6C;">10</span><span style="color:#A6ACCD;">) comment </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">姓名</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> gender </span><span style="color:#C792EA;">char</span><span style="color:#A6ACCD;">(</span><span style="color:#F78C6C;">1</span><span style="color:#A6ACCD;">) comment </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">性别</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> age </span><span style="color:#F78C6C;">tinyint</span><span style="color:#A6ACCD;"> unsigned comment </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">年龄</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> idcard </span><span style="color:#C792EA;">char</span><span style="color:#A6ACCD;">(</span><span style="color:#F78C6C;">18</span><span style="color:#A6ACCD;">) comment </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">身份证号</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> entrydate </span><span style="color:#C792EA;">date</span><span style="color:#A6ACCD;"> comment </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">入职时间</span><span style="color:#89DDFF;">'</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;">) comment </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">员工表</span><span style="color:#89DDFF;">'</span><span style="color:#A6ACCD;">;</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br></div></div><p>创建成功后,输入<code>desc emp</code>查看</p><div class="language-shell line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#FFCB6B;">mysql></span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">desc</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">emp</span><span style="color:#89DDFF;">;</span></span>
|
||
<span class="line"><span style="color:#FFCB6B;">+-----------+------------------+------+-----+---------+-------+</span></span>
|
||
<span class="line"><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">Field</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">Type</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">Null</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">Key</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">Default</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">Extra</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span></span>
|
||
<span class="line"><span style="color:#FFCB6B;">+-----------+------------------+------+-----+---------+-------+</span></span>
|
||
<span class="line"><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">id</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">int</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">YES</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">NULL</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span></span>
|
||
<span class="line"><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">workno</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">varchar(10</span><span style="color:#A6ACCD;">) </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">YES</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">NULL</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span></span>
|
||
<span class="line"><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">name</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">varchar(10</span><span style="color:#A6ACCD;">) </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">YES</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">NULL</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span></span>
|
||
<span class="line"><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">gender</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">char(1</span><span style="color:#A6ACCD;">) </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">YES</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">NULL</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span></span>
|
||
<span class="line"><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">age</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">tinyint</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">unsigned</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">YES</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">NULL</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span></span>
|
||
<span class="line"><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">idcard</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">char(18</span><span style="color:#A6ACCD;">) </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">YES</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">NULL</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span></span>
|
||
<span class="line"><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">entrydate</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">date</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">YES</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">NULL</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span></span>
|
||
<span class="line"><span style="color:#FFCB6B;">+-----------+------------------+------+-----+---------+-------+</span></span>
|
||
<span class="line"><span style="color:#FFCB6B;">7</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">rows</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">in</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">set</span><span style="color:#A6ACCD;"> (0.00 </span><span style="color:#C3E88D;">sec</span><span style="color:#A6ACCD;">)</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br></div></div><h5 id="修改表" tabindex="-1">修改表 <a class="header-anchor" href="#修改表" aria-label="Permalink to "修改表""></a></h5><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;"># 添加一个字段</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">alter</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">table</span><span style="color:#A6ACCD;"> 表名 </span><span style="color:#F78C6C;">add</span><span style="color:#A6ACCD;"> 字段名 类型(长度) [comment '']</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"># 修改一个字段</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">alter</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">table</span><span style="color:#A6ACCD;"> 表名 </span><span style="color:#F78C6C;">modify</span><span style="color:#A6ACCD;"> 旧字段名 新字段名 类型(长度) [comment '']</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"># 删除一个字段</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">alter</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">table</span><span style="color:#A6ACCD;"> 表名 </span><span style="color:#F78C6C;">drop</span><span style="color:#A6ACCD;"> 字段名</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"># 修改表名</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">alter</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">table</span><span style="color:#A6ACCD;"> 表名 rename </span><span style="color:#F78C6C;">to</span><span style="color:#A6ACCD;"> 新表名</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br></div></div><div class="language-sql line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#F78C6C;">alter</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">table</span><span style="color:#A6ACCD;"> emp </span><span style="color:#F78C6C;">add</span><span style="color:#A6ACCD;"> nickname </span><span style="color:#C792EA;">varchar</span><span style="color:#A6ACCD;">(</span><span style="color:#F78C6C;">20</span><span style="color:#A6ACCD;">) comment </span><span style="color:#89DDFF;">'</span><span style="color:#C3E88D;">昵称</span><span style="color:#89DDFF;">'</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">alter</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">table</span><span style="color:#A6ACCD;"> emp </span><span style="color:#F78C6C;">modify</span><span style="color:#A6ACCD;"> nickname username </span><span style="color:#C792EA;">varchar</span><span style="color:#A6ACCD;">(</span><span style="color:#F78C6C;">30</span><span style="color:#A6ACCD;">)</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">alter</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">table</span><span style="color:#A6ACCD;"> emp </span><span style="color:#F78C6C;">drop</span><span style="color:#A6ACCD;"> username</span></span>
|
||
<span class="line"><span style="color:#F78C6C;">alter</span><span style="color:#A6ACCD;"> </span><span style="color:#F78C6C;">table</span><span style="color:#A6ACCD;"> emp rename </span><span style="color:#F78C6C;">to</span><span style="color:#A6ACCD;"> employee</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br></div></div><h3 id="mysql数据类型" tabindex="-1">MySQL数据类型 <a class="header-anchor" href="#mysql数据类型" aria-label="Permalink to "MySQL数据类型""></a></h3><h4 id="数值类型" tabindex="-1">数值类型 <a class="header-anchor" href="#数值类型" aria-label="Permalink to "数值类型""></a></h4><p>在定义字段时,通过关键字<code>UNSIGNED</code>确定其<code>无符号 / 有符号</code></p><table><thead><tr><th style="text-align:left;">类型</th><th style="text-align:left;">大小</th><th style="text-align:left;">范围(有符号)</th><th style="text-align:left;">范围(无符号)</th><th style="text-align:left;">用途</th></tr></thead><tbody><tr><td style="text-align:left;">TINYINT</td><td style="text-align:left;">1 Bytes</td><td style="text-align:left;">(-128,127)</td><td style="text-align:left;">(0,255)</td><td style="text-align:left;">小整数值</td></tr><tr><td style="text-align:left;">SMALLINT</td><td style="text-align:left;">2 Bytes</td><td style="text-align:left;">(-32 768,32 767)</td><td style="text-align:left;">(0,65 535)</td><td style="text-align:left;">大整数值</td></tr><tr><td style="text-align:left;">MEDIUMINT</td><td style="text-align:left;">3 Bytes</td><td style="text-align:left;">(-8 388 608,8 388 607)</td><td style="text-align:left;">(0,16 777 215)</td><td style="text-align:left;">大整数值</td></tr><tr><td style="text-align:left;">INT或INTEGER</td><td style="text-align:left;">4 Bytes</td><td style="text-align:left;">(-2 147 483 648,2 147 483 647)</td><td style="text-align:left;">(0,4 294 967 295)</td><td style="text-align:left;">大整数值</td></tr><tr><td style="text-align:left;">BIGINT</td><td style="text-align:left;">8 Bytes</td><td style="text-align:left;">(-9,223,372,036,854,775,808,9 223 372 036 854 775 807)</td><td style="text-align:left;">(0,18 446 744 073 709 551 615)</td><td style="text-align:left;">极大整数值</td></tr><tr><td style="text-align:left;">FLOAT</td><td style="text-align:left;">4 Bytes</td><td style="text-align:left;">(-3.402 823 466 E+38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38)</td><td style="text-align:left;">0,(1.175 494 351 E-38,3.402 823 466 E+38)</td><td style="text-align:left;">单精度 浮点数值</td></tr><tr><td style="text-align:left;">DOUBLE</td><td style="text-align:left;">8 Bytes</td><td style="text-align:left;">(-1.797 693 134 862 315 7 E+308,-2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308)</td><td style="text-align:left;">0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308)</td><td style="text-align:left;">双精度 浮点数值</td></tr><tr><td style="text-align:left;">DECIMAL</td><td style="text-align:left;">对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2</td><td style="text-align:left;">依赖于M和D的值</td><td style="text-align:left;">依赖于M和D的值</td><td style="text-align:left;">小数值</td></tr></tbody></table><h4 id="字符串类型" tabindex="-1">字符串类型 <a class="header-anchor" href="#字符串类型" aria-label="Permalink to "字符串类型""></a></h4><table><thead><tr><th style="text-align:left;">类型</th><th style="text-align:left;">大小</th><th style="text-align:left;">用途</th></tr></thead><tbody><tr><td style="text-align:left;">CHAR</td><td style="text-align:left;">0-255 bytes</td><td style="text-align:left;">定长字符串</td></tr><tr><td style="text-align:left;">VARCHAR</td><td style="text-align:left;">0-65535 bytes</td><td style="text-align:left;">变长字符串</td></tr><tr><td style="text-align:left;">TINYBLOB</td><td style="text-align:left;">0-255 bytes</td><td style="text-align:left;">不超过 255 个字符的二进制字符串</td></tr><tr><td style="text-align:left;">TINYTEXT</td><td style="text-align:left;">0-255 bytes</td><td style="text-align:left;">短文本字符串</td></tr><tr><td style="text-align:left;">BLOB</td><td style="text-align:left;">0-65 535 bytes</td><td style="text-align:left;">二进制形式的长文本数据</td></tr><tr><td style="text-align:left;">TEXT</td><td style="text-align:left;">0-65 535 bytes</td><td style="text-align:left;">长文本数据</td></tr><tr><td style="text-align:left;">MEDIUMBLOB</td><td style="text-align:left;">0-16 777 215 bytes</td><td style="text-align:left;">二进制形式的中等长度文本数据</td></tr><tr><td style="text-align:left;">MEDIUMTEXT</td><td style="text-align:left;">0-16 777 215 bytes</td><td style="text-align:left;">中等长度文本数据</td></tr><tr><td style="text-align:left;">LONGBLOB</td><td style="text-align:left;">0-4 294 967 295 bytes</td><td style="text-align:left;">二进制形式的极大文本数据</td></tr><tr><td style="text-align:left;">LONGTEXT</td><td style="text-align:left;">0-4 294 967 295 bytes</td><td style="text-align:left;">极大文本数据</td></tr></tbody></table><p><strong>注意</strong>:char(n) 和 varchar(n) 中括号中 n 代表字符的个数,并不代表字节个数,比如 CHAR(30) 就可以存储 30 个字符。</p><p>CHAR 和 VARCHAR 类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。<strong>CHAR性能更优</strong></p><p>BINARY 和 VARBINARY 类似于 CHAR 和 VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。也就是说,它们包含字节字符串而不是字符字符串。这说明它们没有字符集,并且排序和比较基于列值字节的数值值。</p><p>BLOB 是一个二进制大对象,可以容纳可变数量的数据。有 4 种 BLOB 类型:TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB。它们区别在于可容纳存储范围不同。</p><p>有 4 种 TEXT 类型:TINYTEXT、TEXT、MEDIUMTEXT 和 LONGTEXT。对应的这 4 种 BLOB 类型,可存储的最大长度不同,可根据实际情况选择。</p><h4 id="日期时间类型" tabindex="-1">日期时间类型 <a class="header-anchor" href="#日期时间类型" aria-label="Permalink to "日期时间类型""></a></h4><table><thead><tr><th style="text-align:left;">类型</th><th style="text-align:left;">大小 ( bytes)</th><th style="text-align:left;">范围</th><th style="text-align:left;">格式</th><th style="text-align:left;">用途</th></tr></thead><tbody><tr><td style="text-align:left;">DATE</td><td style="text-align:left;">3</td><td style="text-align:left;">1000-01-01/9999-12-31</td><td style="text-align:left;">YYYY-MM-DD</td><td style="text-align:left;">日期值</td></tr><tr><td style="text-align:left;">TIME</td><td style="text-align:left;">3</td><td style="text-align:left;">'-838:59:59'/'838:59:59'</td><td style="text-align:left;">HH:MM:SS</td><td style="text-align:left;">时间值或持续时间</td></tr><tr><td style="text-align:left;">YEAR</td><td style="text-align:left;">1</td><td style="text-align:left;">1901/2155</td><td style="text-align:left;">YYYY</td><td style="text-align:left;">年份值</td></tr><tr><td style="text-align:left;">DATETIME</td><td style="text-align:left;">8</td><td style="text-align:left;">1000-01-01 00:00:00/9999-12-31 23:59:59</td><td style="text-align:left;">YYYY-MM-DD HH:MM:SS</td><td style="text-align:left;">混合日期和时间值</td></tr><tr><td style="text-align:left;">TIMESTAMP</td><td style="text-align:left;">4</td><td style="text-align:left;">1970-01-01 00:00:00/2038结束时间是第 <strong>2147483647</strong> 秒,北京时间 <strong>2038-1-19 11:14:07</strong>,格林尼治时间 2038年1月19日 凌晨 03:14:07</td><td style="text-align:left;">YYYYMMDD HHMMSS</td><td style="text-align:left;">混合日期和时间值,时间戳</td></tr></tbody></table>`,71),p=[t];function o(r,c,C,y,i,d){return a(),l("div",null,p)}const F=s(e,[["render",o]]);export{D as __pageData,F as default};
|