创建数据库

对于表的操作需要先进入库 use 库名;

-- 创建一个名为 inana_db 的数据库,数据库字符编码指定为 utf8
create database inana_db character set utf8;
drop database inana_db; -- 删除 库名为samp_db的库
show databases;        -- 显示数据库列表。
use inana_db;    -- 选择创建的数据库samp_db
show 表名;       -- 显示samp_db下面所有的表名字
describe 表名;   -- 显示数据表的结构
delete from 表名; -- 清空表中记录

创建数据库表

使用 create table 语句可完成对表的创建, create table 的常见形式:语法:create table 表名称(列声明);

CREATE TABLE table_name (
  id   int   AUTO_INCREMENT primary key,
  password   varchar(32)       NOT NULL   DEFAULT ' '   COMMENT '用户密码',
  reset_password  tinyint(32)       NOT NULL   DEFAULT 0   COMMENT '用户类型:0-不需要重置密码;1-需要重置密码',
  mobile varchar(20)       NOT NULL   DEFAULT ''   COMMENT '手机',
  -- 创建唯一索引,不允许重复
  UNIQUE INDEX idx_user_mobile(`mobile`)
)CHARSET=utf8;

数据类型的属性解释
NULL:数据列可包含NULL值;
NOT NULL:数据列不允许包含NULL值;
DEFAULT:默认值;
PRIMARY:KEY 主键;
AUTO_INCREMENT:自动递增,适用于整数类型;
UNSIGNED:是指数值类型只能为正数;
CHARACTER SET name:指定一个字符集;
COMMENT:对表或者字段说明;

增删改查

SELECT 语句用于从表中选取数据。
语法:SELECT 列名称 FROM 表名称
语法:SELECT * FROM 表名称

Update 语句用于修改表中的数据。
语法:UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

INSERT INTO 语句用于向表格中插入新的行。
语法:INSERT INTO 表名称 VALUES (值1, 值2,....)
语法:INSERT INTO 表名称 (列1, 列2,...) VALUES (值1, 值2,....)

DELETE 语句用于删除表中的行。
语法:DELETE FROM 表名称 WHERE 列名称 = 值

WHERE 子句用于规定选择的标准。
语法:SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

IN - 操作符允许我们在 WHERE 子句中规定多个值。
IN - 操作符用来指定范围,范围中的每一条,都进行匹配。IN取值规律,由逗号分割,全部放置括号中。
语法:SELECT "字段名"FROM "表格名"WHERE "字段名" IN ('值一', '值二', ...);

ORDER BY
语句默认按照升序对记录进行排序。
ORDER BY - 语句用于根据指定的列对结果集进行排序。
DESC - 按照降序对记录进行排序。
ASC - 按照顺序对记录进行排序。

as - 可理解为:用作、当成,作为;别名 一般是重命名列名或者表名。
语法:select column_1 as 列1,column_2 as 列2 from table as 表

JOIN:如果表中有至少一个匹配,则返回行
INNER JOIN:在表中存在至少一个匹配时,INNER JOIN 关键字返回行。
LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行
RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行
FULL JOIN:只要其中一个表中存在匹配,就返回行

常用函数

COUNT 让我们能够数出在表格中有多少笔资料被选出来。
语法:SELECT COUNT("字段名") FROM "表格名";

MAX 函数返回一列中的最大值。NULL 值不包括在计算中。
语法:SELECT MAX("字段名") FROM "表格名"

添加索引index

语法:ALTER TABLE 表名字 ADD INDEX 索引名字 ( 字段名字 )

主键索引(PRIMARY key)
语法:ALTER TABLE 表名字 ADD PRIMARY KEY (字段名字)

唯一索引(UNIQUE)
语法:ALTER TABLE 表名字 ADD UNIQUE (字段名字)

创建后表的修改

添加列       语法:alter table 表名 add 列名 列数据类型 [after 插入位置]

修改列       语法:alter table 表名 change 列名称 列新名称 新数据类型;

删除列     语法:alter table 表名 drop 列名称;

重命名表    语法:alter table 表名 rename 新表名;

清空表数据     语法:delete from 表名;

删除整张表   语法:drop table 表名;

删除数据库     语法:drop database 数据库名;

