mysql基础 - #2

这是 DataWhale 新闻推荐系统实战的 Task2,主要任务有:

  • mysql 基础
  • MongoDB 基础
  • redis 基础

本篇博客主要是关于 mysql 基础,Fun-rec的文档在这里

当前为mysql基础第二篇,前期内容:

1. 数据库的操作

创建数据库

  • 语法:
CREATE DATABASE [IF NOT EXISTS] <数据库名称> [[default] character set <字符集>] [[default] collate <校对规则> ];
  • MySQL 的字符集(CHARACTER)和校对规则(COLLATION)是两个不同的概念。字符集是用来定义 MySQL 存储字符串的方式,校对规则定义了比较字符串的方式

修改数据库

  1. 修改属性
  • 语法:
alter database <数据库名>
default character set <字符集>
default collate <校对规则>;
  1. 删除
  • 语法:drop database [IF EXISTS] <数据库名>;

查看数据库

  • 查看有哪些数据库,语法:show databases;
  • 查看某个数据库的定义声明,语法:show create database <数据库名>;
  • 查看某些数据库:show databases like '数据库名匹配串';

2. 数据表的操作

创建数据表

  • 语法:
CREATE TABLE <表名> (<字段1> <数据类型> <该列所需约束>,
   <字段2> <数据类型> <该列所需约束>,
   <字段3> <数据类型> <该列所需约束>,
   <字段4> <数据类型> <该列所需约束>,
   .
   .
   .
   <该表的约束1>, <该表的约束2>,……);

删除数据表

  • 语法:DROP TABLE <表名>;

查看表结构

  • 查看表的字段信息,语法:desc 表名;describe 表名;
  • 以sql语句的形式展示表结构,语法:show create table 表名;

复制表

  1. 复制表结构和内容
  • 语法:
create table 新表名 
       select * from 已有的表;
  1. 仅复制表结构
  • 语法
create table 新表名 like 已有的表;

修改表结构

通过 alter table_name [修改选项] 来完成,其中 修改选项 的语法格式为:

{ ADD COLUMN <列名> <类型>
| CHANGE COLUMN <旧列名> <新列名> <新列类型>
| ALTER COLUMN <列名> { SET DEFAULT <默认值> | DROP DEFAULT }
| MODIFY COLUMN <列名> <类型>
| DROP COLUMN <列名>
| RENAME TO <新表名>
| CHARACTER SET <字符集名>
| COLLATE <校对规则名> }
  1. 更改表名
  • 语法:ALTER TABLE <原表名> RENAME <新表名>;
  • 例子:alter table xoxo rename xxoo;
  1. 增加字段
  • 语法:alter table 表名 add 列名 数据类型;
  • 例子:alter table news add content text;
  • 增加字段时,还可以指定增加的位置;
  1. 删除字段
  • 语法:alter table 表名 drop 列名;
  • 例子:alter table news drop content;
  1. 重命名字段
  • 语法:alter table 表名 change 旧列名 新列名 新数据类型;
  • 例子:alter table news change content body text;

查看数据库中的表

  • 语法:show tables;

3. 表中数据

操纵表中数据主要分为:增(insert)、删(delete)、改(update)、查(select)。其中最复杂的莫过于查了,这是最常使用的也是最难掌握的。本篇博客中只列出它们的语法,不展开讲解。

select

语法:

SELECT
{* | <字段列名>}
[
FROM <表 1>, <表 2>…
[WHERE <表达式>
[GROUP BY <group by definition>
[HAVING <expression> [{<operator> <expression>}…]]
[ORDER BY <order by definition>]
[LIMIT[<offset>,] <row count>]
]

update

语法:

UPDATE <表名> SET 字段 1=值 1 [,字段 2=值 2… ] [WHERE 子句 ]
[ORDER BY 子句] [LIMIT 子句]

insert

语法:

INSERT INTO <表名> [ (<列名1> [ , … <列名n>] )]
VALUES (值1) [… , (值n) ];

delete

语法:

DELETE FROM <表名> [WHERE 子句] [ORDER BY 子句] [LIMIT 子句]
posted @ 2021-12-16 15:01  Milkha  阅读(62)  评论(0编辑  收藏  举报