原标题:《MySQL数据库》SQL简介、语法格式

一、SQL的简介

结构化查询语言(Structured Query Language),简称SQL。它是专门用来访问数据库的标准编程语言。它可以用于存储数据,查询数据,更新数据以及管理关系型数据库等操作。同时,数据库脚本文件的扩展名也是sql。

SQL是高级的非过程化编程语言,允许用户在高层数据结构上工作。同时,SQL语句可以嵌套,因此拥有极大的灵活性和强大的功能。但是,数据库厂商都对SQL标准语言做了某些改编和扩充,因此,不同的数据库的SQL语言,用法、格式等不完全一致。

SQL语言可以分成五个部分,分别为DDL,DML,TCL,DCL,DQL。

1、数据定义语言(Data Definition Language ),简称DDL。

用于建立,删除,修改数据库对象的语言。包含如下关键字

create:用于创建表或者其他对象的结构

drop:用于删除表或者其他对象的结构

alter:用于修改表或者其他对象的结构

truncate:用于清空表数据,保留表结构

2、数据操纵语言(Data Manipulation Language),简称DML。

用于改变数据表的数据。通常与事务控制语言一起使用,要经过事务控制语言的提交操作,才会真正的将数据持久到数据库中。包含如下关键字:

insert:将数据插入到数据表中。

update:更新数据表中已存在的数据。

delete:删除数据表中的数据。

3、数据查询语言(Data Query Language),简称DQL。

用于查询数据表中的数据。或者用于科学计算。关键字如下:

select:选择要显示的数据。

4、事务控制语言(Transaction Control Language),简称TCL。

用于保证数据的完整性和一致性。只有数据表正在进行DML操作时,才会涉及到事务。关键字如下:

commit:提交,确任。将已经进行的DML操作的数据持久化。

rollback:回滚,回退。用于取消已经进行的DML操作。

savepoint:保存点。可以将当前的DML操作回退到指定的保存点,便于取消部分改变。

5、数据控制语言(Data Control Language),简称DCL。

用于执行关于权限的授予和撤销操作。关键字如下:

grant:授权。用于给用户或者角色授予权限.

revoke:撤销。用于回收用户或者角色的权限。

create user:创建用户。

drop user :删除用户。

二、MySql的常用SQL语法

市场上流通的数据库虽然都遵守了SQL语言的标准规范,但是用法也不完全相同。下面我将MySQL数据库的各个部分的使用语法整理一下,方便大家记忆。PS:下面会用到"[]"中括号,表示可选。

1、关于数据库的创建,删除等操作语法

在实际开发中,任何一个项目的数据存储与管理都对应一个数据库(数据存储空间),避免与其他项目的数据混在同一个数据库中,因此,会涉及到数据库的创建等操作。

(1)创建数据库:create database [if not exists] dbName [default character set utf8] [collate utf8_general_ci | utf8_general_cs];

>解析> 此语句指定数据库的字符集为utf8。utf8_general_ci表示字母大小写不敏感;utf8_general_cs表示大小写敏感

(2)查看数据库:show databases;

(3)选择数据库:use dbName;

(4)删除数据库:drop database dbName;

(5)查看数据库字符集:show variables like "%character%";

(6)修改数据库字符集:alter database dbName character set cName;

(7)修改命令提示符界面显示字符集(当前窗口有效):set name cName;

2、DDL语言的操作语法

(1)创建表结构:

create table tName (colName1 type1,...,colNameN typeN) [engine=innodb][default character set cName][collate utf8_general_ci]

(2)显示表结构:desc tName 或者 show columns from tName;

(3)添加表字段:alter table tName add colName Type;

(4)删除表字段:alter table tName drop colName;

(5)修改表字段类型/表字段名称

alter table tName modify colName newType;

alter table tName change colName newColName newType;

(6)修改表名:alter table oldName rename newName;

(7)清空表数据,保留表结构:truncate table tName;

(8)删除表结构:drop table tName;

(9)复制表结构:create table newName like oldName;

3、DML语言的操作语法

(1)插入数据到表中:

方法1: insert into tName (colName1,....,colNameN)values (value1,.....,valueN);

方法2: insert into tName values ( value1,.....,valueN); /*按照建表字段顺序赋值*/

(2)修改表中数据:

update tName set colName1=value1,.....colNameN=valueN [ where 条件 ];

(3)删除表中数据:delete from tName [ where 条件 ];

4、DQL语言的操作语法

select colName1,......,colNameN from tName [where 子句] [ group by 子句] [ having 子句] [order by子句]

select有选择的意思,即选择哪些字段进行查询,显示。返回搜狐,查看更多

责任编辑:

MySQL中删除数据库的基本语法格式为_《MySQL数据库》SQL简介、语法格式相关推荐

  1. mysql alert on delete cascade_如何在mysql中删除级联使用?(How do I use on delete cascade in mysql?)...

    如何在mysql中删除级联使用?(How do I use on delete cascade in mysql?) 我有一个组件数据库. 每个组件都是特定的类型. 这意味着组件和类型之间存在多对一的 ...

  2. MySQL 中删除的数据都去哪儿了?

    不知道大家有没有想过下面这件事? 我们平时调用 DELETE 在 MySQL 中删除的数据都去哪儿了? 这还用问吗?当然是被删除了啊 那么这里又有个新的问题了,如果在 InnoDB 下,多事务并发的情 ...

  3. Mysql中删除语句delete、truncate、drop的区别

    Mysql中删除语句delete.truncate.drop的区别 1.DROP: 用法: DROP TABLE 表名 DDL语句,删除数据和表结构,释放空间资源.注意:操作不放到rollback s ...

  4. 在MySQL中删除重复的行

    本文翻译自:Remove duplicate rows in MySQL I have a table with the following fields: 我有一个包含以下字段的表: id (Uni ...

  5. MySQL中删除主键

    在MySQL中删除主键需要两步.  1.如果有auto_increment,先删除之:  2.删除主键约束 primary key. 例如:  1)假设我们有个表products.里面的pid为主键, ...

  6. 在MySQL中当有多个索引时 你知道MySQL是如何选择索引的吗 ???

    在码农的世界里,优美的应用体验,来源于程序员对细节的处理以及自我要求的境界,年轻人也是忙忙碌碌的码农中一员,每天.每周,都会留下一些脚印,就是这些创作的内容,有一种执着,就是不知为什么,如果你迷茫,不 ...

  7. 爬虫图片mysql_爬取微博图片数据存到Mysql中遇到的各种坑\爬取微博图片\Mysql存储图片\微博爬虫...

    本人长期出售超大量微博数据.旅游网站评论数据,并提供各种指定数据爬取服务,Message to YuboonaZhang@Yahoo.com.同时欢迎加入社交媒体数据交流群:99918768 前言 由 ...

  8. mysql存储爬虫图片_爬取微博图片数据存到Mysql中遇到的各种坑\爬取微博图片\Mysql存储图片\微博爬虫...

    本人长期出售超大量微博数据.旅游网站评论数据,并提供各种指定数据爬取服务,Message to YuboonaZhang@Yahoo.com.同时欢迎加入社交媒体数据交流群:99918768 前言 由 ...

  9. Mysql中求两个时间差的小时数以及mysql中substring_index 用法

    Mysql中求两个时间差的小时数以及mysql中substring_index 用法 1.mysql中求两个时间的差,返回小时数:可以使用mysql的hour() 函数,具体如下: SQL code ...

  10. python缩进格式作用_缩进(Python很将就格式)

    空白在Python中是重要的.事实上行首的空白是重要的.它称为缩进.在逻辑行首的空白(空格和制表符)用来决定逻辑行的缩进层次,从而用来决定语句的分组. 这意味着同一层次的语句必须有相同的缩进.每一组这 ...

最新文章

  1. 计算机网络——知识结构体系
  2. 用T-SQL得到数据库的可视化结构
  3. centos安装与配置dhcp服务
  4. kibana操作elasticsearch:match匹配查询(and关系)
  5. android viewpager 滑动方法,Android中Viewpager禁止滑动的实现
  6. python获取字典的值_python取出字典中的所有值的两种方法
  7. 背景纹理素材|为前景元素添加焦点
  8. 游戏日志分析2:全方位数据采集
  9. 音乐播放器 EasyMusic (一)
  10. C# 视频播放控件 wmp、vlc、aplayer
  11. JS屏蔽360浏览器代码
  12. Leetcode 199
  13. springboot整合dubbo注解方式(三)
  14. 【优化求解】基于matlab改进的遗传算法求解带约束的优化问题【含Matlab源码 1773期】
  15. ASP.NET读取自定义的config文件
  16. 无监督学习K-means文本聚类实践
  17. 线性调频信号(LFM)时域与频域分析
  18. 网络游戏外挂编写基础一
  19. 用Python写一个任务管理器进行工作协调
  20. 各平台免费翻译API

热门文章

  1. actor 模型原理 (二)
  2. [附源码]Java计算机毕业设计SSM工作计划统计分析系统
  3. echarts动态渲染柱状图背景颜色以及顶部数值
  4. Win10 1709 无法访问局域网共享问题及解决
  5. html——表单元素及个人简历实现
  6. 程序员最喜欢的4个编辑器!码农出品,必属精品!
  7. 疫情防控之防疫消杀管理系统
  8. 公司常用协同管理软件介绍
  9. jsp 登陆成功后,显示登录的用户名
  10. 当我们在聊「开源大数据调度系统Taier」的数据开发功能时,到底在讨论什么?