当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

《数据库系统概念 Database System Concepts》原书教学资源(第七版,PPT课件讲稿,英文版)Chapter 3 Introduction to SQL

资源类别:文库,文档格式:PPTX,文档页数:60,文件大小:1.21MB,团购合买
▪ Overview of The SQL Query Language ▪ SQL Data Definition ▪ Basic Query Structure of SQL Queries ▪ Additional Basic Operations ▪ Set Operations ▪ Null Values ▪ Aggregate Functions ▪ Nested Subqueries ▪ Modification of the Database
点击下载完整版文档(PPTX)

Outline Overview of The SQL Query Language ■SQL Data Definition Basic Query Structure of SQL Queries Additional Basic Operations ■Set Operations ▣Null Values Aggregate Functions ■Nested Subqueries Modification of the Database Database System Concepts-7th Edition 3.2 ©Silberscha乜,Korth and Sudarshan

Database System Concepts - 7 3.2 ©Silberschatz, Korth and Sudarshan th Edition Outline ▪ Overview of The SQL Query Language ▪ SQL Data Definition ▪ Basic Query Structure of SQL Queries ▪ Additional Basic Operations ▪ Set Operations ▪ Null Values ▪ Aggregate Functions ▪ Nested Subqueries ▪ Modification of the Database

History IBM Sequel language developed as part of System R project at the IBM San Jose Research Laboratory Renamed Structured Query Language (SQL) ANSI and ISO standard SQL: ·SQL-86 SQL-89 ·SQL-92 SQL:1999(language name became Y2K compliant!) ·SQL:2003 ■ Commercial systems offer most,if not all,SQL-92 features,plus varying feature sets from later standards and special proprietary features. Not all examples here may work on your particular system. Database System Concepts-7th Edition 3.3 ©Silberscha乜,Korth and Sudarshan

Database System Concepts - 7 3.3 ©Silberschatz, Korth and Sudarshan th Edition History ▪ IBM Sequel language developed as part of System R project at the IBM San Jose Research Laboratory ▪ Renamed Structured Query Language (SQL) ▪ ANSI and ISO standard SQL: • SQL-86 • SQL-89 • SQL-92 • SQL:1999 (language name became Y2K compliant!) • SQL:2003 ▪ Commercial systems offer most, if not all, SQL-92 features, plus varying feature sets from later standards and special proprietary features. • Not all examples here may work on your particular system

SQL Parts DML--provides the ability to query information from the database and to insert tuples into,delete tuples from,and modify tuples in the database. integrity-the DDL includes commands for specifying integrity constraints. View definition --The DDL includes commands for defining views. Transaction control-includes commands for specifying the beginning and ending of transactions. Embedded SQL and dynamic SQL--define how SQL statements can be embedded within general-purpose programming languages. Authorization-includes commands for specifying access rights to relations and views. Database System Concepts-7th Edition 3.4 ©Silberscha乜,Korth and Sudarshan

Database System Concepts - 7 3.4 ©Silberschatz, Korth and Sudarshan th Edition SQL Parts ▪ DML -- provides the ability to query information from the database and to insert tuples into, delete tuples from, and modify tuples in the database. ▪ integrity – the DDL includes commands for specifying integrity constraints. ▪ View definition -- The DDL includes commands for defining views. ▪ Transaction control –includes commands for specifying the beginning and ending of transactions. ▪ Embedded SQL and dynamic SQL -- define how SQL statements can be embedded within general-purpose programming languages. ▪ Authorization – includes commands for specifying access rights to relations and views

Data Definition Language The SQL data-definition language (DDL)allows the specification of information about relations,including: The schema for each relation. The type of values associated with each attribute. The Integrity constraints The set of indices to be maintained for each relation. Security and authorization information for each relation. The physical storage structure of each relation on disk. Database System Concepts-7th Edition 3.5 ©Silberscha乜,Korth and Sudarshan

Database System Concepts - 7 3.5 ©Silberschatz, Korth and Sudarshan th Edition Data Definition Language ▪ The schema for each relation. ▪ The type of values associated with each attribute. ▪ The Integrity constraints ▪ The set of indices to be maintained for each relation. ▪ Security and authorization information for each relation. ▪ The physical storage structure of each relation on disk. The SQL data-definition language (DDL) allows the specification of information about relations, including:

Domain Types in SQL char(n).Fixed length character string,with user-specified length n. varchar(n).Variable length character strings,with user-specified maximum length n. int.Integer (a finite subset of the integers that is machine-dependent). ■ smallint.Small integer (a machine-dependent subset of the integer domain type). numeric(p,d).Fixed point number,with user-specified precision of p digits,with d digits to the right of decimal point.(ex.,numeric(3,1),allows 44.5 to be stores exactly,but not 444.5 or 0.32) real,double precision.Floating point and double-precision floating point numbers,with machine-dependent precision. ■ float(n).Floating point number,with user-specified precision of at least n digits. More are covered in Chapter 4 Database System Concepts-7th Edition 3.6 ©Silberscha乜,Korth and Sudarshan

