SQL语句基础理论

  SQL是操作和检索关系型数据库的标准语言,标准SQL语句可用于操作关系型数据库。

5大主要类型:

  ①DQL(Data Query Language,数据查询语言)语句主要由于select关键字完成,查询语句是SQL语句中最复杂,功能最丰富的语句。

  ②DML(Data Munipulation Language,数据操作语言)语句,DML语句修改后数据将保持较好的一致性;操作表的语句,如增插insert、更新update、删除delete等;

  ③DDL(Data Definition Language,数据定义语言)语句,操作数据对象的语言,包括创建create、删除drop、修改alter数据库对象。

  ④DCL(Data Control Language,数据控制语言)语句,主要有grant、revoke语句。

  ⑤事务控制语句主要有commit、rollback和savepoint三个关键字完成

注意:

   SQL 对大小写不敏感:SELECT 与 select 是相同的;

  MySQL 的SQL语句以分号 (;) 作为结束标识。

DBA所有的操作必须来自于官方文档

DBA所有的操作必须来自于官方文档

DBA所有的操作必须来自于官方文档

(重要的事情说三遍嘛!!)

一、官方文档的简单介绍:

  1、Tutorial:将MySQL常用的一些操作使用一个场景串联起来

    只是关注里面的灰色部分就可以,按照里面的灰色操作部分顺一遍

  ---详细的跟着官方文档的tutorial模块操作一遍对于初学者还是很有必要的

  2、server Administrator:MySQL管理需要的一些命令、工具、参数等

  3、SQL Syntax

  SQL语法,使用最多,特别是DDL语句一定要使用SQL语法进行参考(增删改查)

  4、Server Option / Variable Reference:MySQL的参数和状态值,使用较多

  5、Functions and Operators

  MySQL常用函数和操作符,使用较多

  6、Views and Stored Programs

  视图、存储过程、函数、触发器、event语法参考

  7、Optimization:优化

  非常值得细致的看一遍,此篇文档不仅仅用来参考,更多的是用来学习优化知识,算是DBA进阶宝典

  8、Partitioning

  如果是要进行表分区,此文档是必须参考的资料,也是唯一参考的资料

  9、Information Schema、Performance Schema

  中级DBA常用的两个参考资料

  10、Spatial Extensions

  地理位置信息(附近的人、附近的餐馆……)

  11、Replication

  MySQL使用复制功能,常用的参考资料

  12、Semisynchronous Replication

  半同步复制,个别场合会用到

二、官方文档使用技巧

  1、{}大括号括起来并且中间有个|管道符的代表 n 选一,必须输入

  2、[]中括号里括起来的表示可有可无

  3、小写字母代表变量,将来可以替换

  4、大写字母代表关键字,必须输入

  5、一般有 sepcification 后缀的表示这是一个规范,后边还会有详细的介绍

  6、 |管道符连接的信息没有用{}大括号括起来代表可以有其中一个也可以同时都有

MySQL数据库常用命令:help contents帮助

1、显示所有数据库

  show databases:列出MySQL数据库管理系统的数据库列表

2、创建数据库

  create database [if not exists] dbName:创建名字为dbName指定的数据库

3、删除数据库

  drop database dbName:删除dbName指定的数据库

4、统计数据库信息

  show table status [{from|in} db_name] [like 'pattern'|where expr] \G:将输出Mysql数据库管理系统的性能及统计信息

示例:

  show table status from RUNOOB;    #显示数据库 RUNOOB 中所有表的信息

  show table status from RUNOOB like 'runoob%';    #表名以runoob开头的表的信息

  show table status from RUNOOB like 'runoob%'\G;    #加上\G,查询结果按列打印

5、使用数据库

  use dbName:切换、使用指定数据库

6、显示表

  show tables:显示指定数据库的所有表

7、显示表结构

  desc tableName:显示表结构describe(desc)

  show columns from tableName:显示数据表的属性,属性类型,主键信息 ,是否为 NULL,默认值等其他信息---类似于desc tableName

8、显示表索引

  show index from 数据表:显示数据表的详细索引信息,包括PRIMARY KEY(主键)

9、创建表

  create table tableName(列声明) :创建一张表

示例:创建 students 表,存放 学号(id)、姓名(name)、性别(sex)、年龄(age)、联系电话(tel)

  create table students ( id int unsigned not null auto_increment primary key, name char(8) not null, sex char(4) not null, age tinyint unsigned not null, tel char(13) null default "-" );

10、显示表内容(数据)

  select * from tableName:显示数据表的具体内容

  select 列名称 from tableName [where 条件]:按条件查询表中的数据

11、修改表中内容(数据)---增、改、删

增:insert

  insert [into] tableName [(列名1, 列名2, 列名3, ...)] values (值1, 值2, 值3, ...) :向表中插入数据

示例:

  insert into classmate values("xiaoming","male",18,"china","tennis");

改:update

  update tableName set 列名称=新值 where 更新条件:更新表中的数据

示例:

  update classmate set address="chongyi" where id=3

删:delete

  delete from tableName where 删除条件:删除表中的数据

批量删:drop、truncate

  drop table tableName:删除表(包括表的结构和全部数据)

  truncate tableName:删除表(删除表里的全部数据,保留表结构)

12、创建后表的修改alter table

添加列

  alter table 表名 add 列名 列数据类型 [after 插入位置];

示例:

  alter table students add address char(60):在表的最后追加列 address

  alter table students add birthday date after age:在age 的列后插入列birthday

