本文是MySQL的基础知识。

Linux启动MySQL服务命令 :

  service mysql start

Linux关闭MySQL服务命令 :

  service mysql stop

登录MySQL命令:

  mysql -u <用户名>

查看数据库命令:

  show databases;

切换数据库命令:

  use <数据库名>[;]

查看表命令:

  show tables;

退出MySQL命令:

  quit/exit

创建数据库命令:

  create database <数据库名>;

新建数据表命令:

  create table <表名>

  (列名1   数据类型(数据长度),

    …………

   列名n   数据类型(数据长度)

  );

执行sql文件命令:

  source  <sql文件路径>;

MySQL数据类型

数据类型 大小(字节) 用途 格式
int 4 整数  
float 4 单精度浮点数  
double 4 双精度浮点数  
enum   枚举,单选 ENUM('a','b')
set   多选 set('1','2','3')
date 3 日期 yyyy-MM-dd
time 3 时间点或持续时间 yyyy-MM-dd hh:ms:ss
year 1 年份值 yyyy
char 0-255 定长字符串  
varchar 0-255 变长字符串  
text 0-65535 长文本数据  

  除此之外,还有tinyint、smallint、mediumint、bigint.

char与varchar区别:

  char定长,字符不够时补齐;varchar变长,没有补齐的空字符

enum与set区别:

  enum定义时要一一枚举;set是多选的

MySQL约束分类:

约束类型 主键 默认值 唯一 外键 非空
关键字 PRIMARY KEY DEFAULT UNIQUE FOREIGN KEY NOT NULL

主键约束命令:

  <列名>  <数据类型>[数据长度]  PRIMARY KEY

  或者

  CONSTRAINT  <主键名>  PRIMARY KEY (<列名1>,…,<列名n>)

默认值约束命令:

  <列名>  <数据类型>[数据长度]  DEFAULT  <默认值>

唯一约束命令:

  UNIQUE  <(列名)>

外键约束命令:

  CONSTRAINT  <外键>  FOREIGN  KEY  <(列名)>  REFERENCES  <表名><(列名)>

非空约束命令:

  <列名>  <数据类型>[数据长度]  NOT NULL

插入数据命令:

  insert  into  <表名>(<列名1>,…,<列名n>)  values

  (值1,…,值n),

  …………

  (值1,…,值n);

删除库命令:

  drop  database  <库名>;

删除表命令:

  drop  table  <表名>;

查询命令:

  select  <列名n>  from  <表名>  where <限制条件>;

数学符号条件:

  =  <  >  <=  >=  <>  !=

AND  并且

OR   或者

BETWEEN  ......  AND  ......   两者之间

IN 在范围内

NOT  IN  不在范围内

通配符:

  _(下划线) : 代表一个未指定字符,占一位

  % :代表不定个未指定字符

  与 like 配合使用

结果排序:

  order  by  [<关键字>];

    ASC  : 升序(默认)

    DESC  : 降序

内置函数:

count sum avg max min
计数 求和 求平均值 最大值 最小值

  count 可以用于任意数据类型; sum和avg 用于数字类数据类型;max和min 用于数值、字符、日期时间类型

AS : 别名

子查询

  嵌套查询

连接查询命令

  jion … on …

  左连接(影响右表) : left  jion … on …

  右连接(影响左表) : right  jion … on …

  左右都有影响的连接 : inner  jion … on …

表重命名命令

  rename  table  <表原名>  to  <表新名>;

  alter  table  <表原名>  rename  <表新名>;

  alter  table  <表原名>  rename  to  <表新名>;

增加列命令

  alter  table  <表名>  add [column] <列名>  <数据类型>  <约束>;

  或者  alter  table <表名> add <列名> <数据类型> <约束>;

删除列命令

  alter table <表名> drop [column] <列名>;

列重命名命令

  alter table <表名> change <列原名>  <列新名>  <数据类型> <约束>;

修改数据类型命令

  alter table <表名> modify <列名> <新数据类型>;

修改值命令

  update <表名> set 列1=值1,…,列n=值n where <条件>;

删除行记录命令

  delete from <表名> where <条件>;

创建索引命令

  alter  table  <表名>  add  index  <索引名>(<列名>);

  或者 create  index  <索引名>  on  <表名>(列名);

查看索引命令

  show  index  from  <表名>;

创建视图命令

  create  view  <视图名>(列1,…,列n) as select 列1,…,列n from  <表名>;

导入命令

  将一个文件的数据导入到一张数据表里

  load  data  infile  <'文件路径和文件名'>  into  table  <表名>;

导出命令

  把某表中的数据保存到文件中

  select  列1,…,列n  into  outfile  <'文件路径和文件名'>  from  <表名>;

数据库备份命令

  mysqldump  -u  <用户名,如root>  <数据库名> > <文件路径和文件名>;

数据表备份命令

  mysqldump  -u  <用户名,如root>  <数据库名>  <表名> > <文件路径和文件名>;

数据恢复命令

  source  <文件路径和文件名>;

  或者 mysql  -u  <用户名,如root>  <数据库名>  <  <文件路径和文件名>;