MySQL 基础内容的更多相关文章

  1. MySQL基础内容

    数据类型 菜鸟教程(见最下方网友整理) : https://www.runoob.com/mysql/mysql-data-types.html 其他: 1字节(byte)=8位(bit),所以dou ...

  2. Mysql基础代码(不断完善中)

    Mysql基础代码,不断完善中~ /* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权限 ...

  3. MYSQL基础操作

    MYSQL基础操作 [TOC] 1.基本定义 1.1.关系型数据库系统 关系型数据库系统是建立在关系模型上的数据库系统 什么是关系模型呢? 1.数据结构可以规定,同类数据结构一致,就是一个二维的表格 ...

  4. MySQL基础(非常全)

    MySQL基础 一.MySQL概述 1.什么是数据库 ? 答:数据的仓库,如:在ATM的示例中我们创建了一个 db 目录,称其为数据库 2.什么是 MySQL.Oracle.SQLite.Access ...

  5. mysql 基础篇5(mysql语法---数据)

    6 增删改数据 -- ********一.增删改数据********* --- -- 1.1 增加数据 -- 插入所有字段.一定依次按顺序插入 INSERT INTO student VALUES(1 ...

  6. MySQL基础学习总结

    1.MySQL基础概念 mysql逻辑架构如下: 每个客户端连接都会在服务器中拥有一个线程,这个连接的查询只会在这个单独的线程中执行. MySQL是分层的架构.上层是服务器层的服务和查询执行引擎,下层 ...

  7. MYSQL基础笔记(五)- 练习作业:站点统计练习

    作业:站点统计 1.将用户的访问信息记录到文件中,独占一行,记录IP地址 <?php //站点统计 header('Content-type:text/html;charset=utf-8'); ...

  8. MYSQL基础笔记(一)

    关系型数据库概念: 1.什么是关系型数据库? 关系型数据库:是一种建立在关系模型(数学模型)上的数据库 关系模型:一种所谓建立在关系上的模型. 关系模型包含三个方面: 1.数据结构:数据存储的问题,二 ...

  9. MYSQL 基础操作

    1.MySQL基础操作 一:MySQL基础操作 1:MySQL表复制 复制表结构 + 复制表数据 create table t3 like t1; --创建一个和t1一样的表,用like(表结构也一样 ...

随机推荐

  1. java获得采集网页内容的方法小结

          为了写一个java的采集程序,从网上学习到3种方法可以获取单个网页内容的方法,主要是运用到是java IO流方面的知识,对其不熟悉,因此写个小结. import java.io.Buffe ...

  2. 阿里云服务器 linux下载 jdk

    直接从本地下载包上传比较慢.直接在服务器上下载安装包: 1.进入orcle官网; 2.选择需要下载的版本,下载需要同意orcle协议, 3.点击下载,获取到下载请求的cookie, 复制所有cooki ...

  3. postman工具中如何提取接口的返回值

    提取接口返回值   当返回值是返回JSON时 1.let json = JSON.parse(responseBody); // responseBody是包含整个返回内容的字符串 提取某字段的值: ...

  4. 使用emit发出信号

    1. 信号声明 在发送信号的模块类头文件中声明信号函数 signals: void sendRate(QString rate); 2. 在发送模块的成员函数中发出信号 emit sendRate(u ...

  5. Zebra - zebra command to get printer status

    /// <summary> /// determine whether the network printer is in pause. /// </summary> /// ...

  6. java enum naming rules & Pascal case, Camel case, Uppercase

    java enum naming rules Constant & all Capital Case https://stackoverflow.com/questions/3069743/c ...

  7. 2017博普杯 东北大学邀请赛(B. Drink too much water)(贪心+树链剖分)

    题目地址:https://oj.neu.edu.cn/problem/1204 题目大意: 其实就是树上的线段覆盖, 给出一棵n个结点的树,然后给出树上的一些路径进行覆盖,然后要求选取最少的点,能够把 ...

  8. [Leetcode] Longest consecutive sequence 最长连续序列

    Given an unsorted array of integers, find the length of the longest consecutive elements sequence. F ...

  9. gitlab之:gitlab 403 forbidden 并发引起ip被封

    步骤: * 打开/etc/gitlab/gitlab.rb文件. * 查找gitlab_rails['rack_attack_git_basic_auth']关键词. * 取消注释 * 修改ip_wh ...

  10. .NET的PE文件结构篇(转)

    一.开篇 开篇我要讲述一个关于PE文件结构的文章,这篇文章动手能力比较强,希望大家能够动手进行操作,这边文章篇幅有可能会长一些,为了方便大家阅读我可以将其分为几个部分进行讲解,主要分为以下几个部分: ...