Database System Concepts - 7 3.6 ©Silberschatz, Korth and Sudarshan th Edition Domain Types in SQL ▪ char(n). Fixed length character string, with user-specified length n. ▪ varchar(n). Variable length character strings, with user-specified maximum length n. ▪ int. Integer (a finite subset of the integers that is machine-dependent). ▪ smallint. Small integer (a machine-dependent subset of the integer domain type). ▪ numeric(p,d). Fixed point number, with user-specified precision of p digits, with d digits to the right of decimal point. (ex., numeric(3,1), allows 44.5 to be stores exactly, but not 444.5 or 0.32) ▪ real, double precision. Floating point and double-precision floating point numbers, with machine-dependent precision. ▪ float(n). Floating point number, with user-specified precision of at least n digits. ▪ More are covered in Chapter 4

Create Table Construct An SQL relation is defined using the create table command: create table r (A1 D1:A2 D2:...An Dn (integrity-constraint ) (integrity-constraint)) ris the name of the relation each A,is an attribute name in the schema of relation r D;is the data type of values in the domain of attribute A; Example: create table instructor( D char(5), name varchar(20), dept_name varchar(20), salary numeric(8,2)) Database System Concepts-7th Edition 3.7 @Silberschatz,Korth and Sudarshan

Database System Concepts - 7 3.7 ©Silberschatz, Korth and Sudarshan th Edition Create Table Construct ▪ An SQL relation is defined using the create table command: create table r (A1 D1 , A2 D2 , ..., An Dn , (integrity-constraint1 ), ..., (integrity-constraintk )) • r is the name of the relation • each Ai is an attribute name in the schema of relation r • Di is the data type of values in the domain of attribute Ai ▪ Example: create table instructor ( ID char(5), name varchar(20), dept_name varchar(20), salary numeric(8,2))

Integrity Constraints in Create Table Types of integrity constraints 。primary key(A,,An) foreign key (Am,...An)references r 。not null ■ SQL prevents any update to the database that violates an integrity constraint. ■ Example: create table instructor( ID char(5), name varchar(20)not null, dept name varchar(20), salary numeric(8,2), primary key(ID), foreign key(dept_name)references department), Database System Concepts-7th Edition 3.8 ©Silberscha乜,Korth and Sudarshan

Database System Concepts - 7 3.8 ©Silberschatz, Korth and Sudarshan th Edition Integrity Constraints in Create Table ▪ Types of integrity constraints • primary key (A1 , ..., An ) • foreign key (Am, ..., An ) references r • not null ▪ SQL prevents any update to the database that violates an integrity constraint. ▪ Example: create table instructor ( ID char(5), name varchar(20) not null, dept_name varchar(20), salary numeric(8,2), primary key (ID), foreign key (dept_name) references department);

And a Few More Relation Definitions create table student( ID varchar(5), name varchar(20)not null, dept name varchar(20). tot cred numeric(3,0), primary key (ID), foreign key(dept name)references department): create table takes( ID varchar(5). course id varchar(8), sec_id varchar(8), semester varchar(6), year numeric(4,0), grade varchar(2), primary key (ID,course_id,sec_id,semester,year), foreign key(ID)references student, foreign key(course id,sec id,semester,year)references section); Database System Concepts-7th Edition 3.9 @Silberschatz,Korth and Sudarshan

Database System Concepts - 7 3.9 ©Silberschatz, Korth and Sudarshan th Edition And a Few More Relation Definitions ▪ create table student ( ID varchar(5), name varchar(20) not null, dept_name varchar(20), tot_cred numeric(3,0), primary key (ID), foreign key (dept_name) references department); ▪ create table takes ( ID varchar(5), course_id varchar(8), sec_id varchar(8), semester varchar(6), year numeric(4,0), grade varchar(2), primary key (ID, course_id, sec_id, semester, year) , foreign key (ID) references student, foreign key (course_id, sec_id, semester, year) references section);

And more still create table course course id varchar(8), title varchar(50), dept name varchar(20). credits numeric(2,0). primary key (course_id), foreign key(dept_name)references department); Database System Concepts-7th Edition 3.10 @Silberschatz,Korth and Sudarshan

Database System Concepts - 7 3.10 ©Silberschatz, Korth and Sudarshan th Edition And more still ▪ create table course ( course_id varchar(8), title varchar(50), dept_name varchar(20), credits numeric(2,0), primary key (course_id), foreign key (dept_name) references department);

Updates to tables ■ Insert insert into instructor values ('10211','Smith','Biology,66000); ■Delete Remove all tuples from the student relation delete from student Drop Table ·drop table r ■Alter ·alter table radd A D where A is the name of the attribute to be added to relation r and D is the domain of A. All exiting tuples in the relation are assigned null as the value for the new attribute. ·alter table r drop A where A is the name of an attribute of relation r Dropping of attributes not supported by many databases. Database System Concepts-7th Edition 3.11 ©Silberscha乜,Korth and Sudarshan

Database System Concepts - 7 3.11 ©Silberschatz, Korth and Sudarshan th Edition Updates to tables ▪ Insert • insert into instructor values ('10211', 'Smith', 'Biology', 66000); ▪ Delete • Remove all tuples from the student relation ▪ delete from student ▪ Drop Table • drop table r ▪ Alter • alter table r add A D ▪ where A is the name of the attribute to be added to relation r and D is the domain of A. ▪ All exiting tuples in the relation are assigned null as the value for the new attribute. • alter table r drop A ▪ where A is the name of an attribute of relation r ▪ Dropping of attributes not supported by many databases

点击下载完整版文档(PPTX)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共60页,可试读20页,点击继续阅读 ↓↓
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有