MySQL
<h1 id="mysql"><strong>MySQL</strong></h1><h2 id="初始化">初始化</h2>
<p>管理员身份运行cmd</p>
<pre><code class="language-mysql">-- 初始化
mysqld --initialize-insecure
-- 注册mysql服务
mysqld -install
-- 启动mysql服务
net start mysql
-- 修改默认账户密码
mysqladmin -u root password 1234
-- 登录mysql
mysql -uroot -p1234
</code></pre>
<h2 id="卸载mysql">卸载MySQL</h2>
<pre><code class="language-mysql">-- 停止mysql服务
net stop mysql
-- 卸载mysql服务
mysqld -remove mysql
</code></pre>
<h3 id="数据库操作">数据库操作</h3>
<pre><code class="language-mysql">-- 查询所有数据库
show databases;
-- 使用数据库
use db_name;
-- 查询当前数据库
select database();
-- 创建数据库
create database db_name ;
-- 删除数据库
drop database db_name;
</code></pre>
<h3 id="sql功能分类">SQL功能分类</h3>
<table>
<thead>
<tr>
<th style="text-align: center">分类</th>
<th style="text-align: center">说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: center">DDL</td>
<td style="text-align: center">用于定义数据库对象(数据库,表,字段)</td>
</tr>
<tr>
<td style="text-align: center">DML</td>
<td style="text-align: center">用于对数据库表中的数据进行增删改</td>
</tr>
<tr>
<td style="text-align: center">DQL</td>
<td style="text-align: center">用于查询数据库中表的数据</td>
</tr>
<tr>
<td style="text-align: center">DCL</td>
<td style="text-align: center">用于创建数据库用户,控制数据库的访问权限</td>
</tr>
</tbody>
</table>
<h3 id="表-ddl">表-DDL</h3>
<h4 id="表创建">表创建</h4>
<pre><code class="language-mysql">create table table_name(
字段名 字段类型 [约束] ,
...
字段名 字段类型 [约束]
)
</code></pre>
<h4 id="约束">约束</h4>
<pre><code>not null 非空
unique 唯一
primary key 非空且唯一
default 默认值
auto_increment 自动增长
foreign key 外键
</code></pre>
<h4 id="字段类型">字段类型</h4>
<table>
<thead>
<tr>
<th style="text-align: center">字符串类型</th>
<th style="text-align: center">描述</th>
<th style="text-align: center">数值类型</th>
<th style="text-align: center">描述</th>
<th style="text-align: center">日期类型</th>
<th style="text-align: center">描述</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: center">tinyint</td>
<td style="text-align: center">小整数值</td>
<td style="text-align: center">char</td>
<td style="text-align: center">定长字符串</td>
<td style="text-align: center">date</td>
<td style="text-align: center">YYYY-MM-DD</td>
</tr>
<tr>
<td style="text-align: center">smallint</td>
<td style="text-align: center">大整数值</td>
<td style="text-align: center">varcahr</td>
<td style="text-align: center">可变长字符串</td>
<td style="text-align: center">time</td>
<td style="text-align: center">HH:MM:SS</td>
</tr>
<tr>
<td style="text-align: center">mediumint</td>
<td style="text-align: center">大整数值</td>
<td style="text-align: center">tinyblob</td>
<td style="text-align: center">小于255字符的二进制字符串</td>
<td style="text-align: center">year</td>
<td style="text-align: center">YYYY</td>
</tr>
<tr>
<td style="text-align: center">int</td>
<td style="text-align: center">大整数值</td>
<td style="text-align: center">tinytext</td>
<td style="text-align: center">短文本字符串</td>
<td style="text-align: center">datetime</td>
<td style="text-align: center">YYYY-MM-DD HH:MM:SS</td>
</tr>
<tr>
<td style="text-align: center">bigint</td>
<td style="text-align: center">极大整数值</td>
<td style="text-align: center">blob</td>
<td style="text-align: center">二进制长字符串</td>
<td style="text-align: center"></td>
<td style="text-align: center"></td>
</tr>
<tr>
<td style="text-align: center">float</td>
<td style="text-align: center">单精度浮点数</td>
<td style="text-align: center">text</td>
<td style="text-align: center">长文本字符串</td>
<td style="text-align: center"></td>
<td style="text-align: center"></td>
</tr>
<tr>
<td style="text-align: center">double</td>
<td style="text-align: center">双精度浮点数</td>
<td style="text-align: center">mediumblob</td>
<td style="text-align: center">中等二进制长字符串</td>
<td style="text-align: center"></td>
<td style="text-align: center"></td>
</tr>
<tr>
<td style="text-align: center">decimal</td>
<td style="text-align: center">小数值(精度更高)</td>
<td style="text-align: center">mediumtext</td>
<td style="text-align: center">中等文本字符串</td>
<td style="text-align: center"></td>
<td style="text-align: center"></td>
</tr>
<tr>
<td style="text-align: center"></td>
<td style="text-align: center"></td>
<td style="text-align: center">longblob</td>
<td style="text-align: center">二进制极长字符串</td>
<td style="text-align: center"></td>
<td style="text-align: center"></td>
</tr>
<tr>
<td style="text-align: center"></td>
<td style="text-align: center"></td>
<td style="text-align: center">longtext</td>
<td style="text-align: center">极长文本字符串</td>
<td style="text-align: center"></td>
<td style="text-align: center"></td>
</tr>
</tbody>
</table>
<h4 id="表的修删查">表的修删查</h4>
<pre><code class="language-mysql">-- 查询所有数据库的表
show tables;
-- 查询表结构
desc table_name;
-- 查询建表语句
show create table table_name;
-- 增加字段
alter table table_name add 字段 类型 [约束]
-- 修改字段类型
alter table table_name modify 字段 新类型;
-- 修改字段名和类型
alter table table_name change 旧名 新名 类型 [约束];
-- 删除字段
alter table table_name drop column 字段;
-- 修改表名
alter table table_name rename to 新表名;
-- 删除表
drop table table_name;
</code></pre>
<h3 id="表-dml">表-DML</h3>
<h4 id="表的增删改">表的增删改</h4>
<pre><code class="language-mysql">-- 指定字段插入
insert into table_name(字段1,字段2) values(值1,值2);
-- 插入所有字段
insert into table_name values(值1,值2,...);
-- 批量插入
insert into table_name(字段1,字段2) values(值1,值2), (值3,值4);
insert into table_name values(值1,值2,值3), (值4,值5,值6);
-- 修改数据
update table_name set 字段1=值1,字段2=值2 ;
-- 删除数据
delete from table_name ;
</code></pre>
<h3 id="表-dql">表-DQL</h3>
<h4 id="表的查询语句">表的查询语句</h4>
<ul>
<li>基本查询</li>
</ul>
<pre><code class="language-mysql">-- 查询多个字段
select 字段1,字段2,字段3... from 表名;
-- 查询所有字段
select * from 表名;
-- 为字段起别名
select 字段1 , 字段2 from 表名;
-- 去重
select distinct 字段1,字段2 from 表名;
</code></pre>
<ul>
<li>聚合函数</li>
</ul>
<table>
<thead>
<tr>
<th style="text-align: center">聚合函数</th>
<th style="text-align: center">功能</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: center">count()</td>
<td style="text-align: center">统计数量</td>
</tr>
<tr>
<td style="text-align: center">sum()</td>
<td style="text-align: center">求和</td>
</tr>
<tr>
<td style="text-align: center">avg()</td>
<td style="text-align: center">求平均值</td>
</tr>
<tr>
<td style="text-align: center">max()</td>
<td style="text-align: center">求最大值</td>
</tr>
<tr>
<td style="text-align: center">min()</td>
<td style="text-align: center">求最小值</td>
</tr>
</tbody>
</table>
<pre><code class="language-mysql">select 字段列表
from 表名列表
]
</code></pre>
<blockquote>
<p>没有显式指定 GROUP BY 子句时,模式要求 SELECT 列表中的所有非聚合列必须包含在聚合函数中</p>
</blockquote>
</div>
<div id="MySignature" role="contentinfo">
<p>本文来自博客园,作者:Nobody_Cares,转载请注明原文链接:https://www.cnblogs.com/NobodyCares/p/19161788</p>
<span id="jinrishici-sentence">正在加载今日诗词....</span><br><br>
来源:https://www.cnblogs.com/NobodyCares/p/19161788
頁:
[1]