MySQL学习——基础的更多相关文章

  1. MySQL学习基础 之 起航篇

    MySQL 学习来自慕课网<与MySQL的零距离接触> MySQL是一个开源的关系型数据库管理系统 MySQL分为社区版和企业版 MySQL登录和退出相关的命令 参数 描述 -D,--da ...

  2. MySQL学习基础

    MySQL是被Sun公司收购了,所以也有热咖啡图标,不过MySQL的作者后来又做了一个MariaDB,小海豚图标,也很好用. MySQL学习: <MySQL网络数据库设计与开发>(电子工业 ...

  3. MySQL学习基础知识1

    什么是数据库? 数据库就是存储数据的仓库. 存储方式: 变量 无法永久存储 文件处理,可以永久存储,弊端:文件只能在自己的计算机读写,无法被分享(局域网除外) 数据库分类: 1.关系型数据库 提供某种 ...

  4. MySQL学习基础知识2

    1.基础语句 查 select(* | 字段名 | 四则运算 | 聚合函数) from 表名称; 加上as取别名 as可省略 如:select name, (math+english)/2 total ...

  5. Mysql学习---基础操作学习2

    基本数据类型 Mysql基本数据类型:二进制,数值[整数,小数].字符串[定长,变长]. 二进制数据.时间和枚举集合 bit[(M)] 二进制位(101001),m表示二进制位的长度(1-64),默认 ...

  6. Mysql学习基础语法

    -- Mysql 数 据 库 语 法 创建数据库 create database 数据库名; 创建表 ) ); 复制表和数据 create table 复制后新的表名 select * from 旧表 ...

  7. mysql学习基础知识3

    1.视图 简化sql语句的编写,限制可以查看的数据 一张虚拟的表,不占任何内存,查视图时都是临时从所查的表中拿数据 特点: 对于视图的增删改查 都会同步到原始表 对原始表的修改,会同步到视图内可查看的 ...

  8. Mysql学习---基础操作学习

    1.1. 基本操作 数据库引擎 Inodb:支持事务[原子性操作,完成一些列操作后才算完成操作,否则rollback] MyISAM: 支持全文索引,强调了快速读取操作,主要用于高负载的select ...

  9. 借助node.js + mysql 学习基础ajax~

    很多小白不知道ajax怎么学,所以就弄了个node后台模拟下基本的ajax请求. 环境要求是安装node~ 先上linkMysql.js var mysql = require('mysql') va ...

随机推荐

  1. 分布式缓存技术memcached学习系列(一)——linux环境下编译memcahed

    安装依赖工具 [root@localhost upload]# yum  install gcc  make  cmake  autoconf  libtool 下载并上传文件 memcached 依 ...

  2. 利用插件对某些网页执行javascript代码

    说明 javascript在浏览器地址栏中可以运行,也可以按F12在控制台中运行,还可以写一个插件让javascript针对某些网页执行,可以使用chrome浏览器的Content scripts,C ...

  3. 超链接标签的CSS伪类link,visited,hover,active

    CSS伪类,是一种特殊的类,它针对到CSS选择器起作用,使选中的标签或元素产生特定的效果. CSS伪类的语法就是: 选择器 : 伪类名 { 属性 : 属性值 } 用的最多的伪类就是超链接a的伪类,有: ...

  4. Python运算符及逻辑运算

    基本运算符 运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.例如:2+3,其操作数是2和3,而运算符则是“+”.在计算器语言中运算符大致可以分为5种类型:算术运算符.连接运算符.关系运 ...

  5. 孤荷凌寒自学python第五天初识python的列表

    孤荷凌寒自学python第五天 列表 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 粗俗地区分列表,可以这样理解,定义或print列表后显示时,列表中的各元素都是用一个方括号[]括起来的. ...

  6. HDU 4346 The Beautiful Road ( 反向考虑 思路题 )

    考虑对立情况,不漂亮的串的形式必然为GGGGR……R……RGGGG 相邻R之间的距离为奇数且相等. #include <cstdio> #include <cstring> # ...

  7. Metaspolit

    Metaspolit介绍 Metasploit是一款开源的安全漏洞检测工具,安全工作人员常用 Metasploit工具来检测系统的安全性.Metasploit Framework (MSF) 在200 ...

  8. RMAN 增量备份级别说明

    通过Bat批处理调用RMan是我们定时备份数据库的好帮手,但是RMan的备份级别需要我们好好了解一下. RMAN备份全为全备和增量备份 增量备份:分为0 1 2级 ORACLE官方解释: A leve ...

  9. VB.NET概述

    简介 Visual Basic .NET属Basic系语言,VB.NET是一门高级的编程语言,当然在Basic系语言中VB.NET也确实是迄今为止最强大的一门编程语言.Visual Basic .NE ...

  10. Nginx简单的配置详情

    大致了解Nginx后,直接从配置文件入手: [shell] #定义Nginx运行的用户和用户组 user nginx; #nginx进程数,建议设置为等于CPU总核心数. worker_process ...