前言
结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。
SQL语言1974年由Boyce和Chamberlin提出,并首先在IBM公司研制的关系数据库系统SystemR上实现。由于它具有功能丰富、使用方便灵活、语言简洁易学等突出的优点,深受计算机工业界和计算机用户的欢迎。1980年10月,经美国国家标准局(ANSI)的数据库委员会X3H2批准,将SQL作为关系数据库语言的美国标准,同年公布了标准SQL,此后不久,国际标准化组织(ISO)也作出了同样的决定。
SQL从功能上可以分为3部分:数据定义、数据操纵和数据控制。
SQL的核心部分相当于关系代数,但又具有关系代数所没有的许多特点,如聚集、数据库更新等。它是一个综合的、通用的、功能极强的关系数据库语言。其特点是:
1、数据描述、操纵、控制等功能一体化。
2、两种使用方式,统一的语法结构。SQL有两种使用方式。一是联机交互使用,这种方式下的SQL实际上是作为自含型语言使用的。另一种方式是嵌入到某种高级程序设计语言(如C语言等)中去使用。前一种方式适合于非计算机专业人员使用,后一种方式适合于专业计算机人员使用。尽管使用方式不向,但所用语言的语法结构基本上是一致的。
3、高度非过程化。SQL是一种第四代语言(4GL),用户只需要提出“干什么”,无须具体指明“怎么干”,像存取路径选择和具体处理操作等均由系统自动完成。
4、语言简洁,易学易用。尽管SQL的功能很强,但语言十分简洁,核心功能只用了9个动词。SQL的语法接近英语口语,所以,用户很容易学习和使用。
一、实验要求
二、作业1解答
1.ER图
2.关系模型:
商品关系模式(商品编号,商品名,规格,单价)
商店关系模式(商店号,商店名,地址)
供应商关系模式(供应商号,供应商名,地址)
三、作业2解答
1. 建表并插入数据
2. 使用查询语句查询相关信息
查询计算机系男生的信息:
select * from LYL_116_student where Department='计算机'
查询鹿晗的年龄
代码语言:javascript复制select datediff(yy,Birthday,getdate()) 年龄
from LYL_116_student where Name= '鹿晗'
查询姓名第二个字为“丽”的同学的信息
代码语言:javascript复制select * from LYL_116_student where Name like '_丽%'
这里需要用到 like 占位符 '_',还有任意符号 '%'
按照性别列出男生和女生的人数
代码语言:javascript复制select Sex, count(*) from LYL_116_student group by Sex
这里就直接用 group by 子句将Sex分组查询,然后用 count(*) 计数即可算出男女各有多少人
四、好用的SQL语句学习网站
它里面基本包括了SQL基础教程和高级教程,还有SQL Server一些常用的自带函数。很适合初学者去学习如何去写SQL语句
SQL FOREIGN KEY 约束
添加描述
https://www.w3school.com.cn/sql/sql_foreignkey.asp
我正在参与2023腾讯技术创作特训营第三期有奖征文,组队打卡瓜分大奖!