结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式。
所以具有完全不同底层结构的不同数据库系统,可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。
用途:更新表中原有数据
单独使用,使用where匹配字段
set后面,更新字段值,既可以一次一项,也可以一次多项
例:
“Person”表中的原始数据:
LastName FirstName Address City
Nilsen Fred Kirkegt 56 Stavanger
Rasmussen Storgt 67
运行下面的SQL将Person表中LastName字段为”Rasmussen”的FirstName更新为”Nina”:
UPDATE Person SET FirstName = 'Nina' WHERE LastName = 'Rasmussen'。
SQL是StructuredQuevyLanguage(结构化查询语言)的缩写。SQL是专为数据库而建立的 *** 作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库 *** 作的基础,并且现在几乎所有的数据库均支持SQL。
##1二、SQL数据库数据体系结构
SQL数据库的数据体系结构基本上是三级结构,但使用术语与传统关系模型术语不同。在SQL中,关系模式(模式)称为“基本表”(basetable);存储模式(内模式)称为“存储文件”(storedfile);子模式(外模式)称为“视图”(view);元组称为“行”(row);属性称为“列”(column)。名称对称如^00100009a^:
##1三、SQL语言的组成
在正式学习SQL语言之前,首先让我们对SQL语言有一个基本认识,介绍一下SQL语言的组成:
1一个SQL数据库是表(Table)的集合,它由一个或多个SQL模式定义。
2一个SQL表由行集构成,一行是列的序列(集合),每列与行对应一个数据项。
3一个表或者是一个基本表或者是一个视图。基本表是实际存储在数据库的表,而视图是由若干基本表或其他视图构成的表的定义。
4一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。每个存储文件与外部存储上一个物理文件对应。
5用户可以用SQL语句对视图和基本表进行查询等 *** 作。在用户角度来看,视图和基本表是一样的,没有区别,都是关系(表格)。
6SQL用户可以是应用程序,也可以是终端用户。SQL语句可嵌入在宿主语言的程序中使用,宿主语言有FORTRAN,COBOL,PASCAL,PL/I,C和Ada语言等。SQL用户也能作为独立的用户接口,供交互环境下的终端用户使用。
##1四、对数据库进行 *** 作
SQL包括了所有对数据库的 *** 作,主要是由4个部分组成:
1数据定义:这一部分又称为“SQLDDL”,定义数据库的逻辑结构,包括定义数据库、基本表、视图和索引4部分。
2数据 *** 纵:这一部分又称为“SQLDML”,其中包括数据查询和数据更新两大类 *** 作,其中数据更新又包括插入、删除和更新三种 *** 作。
3数据控制:对用户访问数据的控制有基本表和视图的授权、完整性规则的描述,事务控制语句等。
4嵌入式SQL语言的使用规定:规定SQL语句在宿主语言的程序中使用的规则。
下面我们将分别介绍:
##2(一)数据定义
SQL数据定义功能包括定义数据库、基本表、索引和视图。
首先,让我们了解一下SQL所提供的基本数据类型:(如^00100009b^)
1数据库的建立与删除
(1)建立数据库:数据库是一个包括了多个基本表的数据集,其语句格式为:
CREATEDATABASE
其中,
例:要建立项目管理数据库(xmmanage),其语句应为:
CREATEDATABASExmmanage
(2)数据库的删除:将数据库及其全部内容从系统中删除。
其语句格式为:DROPDATABASE
例:删除项目管理数据库(xmmanage),其语句应为:
DROPDATABASExmmanage
2基本表的定义及变更
本身独立存在的表称为基本表,在SQL语言中一个关系唯一对应一个基本表。基本表的定义指建立基本关系模式,而变更则是指对数据库中已存在的基本表进行删除与修改。
第一题:分建立表,插入数据
---建表语句school_student
CREATE TABLE [dbo][school_student](
[系名] varchar(20) NULL,
[班级] varchar(20) NULL,
[学号] varchar(9) NULL,
[姓名] varchar(20) NULL,
[年龄] numeric(3,0) NULL,
) ON [PRIMARY]
---建表语句school_class
CREATE TABLE [dbo][school_class](
[dpt_name] varchar(20) NULL,
[class_name] varchar(20) NULL,
[course_name] varchar(80) NULL,
[mean] numeric(8,6) NULL,
[max] numeric(2,0) NULL,
[min] numeric(2,0) NULL,
) ON [PRIMARY]
---建表数据语句school_student
INSERT INTO school_student(系名,班级,学号,姓名,年龄)
VALUES('计算机系','计算机3001','303100104','王涛',28);
INSERT INTO school_student(系名,班级,学号,姓名,年龄)
VALUES('计算机系','计算机3011','303101101','王悦',27);
INSERT INTO school_student(系名,班级,学号,姓名,年龄)
VALUES('计算机系','信息3032','303303203','王勇',26);
INSERT INTO school_student(系名,班级,学号,姓名,年龄)
VALUES('计算机系','信息3032','303303204','王荣华',26);
INSERT INTO school_student(系名,班级,学号,姓名,年龄)
VALUES('计算机系','信息3032','303303205','王曙',26);
---建表数据语句school_class
INSERT INTO school_class(dpt_name,class_name,course_name,mean,max,min)
VALUES('计算机系','计算机3001','c语言',73555555,93,45);
INSERT INTO school_class(dpt_name,class_name,course_name,mean,max,min)
VALUES('计算机系','计算机3001','Java程序设计',75818181,90,64);
INSERT INTO school_class(dpt_name,class_name,course_name,mean,max,min)
VALUES('计算机系','计算机3001','SQL Server2000',72833333,88,54);
INSERT INTO school_class(dpt_name,class_name,course_name,mean,max,min)
VALUES('计算机系','计算机3001','Visual Basic程序设计',72444444,90,56);
第二题:
a:语句
SELECT FROM school_class A LEFT join school_student B ON B系名=Adpt_name WHERE Aclass_name=B班级
b:语句
SELECT FROM school_student A LEFT join school_class B ON A系名=Bdpt_name AND Bclass_name=A班级
后面的,由于所给素材不够;不方便写。
以上就是关于sql是什么意思全部的内容,包括:sql是什么意思、SQL的简单介绍(基本的sql语句)、帮忙做题目:在Student_sys数据库中,按下列要求编写数据 *** 纵SQL语句等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)