创建数据库

对于表的操作需要先进入库 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. 转 Using $.ajaxPrefilter() To Configure AJAX Requests In jQuery 1.5

    Using $.ajaxPrefilter() To Configure AJAX Requests In jQuery 1.5 Posted February 18, 2011 at 6:29 PM ...

  2. [比赛总结]ACM div3 G 比赛总结

    这次题目总体感觉和做阅读理解差不多,英文题目读起来相当费劲. 另外,这次比赛整个队伍中我们三个都突出存在的问题就是,把简单问题复杂化,抓不到事物的本质,因此很容易的就被题目误导. 比如C题,明明想到了 ...

  3. lintcode-118-不同的子序列

    118-不同的子序列 给出字符串S和字符串T,计算S的不同的子序列中T出现的个数. 子序列字符串是原始字符串通过删除一些(或零个)产生的一个新的字符串,并且对剩下的字符的相对位置没有影响.(比如,&q ...

  4. redis-20180118

    1.redis hash  100% 2.redis list 100% 3.redis sentinel 20%

  5. 详细介绍弹性盒模型(display:flex)

    弹性盒模型,即Flexbox,是css3中的新特性,其实弹性盒模型的原身是dispaly:box:这里,我们暂时不考虑旧的,我们只看新的. 为容器指定弹性盒子,只需在父元素(也就是容器)中设置:dis ...

  6. hadoop 集群常见错误解决办法

    hadoop 集群常见错误解决办法 hadoop 集群常见错误解决办法: (一)启动Hadoop集群时易出现的错误: 1.   错误现象:Java.NET.NoRouteToHostException ...

  7. [NOIP2018 TG D1T3]赛道修建

    题目大意:$NOIP2018\;TG\;D1T3$ 题解:题目要求最短的赛道的长度最大,可以想达到二分答案,接着就是一个显然的树形$DP$. 发现对于一个点,它子树中若有两条链接起来比要求的答案大,一 ...

  8. [学习笔记]对未来做出承诺的DP小结

    这是一种DP状态设计方法. 有些题,当你必须以一个顺序往后填的话,然而后面的填法会对之前产生影响,那么,不妨在之前就对未来怎么填做出承诺. 通俗的讲,就是对未来打一个表. 然后后面填的时候,直接查表转 ...

  9. CSS样式权重的级联cascade的概念

    我们知道,firefox在众多浏览器中是对css 2高度兼容的一款浏览器,那是我能够编写一个中型b2b网站的时候(并不能说是我遇到过的难题)在禅意花园中看到的一个案例,说的是某个菜单在css中定义了以 ...

  10. MySQL里执行SHOW INDEX结果中Cardinality的含义

    今天在写一个Perl脚本,想自动化查找出MySQL数据库中可能无效的索引,于是根据朝阳的书上提到的一些规则,我来设计了一些判断方法,其中发现某个我想要的值就是SHOW INDEX FROM table ...