修改列

  alter table 表名 change 列名称 列新名称 新数据类型;

示例:

  alter table students change tel telphone char(13) default "-":将表中的tel列改名为telphone

  alter table students change name name char(16) not null:将 name 列的数据类型改为 char(16)

删除列

  alter table 表名 drop 列名称;

示例:

  alter table students drop birthday:删除 birthday 列

重命名表

  alter table 表名 rename 新表名;

示例:

  alter table students rename workmates:重命名 students 表为 workmates

常用SQL_官方文档使用的更多相关文章

  1. 入门常用SQL及官方文档的使用

    SQL语句基础理论 SQL是操作和检索关系型数据库的标准语言,标准SQL语句可用于操作关系型数据库. 5大主要类型: ①DQL(Data Query Language,数据查询语言)语句,主要由于se ...

  2. Hui之Hui.js 官方文档

    基础 // 判断值是否是指定数据类型 var result = hui.isTargetType("百签软件", "string"); //=>true ...

  3. Spark官方文档 - 中文翻译

    Spark官方文档 - 中文翻译 Spark版本:1.6.0 转载请注明出处:http://www.cnblogs.com/BYRans/ 1 概述(Overview) 2 引入Spark(Linki ...

  4. clang format 官方文档自定义参数介绍(中英文)

    官方文档:http://clang.llvm.org/docs/ClangFormatStyleOptions.html 中文 在代码中配置样式 当使用 clang::format::reformat ...

  5. Spring 4 官方文档学习(十二)View技术

    关键词:view technology.template.template engine.markup.内容较多,按需查用即可. 介绍 Thymeleaf Groovy Markup Template ...

  6. Spring 4 官方文档学习(十一)Web MVC 框架之HTTP caching support

    一个良好的HTTP缓存策略可以显著地增进web应用的性能和其客户端的体验.主要使用"Cache-Control" HTTP response header来完成,配合conditi ...

  7. ios学习笔记第四天之官方文档总结

    start developing ios app today. 官方文档的体系结构为: 各层的主要框架图: objectice-c是动态语言 Objective-C 为 ANSI C 添加了下述语法和 ...

  8. OpenGL ES着色器语言之语句和结构体(官方文档第六章)内建变量(官方文档第七、八章)

    OpenGL ES着色器语言之语句和结构体(官方文档第六章) OpenGL ES着色器语言的程序块基本构成如下: 语句和声明 函数定义 选择(if-else) 迭代(for, while, do-wh ...

  9. OpenGL ES着色器语言之操作数(官方文档第五章)

    OpenGL ES着色器语言之操作数(官方文档第五章) 5.1操作数 OpenGL ES着色器语言包含如下操作符. 5.2数组下标 数组元素通过数组下标操作符([ ])进行访问.这是操作数组的唯一操作 ...

随机推荐

  1. Spring+SpringMVC+MyBatis+easyUI整合基础篇(一)项目简介

    很久之前就打算开始写一下自己的技术博客了,实在抽不出时间所以计划一直搁置了,最近项目进度渐渐缓了下来,不那么忙了,也因此开始筹备自己的博客.说到这次博客的主角,也是无心插柳找到的,来源于两年前自己写的 ...

  2. Asp.net MVC4 ExtJS权限管理系统源码 C#开发框架源码

    开发环境:VS2010或以上 数据库:SQL Server 2008 r2 MVC版本:Asp.net mvc 4.0 ExtJs版本:ext-4.2   功能介绍 1.多标签,js动态加载模式,全a ...

  3. Angular控制器

    这里使用的是angular-1.0.1.min.js Angular的前端渲染 <div> <ul> <li ng-repeat="i in [1,2,3]&q ...

  4. Docker私有仓库--自签名方式

    为了能集中管理我们创建好的镜像,方便部署服务,我们会创建私有的Docker仓库.通读了一遍官方文档,Docker为了确保安全使用TLS,需要CA认证,认证时间长的要钱啊,免费过期时间太短,还是用自签名 ...

  5. Python3.5 numpy,scipy,安装

    不是特别难,先保证环境变量正确配置 首先,安装了VS2015; 第二,在Python3.5安装路径中有一个Scripts文件夹,里面有pip.exe或者类似的可执行文件,安装一下: 第三,下载相对应的 ...

  6. php回滚

    $m=D('YourModel');//或者是M();$m2=D('YouModel2');$m->startTrans();//在第一个模型里启用就可以了,或者第二个也行$result=$m- ...

  7. DAX/PowerBI系列 - 参数表(Parameter Table)

    DAX/PowerBI系列 - 参数表(Parameter Table) 难度: ★☆☆☆☆(1星) 适用范围: ★★★★☆(4星) 概况: 这个模式比较简单灵活,而且很实用.所用的DAX语句也比较简 ...

  8. QtQuick 中的 qml 与 Qt 的 C++

    QtQuick 可以使用内置的 JavaScript 引擎加载相应的 JS 代码,使用起来特别方便. 在 Qt 中使用 C++ 开发底层,QtQuick 用来加载.处理图像,然后使用 Qt 提供的接口 ...

  9. 会话控制之session和cookie(20161107)

    注:除了登录页面,每个页面,包括处理页面也要加,为了提高安全性 session尽量不用,因为很占内存 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML ...

  10. Java 字符流操作

    上篇文章Java 字节流操作介绍了java中基本的字节流操作,但是我们常常对于字符操作,如果使用字节流来实现输入输出就显得麻烦,我们可以使用字符流来实现对我们看得见的字符char进行操作,主要内容如下 ...