2.2-SQL
大家好,我是阿勇。感谢大家阅读这篇文章,并且希望大家能将《阿勇java建站教程》全部看完!
在上一节中我向大家介绍了数据库,本节内容说的是和数据库息息相关的一门语言,就是SQL。
SQL语言是结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
上文中我说过:数据库也是一种软件。那么这种软件和我们日常接触到的软件有什么不同呢?SQL又是干什么用的呢?数据库会对外提供一个管理工具,有的时候非常简单,就是一个控制台,有时为了方便操作也会提供功能丰富的桌面应用程序。如下图便是MySQL Query Tool:MySQL数据库查询工具
数据库是对数据保存、管理的软件,SQL就是用来干这些事的。SQL的功能很强大,可以管理数据库,操作数据库,优化数据库等等,在不同的数据库软件中SQL的版本和语法也存在着一定的差异。本节内容介绍的主要是针对软件开发过程中运用到的SQL语言。
在数据库中,数据保存在具体的表中,表保存在某个库中,具体的关系如下图:
|-1表
|-a库+-2表
| |-3表
|
| |-4表
数据库+-b库+-5表
| |-6表
|
|-c库...
|
.
.
.
每张表的结构是如下图举例:
每张表有不同的字段,每个字段规定好数据类型,表中包含主外键等信息。
接下来介绍一些常用sql语句,及软件开发中的业务逻辑:
1、创建数据库CREATE DATABASE database-name
2、删除数据库
drop database dbname
3、创建新表
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
4、删除新表
drop table tabname
5、增加一个列
Alter table tabname add column col type
注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。
6、添加主键: Alter table tabname add primary key(col)
说明:删除主键: Alter table tabname drop primary key(col)
7、创建索引:create [unique] index idxname on tabname(col….)
删除索引:drop index idxname
注:索引是不可更改的,想更改必须删除重新建。
8、创建视图:create view viewname as select statement
删除视图:drop view viewname
9、*说明:数据库的设计一般比代码编写要早,如上8种sql语句实际开发中也较少使用,不过有一种情况就是所开发的软件包括了建库建表,对表结构进行修改的功能,这样的软件多针对不同的数据库开发,如opencms。
10、几个简单的基本的sql语句
选择:select * from table1 where 条件(如:field1=100)
*说明:查询语句就是从数据库表中查询符合条件的记录,使用频率最高,另外,软件的用户登录功能就是在这基础之上实现的,思路是: 用户注册了之后,在数据库表中会保存该用户的登录信息(帐号、密码),通过登录时用户输入的登录信息在数据库中查询是否有满足该登录信息的记录,有则运行用户登录,无则拒绝登录。
插入:insert into table1(field1,field2) values(value1,value2)
*说明:软件保存信息到数据库中,如用户注册、发布评论、发布文章等。
删除:delete from table1 where 条件
*说明:从数据库中删除符合条件的记录,实际开发中为了保存用户的历史数据,会有意的添加“虚删除”功能,这就用到了更新语句。
更新:update table1 set field1=value1 where 条件
*说明:软件更新数据库中的数据如:更新用户资料、更新题库、更新部门信息等等。“虚删除”的思路:在表结构中添加一个删除标识比如该字段的值为100时则说明该记录未被删除,值为300时则表示该记录被删除,查询时应注意这样的附加条件。
11、在业务逻辑中,经常会使用到各种各样的查询sql,也正是因此,sql提供了强大的内置函数供查询使用,如下列举了一些经常使用的查询方式:
查找:select * from table1 where field1 like ’%value1%’
*说明:like的语法很精妙,查资料!
排序:select * from table1 order by field1,field2 [desc]
总数:select count as totalcount from table1
求和:select sum(field1) as sumvalue from table1
平均:select avg(field1) as avgvalue from table1
最大:select max(field1) as maxvalue from table1
最小:select min(field1) as minvalue from table1
除此之外,查询还有多表查询,子查询,联合查询等不同的形式,在此希望读者做个有心人,多多自学。
数据库像编程语言一样是基本功,在公司的招聘启示中同样对数据库技能有所要求,希望读者对数据库使用引起足够重视,下节我将会告诉你一些数据库的“特殊”用处。
本文原创写的不好的地方欢迎大家与我一起交流(微信号:zhyy22145),转载请注明出处!-《阿勇java建站教程》2.2-T-SQL
《阿勇java建站教程》统一交流团
相关推荐
[计算机网络实验与学习指导——基于Cisco Packet Tracer模拟器(第2版)][叶阿勇 等]的配套实验pka
史上最牛文本编辑器。请大家免费使用。如有不妥之处请谅解。
计算机网络实验与学习指导-基于Cisco Packet Tracert模拟器-程序源代码pka文件,为叶阿勇等主编《计算机网络实验与学习指导》的实验内容,基于Cisco Packet Tracert6.0.1完成,经过测试过的。希望对学习思科网络的...
版权信息:此软件由 阿勇(fxy_2002@163.com) 开发,请保留此信息!! '* 免费软件,欢迎使用!请勿用于直接出售或其它商业用途。 '* '* 作者主页:pc-soft.cn e-mail:fxy_2002@163.com '* '* 程序功能:将 GB、...
豆葵 GB/BIG5/UTF-8 文件编码批量转换工具 是一款单一文件与批量转换编码工具将 GB、BIG5、UTF-8 文件相互转换,方便的批量处理能力,主要用于网站文件编码方式的整体转换上。 豆葵 www.doukui.cn 是立足垂直搜索...
通过不同的参数,如`-t`持续ping,`-a`将IP解析为主机名,`-n`指定发送数据包的数量,`-l`定义数据包的大小,以及`-w`设定超时时间等,可以实现多种功能。例如,`ping -t www.zju.edu.cn`将持续ping指定的网址,直至...
计算机网络实验与学习指导书叶阿勇-基于Packet Tracer6.0版本计算机网络实验与学习指导书叶阿勇-基于Packet Tracer6.0版本
'* 版权信息:此软件由 阿勇(fxy_2002@163.com) 开发,请保留此信息!! '* 免费软件,欢迎使用!请勿用于直接出售或其它商业用途。 '* '* 作者主页:pc-soft.cn e-mail:fxy_2002@163.com '* '* 程序功能:将 GB...
### 网络实验报告指导相关知识点解析 #### 双绞线基础知识 - **定义**:双绞线是一种常见的有线传输介质,广泛应用于局域网(LANs)和其他通信系统中,它由一对或多对相互绝缘的铜线组成,这些铜线成螺旋状缠绕在...
EA名称:pirate-EA02.04.1 适用于早盘剥头皮EA EA用法: 1:可自定义早盘交易得起始时间和接受时间 2:可采用固定手数,也可以采用动态手数 3:对点差要求有限制,越低越好 EA加载周期:30分钟 ...
计算机网络实验完整的指导书,以及完全写好的实验报告。报告中有实验过程的数据截图,抓包的数据截图等等
本文将通过分析阿勇的自荐信,来深入探讨如何撰写一份能够吸引雇主的自荐信。 首先,阿勇通过自荐信向潜在雇主传达了他扎实的计算机科学背景。他的自我介绍从教育背景开始,说明自己即将毕业于广东大学的计算机科学...
- [v0.2全新功能] 可以把设定介面语言改为台语(汉字)或 Tâi-gí (Pe̍h-ōe-jī)- 在「萌典」查询《教育部台湾闽南语常用词辞典》的释义- 在「爱台语」看看网民如何把华语词翻译成正港台语- 用「找台语」一次搜寻...
计算机网络学习与指导实验-基于 Cisco Packet Tracer 本资源摘要信息将对计算机网络学习与指导实验-基于 Cisco Packet Tracer 进行详细的知识点总结。 实验 2-1 PPP 与 PPPoE 学习实验配置 在这个实验中,我们...
这些更新信息包括文档同步更新到了Swift 4.2的时间点(2018年07月18日),以及一些与维护网站相关的个人或团队的感谢(例如@唯有学习、十步奶一人、阿勇等)。 在知识内容的介绍上,文件提供了Swift编程语言的基础...
计算机网络
'* 版权信息:此软件由 阿勇(fxy_2002@163.com) 开发,请保留此信息!! '* 免费软件,欢迎使用!请勿用于直接出售或其它商业用途。 '* '* 作者主页:pc-soft.cn e-mail:fxy_2002@163.com '* '* 程序功能:将 GB...
根据给定的文件信息,我们可以总结出一系列与华为认证数据通信专业(Huawei Certified Datacom Professional,简称HCDP)构建运营商路由网络(Building Carrier Routing Network,简称BCRN)相关的IT知识点,具体...
在信息化时代,计算机网络已成为现代社会不可或缺的组成部分,其重要性随着数字经济的发展日益凸显。为了深入理解计算机网络的运作机制,掌握网络设备的配置与使用,计算机网络实训成为一门重要的实践课程。...
阿勇的父母都是老师,父母的言传身教,让他自小就养成了良好的学习习惯,学习起来格外卖力;乐乐格外宠爱自己选择的这个专业,除了课堂认真学习外,他还在课后乐观地阅读与专业相关的书籍,了解本专业最前端的信息。...