Sistemas de Informação I ODBMS SQL... SQL3. José Correia Mário Santos

Size: px
Start display at page:

Download "Sistemas de Informação I ODBMS SQL... SQL3. José Correia (jcorreia@ispgaya.pt) Mário Santos (msantos@ispgaya.pt)"

Transcription

1 Sistemas de Informação I ODBMS SQL... SQL3 José Correia Mário Santos

2 SQL Structured Query Language O SQL foi introduzido em 1976 como LMD para o System/R da IBM. Em 1979 a Oracle Corporation introduziu no mercado a primeira implementação comercial do SQL. Normas ANSI (American National Standards Institute) e ISO (International Organization for Standardization): SQL-86, SQL-89, SQL-92 (SQL2), SQL3 É o standard de facto para linguagem sobre Bases de Dados Relacional. Características do SQL: Linguagem não procedimental - é especificado o que (what) se pretende fazer e não como (how) deve ser feito. - Permite optimizações Processa conjuntos de registos em vez de processar um a um. Linguagem única para definição, acesso e manipulação de dados. Linguagem comum a vários SGBD s. Linguagem para todas as classes de utilizadores - níveis de complexidade e capacidade crescente SQL3 2

3 Partes em que se divide o SQL Data Definition Language (DDL) Possui comandos para definir, apagar e modificar esquemas de relações, criar índices, criar ADTs, criar módulos, funções e procedimentos Interactive Data Manipulation Language (DML) Inclui uma linguagem de interrogação, baseada na Álgebra Relacional e no Cálculo Relacional de tuplos, e comandos para inserir, apagar e modificar tuplos na Base de Dados DML embebida Pode ser usada em linguagens de programação: PL/I, COBOL, PASCAL, FORTRAN e C Definição de vistas A DDL inclui comandos para definir vistas Segurança A DDL inclui comandos para especificar acessos a relações, vistas, ADTs, módulos Integridade A DDL inclui comandos para especificar restrições de integridade que os dados da BD devem satisfazer Controlo de transacções Inclui comandos para especificar o início e fim de transacções SQL3 3

4 Tipos de Dados Básicos Números Inteiros INTEGER (ou INT), SMALLTINT, NUMERIC, DECIMAL, REAL, DOUBLE PRECISION, FLOAT Cadeias Caracteres CHARACTER(n), CHARACTER VARYING(n), NATIONAL CHARACTER Bits BIT(n), BIT VARYING(n) Datas e tempo DATE, TIME, TIMESTAMP, TIME WITH TIMEZONE Intervalos YEAR, MONTH, YEAR TO MONTH DAY, TIME, DAY TO HOUR Valores nulos SQL3 4

5 SQL3 SQL3 intended to be a major enhancement of the second generation SQL standard, commonly called SQL-92 because of the year it was published. SQL3 has been characterized as object-oriented SQL and is the foundation for several object-relational database management systems (including Oracle s ORACLE8, Informix Universal Server, IBM s DB2 Universal Database) SQL3 is much more than merely SQL-92 plus object technology. It involves additional features that fall into SQL s relational heritage, as well as a total restructuring of the standards documents themselves with an eye towards more effective standards progression in the future. The features of SQL3 can be crudely partitioned into its relational features and its object-oriented features. SQL3 5

6 I. Relational Features The features here are not strictly limited to the relational model, but are also unrelated to object orientation. This category of features it s more appropriately categorized as features that relate to SQL s traditional role and data model These features are often divided into about five groups: new data types (LOB, BOOLEAN, ARRAY, ROW) new predicates (SIMILAR, DISTINCT) enhanced semantics (Update Views, Recursive Query, Locators, SAVEPOINTS) additional security (Role) active database (Trigger) SQL3 6

7 New Data Types: LOB SQL3 has four new data types The first of these types is the LARGE OBJECT, or LOB, type. This type has two variants: CHARACTER LARGE OBJECT (CLOB) and BINARY LARGE OBJECT (BLOB). CLOBs behave a lot like character strings, but have restrictions that disallow their use in PRIMARY KEYs or UNIQUE predicates, in FOREIGN KEYs, and in comparisons other than purely equality or inequality tests. BLOBs have similar restrictions (LOBs cannot be used in GROUP BY or ORDER BY clauses, either) Applications would typically not transfer entire LOB values to and from the database (after initial storage, that is), but would manipulate LOB values through a special client-side type called a LOB locator. In SQL3, a locator is a unique binary value that acts as a sort of surrogate for a value held within the database. SQL3 7

8 New Data Types: BOOLEAN Another new data type is the BOOLEAN type, which allows SQL to directly record truth values true, false, and unknown. Complex combinations of predicates can also be expressed in ways that are somewhat more user-friendly than the usual sort of restructuring might make them: WHERE COL1 > COL2 AND COL3 = COL4 OR UNIQUE(COL6) IS NOT FALSE SQL3 8

9 New Data Types: ARRAY SQL3 also has two new composite types: ARRAY and ROW. The ARRAY type allows one to store collections of values directly in a column of a database table. For example: WEEKDAYS VARCHAR(10) ARRAY[7] would allow one to store the names of all seven weekdays directly in a single row in the database. Does this mean that SQL3 allows databases that do not satisfy first normal form? Indeed, it does, in the sense that it allows repeating groups, which first normal form prohibits. However, some have argued that SQL3 s ARRAY type merely allows storage of information that can be decomposed, much as the SUBSTRING function can decompose character strings and therefore doesn t truly violate the spirit of first normal form. SQL3 9

10 New Data Types: ROW The ROW type gives database designers the additional power of storing structured values in single columns of the database: CREATE TABLE employee ( EMP_ID INTEGER, NAME ROW ( GIVEN VARCHAR(30), FAMILY VARCHAR(30) ), ADDRESS ROW ( STREET VARCHAR(50), CITY VARCHAR(30), STATE CHAR(2) ) SALARY REAL ) SELECT E.NAME.FAMILY FROM employee E While you might argue that this also violates first normal form, most observers recognize it as just another decomposable data type. SQL3 10

11 New Predicates: SIMILAR Since the first version of the SQL standard, character string searching has been limited to very simple comparisons (like =, >, or <>) and the rather rudimentary pattern matching capabilities of the LIKE predicate: WHERE NAME LIKE '%SMIT_' which matches NAME values that have zero or more characters preceding the four characters SMIT and exactly one character after them (such as SMITH or HAMMERSMITS). Recognizing that applications often require more sophisticated capabilities that are still short of full text operations, SQL3 has introduced the SIMILAR predicate that gives programs UNIX-like regular expressions for use in pattern matching. For example: WHERE NAME SIMILAR TO '(SQL-( )) (SQL(1 2 3))' which would match the various names given to the SQL standard over the years. SQL3 11

12 New Predicates: DISTINCT The other new predicate, DISTINCT, is very similar in operation to SQL s ordinary UNIQUE predicate. The important difference is that two null values are considered not equal to one another and would thus satisfy the UNIQUE predicate, but not all applications want that to be the case. The DISTINCT predicate considers two null values to be not distinct from one another (even though they are neither equal to nor not equal to one another) and thus those two null values would cause a DISTINCT predicate not to be satisfied. SQL3 12

13 New Semantics: Update Views A long-standing demand of application writers is the ability to update broader classes of views. Many environments use views heavily as a security mechanism and/or as a simplifier of an applications view of the database. However, if most views are not updatable, then those applications often have to escape from the view mechanism and rely on directly updating the underlying base tables. This is a most unsatisfactory situation. SQL3 has significantly increased the range of views that can be updated directly, using only the facilities provided in the standard. It depends heavily on functional dependencies for determining what additional views can be updated, and how to make changes to the underlying base table data to effect those updates. SQL3 13

14 New Semantics: Recursive Query Another widely-decried shortcoming of SQL has been its inability to perform recursion for applications such as bill-of-material processing. Well, SQL3 has provided a facility called recursive query to satisfy just this sort of requirement. Writing a recursive query involves writing the query expression that you want to recurse and giving it a name, then using that name in an associated query expression: WITH RECURSIVE Q1 AS SELECT...FROM...WHERE..., Q2 AS SELECT...FROM...WHERE... SELECT...FROM Q1, Q2 WHERE... SQL3 14

15 New Semantics: Locators We ve already mentioned locators as a client-side value that can represent a LOB value stored on the server side. Locators can be used in the same way to represent ARRAY values, accepting the fact that (like LOBs) ARRAYs can often be too large to conveniently pass between an application and the database. Locators can also be used to represent user-defined type values, which also have the potential to be large and unwieldy. SQL3 15

16 New Semantics: SAVEPOINTS Finally, SQL3 has added the notion of savepoints, widely implemented in products. A savepoint is a bit like a subtransaction in that an application can undo the actions performed after the beginning of a savepoint without undoing all of the actions of an entire transaction. SQL3 allows ROLLBACK TO SAVEPOINT and RELEASE SAVEPOINT, which acts a lot like committing the subtransaction. SQL3 16

17 Enhanced Security: Role SQL3 s new security facility is found in its role capability. Privileges can be granted to roles just as they can be to individual authorization identifiers, and roles can be granted to authorization identifiers and to other roles. This nested structure can enormously simplify the often difficult job of managing security in a database environment. Roles have been widely implemented by SQL products for several years (though occasionally under different names). SQL3 17

18 Active Database: Trigger A trigger is a facility that allows database designers to instruct the database system to perform certain operations each and every time an application performs specified operations on particular tables. For example, triggers could be used to log all operations that change salaries in an employee table: CREATE TRIGGER log_salary_update BEFORE UPDATE OF salary ON employees REFERENCING OLD ROW as oldrow NEW ROW as newrow FOR EACH ROW INSERT INTO log_table VALUES (CURRENT_USER, oldrow.salary, newrow.salary) SQL3 18

19 II. Object Orientation In addition to the more traditional SQL features, SQL3 s development was focussed largely on adding support for object-oriented concepts to the language. SQL3 enhances the support for functions and procedures invocable from SQL statements, called SQL-invoked routines, by adding a third class of routine known as methods. SQL3 19

20 Structured User-Defined Types The most fundamental facility in SQL3 that supports object orientation is the structured user-defined type. The word structured distinguishes this feature from distinct types (which are also user-defined types, but are limited in SQL3 to being based on SQL s built-in types and thus don t have structure associated with them). Structured types have a number of characteristics, the most important of which are: They may be defined to have one or more attributes, each of which can be any SQL type, including built-in types like INTEGER, collection types like ARRAY, or other structured types (nested as deeply as desired). All aspects of their behaviors are provided through methods, functions, and procedures. Their attributes are encapsulated through the use of system-generated observer and mutator functions ( get and set functions) that provide the only access to their values. SQL3 20

21 Structured User-Defined Types (cont.) Comparisons of their values are done only through user-defined functions. They may participate in type hierarchies, in which more specialized types (subtypes) have all attributes of and use all routines associate with the more generalized types (supertypes), but may add new attributes and routines. Let s look at an example of a structured type definition: CREATE TYPE emp_type UNDER person_type AS ( EMP_ID INTEGER, SALARY REAL ) INSTANTIABLE NOT FINAL REF ( EMP_ID ) INSTANCE METHOD GIVE_RAISE ( ABS_OR_PCT BOOLEAN, AMOUNT REAL ) RETURNS REAL SQL3 21

22 Structured User-Defined Types (cont.) This new type is a subtype of another structured type that might be used to describe persons in general, including such common attributes as name and address ; the new emp_type attributes include things that plain old persons don t have, like an employee ID and a salary. This type was declared to be instantiable and permitted it to have subtypes defined (NOT FINAL). Any references to this type are derived from the employee ID value. Finally, was defined a method that can be applied to instances of this type. SQL3 22

23 Structured User-Defined Types (cont.) SQL3, after an extensive discussion with multiple inheritance (in which subtypes were allowed to have more than one immediate supertype), now provides a type model closely aligned with Java - single inheritance. Type definers are allowed to specify that a given type is either instantiable (in other words, values of that specific type can be created) or not instantiable (analogous to abstract types on other programming languages). And, naturally, any place - such as a column - where a value of some structured type is permitted, a value of any of its subtypes can appear; this provides exactly the sort of substitutability that object-oriented programs depend on. SQL3 23

24 Example: CREATE TYPE PersonType AS ( PRIVATE date_of_birth DATE, PUBLIC name VARCHAR(15), address VARCHAR(50), tel VARCHAR(13)) NOT FINAL; CREATE TYPE StaffType UNDER PersonType AS ( staffno VARCHAR(5), position VARCHAR(10) DEFAULT Assistant, salary DECIMAL(7, 2), branchno CHAR(4), CREATE FUNCTION ismanager (s StaffType) RETURNS BOOLEAN BEGIN IF s.position = Manager THEN RETURN TRUE; ELSE RETURN FALSE; END IF END) INSTANTIABLE NOT FINAL;

25 Structured User-Defined Types (cont.) By the way, some object-oriented programming languages, such as C++, allow type definers to specify the degree to which types are encapsulated: an encapsulation level of PUBLIC applied to an attribute means that any user of the type can access the attribute; PRIVATE means that no code other than that used to implement the type s methods can access the attribute; PROTECTED means that only the type s methods and methods of any subtypes of the type can access the attribute. SQL3 also have this mechanism, attempts were made to define it. SQL3 24

26 Functional and Dot Notations Access to the attributes of user-defined types can be done using either of two notations. In many situations, applications may seem more natural when they use dot notation : WHERE emp.salary > while in other situations, a functional notation may be more natural: WHERE salary(emp) > SQL3 supports both notations. In fact, they are defined to be syntactic variations of the same thing as long as emp is a storage entity (like a column or variable) whose declared type is some structured type with an attribute named salary or there exists a function named salary with a single argument whose data type is the (appropriate) structured type of emp. SQL3 25

27 Functional and Dot Notations (cont.) Methods are slightly less flexible than functions in this case: Only dot notation can be used for method invocations - at least for the purposes of specifying the distinguished argument. If salary were a method whose closely bound type were, say, employee, which was in turn the declared type of a column named emp, then that method could be invoked only using: emp.salary A different method, say give_raise, can combine dot notation and functional notation: emp.give_raise(amount) SQL3 26

28 Objects In spite of certain characteristics like type hierarchies, encapsulation, and so forth, instances of SQL3 s structured types are simply values, just like instances of the language s build-in types. Sure, an employee value is rather more complex (in appearance, as well as in behavior) than an instance of INTEGER, but it s still a value without any identity other than that provided by its value. In order to gain the last little bit of characteristic that allows SQL to provide objects, there has to be some sense of identity that can be referenced in a variety of situations. In SQL3, that capability is supplied by allowing database designers to specify that certain tables are defined to be typed tables that is, their column definitions are derived from the attributes of a structured type: CREATE TABLE empls OF employee SQL3 27

29 Objects Such tables have one column for each attribute of the underlying structured type. The functions, methods, and procedures defined to operate on instances of the type now operate on rows of the table! The rows of the table, then, are values of - or instances of - the type. Each row is given a unique identity that behaves just like a OID (object identifier) behaves it is unique in space (that is, within the database) and time (the life of the database). SQL3 provides a special type, called a REF type, whose values are those unique identifiers. A given REF type is always associated with a specified structured type. SQL3 28

30 Objects For example, if we were to define a table containing a column named manager whose values were references to rows in a typed table of employees, it would look something like this: manager REF(emp_type) A value of a REF type either identifies a row in a typed table (of the specified structured type, of course) or it doesn t identify anything at all which could mean that it s a dangling reference left over after the row that it once identified was deleted. All REF types are scoped so that the table that they reference is known at compilation time. One side effect of the restriction, possibly a beneficial effect, is that REF types now behave very much like referential integrity, possibly easing the task of implementing this facility in some products! SQL3 29

31 Using REF Types You shouldn t be surprised to learn that REF types can be used in ways a little more sophisticated than merely storing and retrieving them. SQL3 provides syntax for following a reference to access attributes of a structured type value: SELECT emps.manager->last_name The pointer notation (->) is applied to a value of some REF type and is then followed into the identified value of the associated structured type which, of course, is really a row of the typed table that is the scope of the REF type. That structured type is both the type associated with the REF type of the manager column in the emps table and the type of that other table (whose name is neither required nor apparent in this expression). However, that structured type must have an attribute named last_name, and the typed table thus has a column of that name. SQL3 30

32 Modelo de Dados Relacional-Objecto Objecto (representação abstracta de entidade do mundo real) Estado - Define o significado do objecto num dado instante Interface - Único meio através do qual se pode referir o estado (encapsular as partes privadas) No modelo de dados Relacional-Objecto, o elemento básico, que fornece a persistência de dados, continua a ser a tabela (ou relação) Uma relação estrutura-se numa tabela com um nome único possuindo número fixo de colunas e linhas (todas contendo o mesmo número de colunas com o mesmo tipo e na mesma posição) O modelo de dados do SQL3 estende o modelo do SQL-92 ao permitir que os tipos das colunas possam ser objectos, tipos linha, colecções e tipos de dados abstractos #bi nome filhos pmb {cbs, pbs} mcv {fsv} SQL3 31

33 Equivalência de Tipos Equivalência por nome Dois valores são equivalentes sse (se e só se) tiverem o mesmo nome e os seus constituintes tiverem a mesma estrutura interna. CREATE DOMAIN name CHARACTER VARYING(30) Equivalentes: Employee(first_name name) Customer(first_name name) Não equivalentes: last_name CHARACTER VARYING(30) first_name CHARACTER VARYING(30) SQL3 32

34 Equivalência de Tipos (cont.) Equivalência estrutural Dois valores são equivalentes sse tiverem o mesmo número de constituintes e estes forem equivalentes aos pares. Type sale(sale INTEGER, date_sale DATE) Type purchase(purchase INTEGER, date_purchase DATE) Tuplos SQL-92 são instâncias de tipos estruturais e valores de colunas são instâncias de tipos com nome (é usada equivalência estrutural e por nome, respectivamente) Em SQL3 valores de colunas são instâncias de tipos com nome ou estruturais (é usada equivalência estrutural e por nome) SQL3 33

35 Extensões ao Sistema de Tipos Booleanos CREATE TABLE Employee(full_time BOOLEAN) Grandes objectos binários CREATE TABLE Employee(photo BLOB(10M)) Grandes objectos de caracteres CREATE TABLE Employee(resume CLOB(50K)) Tipos Linha CREATE TABLE Employee(address ROW( street CHARACTER VARYING(30), city CHARACTER VARYING(20) ) ) CREATE ROW TYPE adress_t(street CHARACTER VARYING(30), city...); É usada equivalência estrutural. Tipos Array CREATE TABLE Employee( phones CHARACTER(9) ARRAY(5) ) SQL3 34

36 Extensões ao Sistema de Tipos (cont.) Tipos de Dados Abstractos CREATE TYPE Persons(ss CHAR(11),...); Tipos definidos pelo utilizador, com nome, possuindo comportamento e estrutura interna encapsulada. Todos os seus atributos possuem funções observer e mutator Tipos Distintos CREATE DISTINCT TYPE us-dollar AS DECIMAL(7,2); CREATE DISTINCT TYPE can-dollar AS DECIMAL(7,2); Especialização, pelo utilizador, de tipos básicos onde será aplicada equivalência por nome (tipagem forte) Podem ser transformados no tipo básico através de casting SQL3 35

37 Extensões ao Sistema de Tipos (cont.) Conjuntos (SET) Colecções de instâncias relacionadas do mesmo tipo CREATE TABLE Students (address SET(address_t)); INSERT INTO Students VALUES(SET(ROW(...), ROW(...) ) ); Lista (LIST) Colecções com ordem Multi-conjuntos (MULTISET) Colecções que permitem duplicados Sub-tabelas e super-tabelas Para modelar hierarquias de colecções CREATE TABLE Persons (ss CHAR(11),...); CREATE TABLE Employee UNDER Person (full_time BOOLEAN); CREATE TABLE Customers UNDER Person; SQL3 36

38 Referências SQL:1999, formerly known as SQL3, Andrew Eisenberg, Jim Melton SQL3 - SGBD Relacional-Objecto, Correia Lopes, FEUP SQL3 37

Schema Evolution in SQL-99 and Commercial (Object-)Relational DBMS

Schema Evolution in SQL-99 and Commercial (Object-)Relational DBMS Schema Evolution in SQL-99 and Commercial (Object-)Relational DBMS Can Türker Swiss Federal Institute of Technology (ETH) Zurich Institute of Information Systems, ETH Zentrum CH 8092 Zurich, Switzerland

More information

Database Implementation: SQL Data Definition Language

Database Implementation: SQL Data Definition Language Database Systems Unit 5 Database Implementation: SQL Data Definition Language Learning Goals In this unit you will learn how to transfer a logical data model into a physical database, how to extend or

More information

SQL:2003 Has Been Published

SQL:2003 Has Been Published SQL:2003 Has Been Published Andrew Eisenberg IBM, Westford, MA 01886 andrew.eisenberg@us.ibm.com Jim Melton Oracle Corp., Sandy, UT 84093 jim.melton@acm.org Krishna Kulkarni IBM, San Jose, CA 94151 krishnak@us.ibm.com

More information

O que é WinRDBI O WinRDBI (Windows Relational DataBase Interpreter) é uma ferramenta educacional utilizada pela Universidade do Estado do Arizona, e que fornece uma abordagem ativa para entender as capacidades

More information

Introdução às Bases de Dados

Introdução às Bases de Dados Introdução às Bases de Dados 2011/12 http://ssdi.di.fct.unl.pt/ibd1112 Joaquim Silva (jfs@di.fct.unl.pt) The Bases de Dados subject Objective: To provide the basis for the modeling, implementation, analysis

More information

Part VI. Object-relational Data Models

Part VI. Object-relational Data Models Part VI Overview Object-relational Database Models Concepts of Object-relational Database Models Object-relational Features in Oracle10g Object-relational Database Models Object-relational Database Models

More information

Database Programming with PL/SQL: Learning Objectives

Database Programming with PL/SQL: Learning Objectives Database Programming with PL/SQL: Learning Objectives This course covers PL/SQL, a procedural language extension to SQL. Through an innovative project-based approach, students learn procedural logic constructs

More information

Database Migration from MySQL to RDM Server

Database Migration from MySQL to RDM Server MIGRATION GUIDE Database Migration from MySQL to RDM Server A Birdstep Technology, Inc. Raima Embedded Database Division Migration Guide Published: May, 2009 Author: Daigoro F. Toyama Senior Software Engineer

More information

14 Triggers / Embedded SQL

14 Triggers / Embedded SQL 14 Triggers / Embedded SQL COMS20700 Databases Dr. Essam Ghadafi TRIGGERS A trigger is a procedure that is executed automatically whenever a specific event occurs. You can use triggers to enforce constraints

More information

Section of DBMS Selection & Evaluation Questionnaire

Section of DBMS Selection & Evaluation Questionnaire Section of DBMS Selection & Evaluation Questionnaire Whitemarsh Information Systems Corporation 2008 Althea Lane Bowie, Maryland 20716 Tele: 301-249-1142 Email: mmgorman@wiscorp.com Web: www.wiscorp.com

More information

Services. Relational. Databases & JDBC. Today. Relational. Databases SQL JDBC. Next Time. Services. Relational. Databases & JDBC. Today.

Services. Relational. Databases & JDBC. Today. Relational. Databases SQL JDBC. Next Time. Services. Relational. Databases & JDBC. Today. & & 1 & 2 Lecture #7 2008 3 Terminology Structure & & Database server software referred to as Database Management Systems (DBMS) Database schemas describe database structure Data ordered in tables, rows

More information

Introduction to Database. Systems HANS- PETTER HALVORSEN, 2014.03.03

Introduction to Database. Systems HANS- PETTER HALVORSEN, 2014.03.03 Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Introduction to Database HANS- PETTER HALVORSEN, 2014.03.03 Systems Faculty of Technology, Postboks

More information

Application Development Guide: Programming Server Applications

Application Development Guide: Programming Server Applications IBM DB2 Universal Database Application Development Guide: Programming Server Applications Version 8 SC09-4827-00 IBM DB2 Universal Database Application Development Guide: Programming Server Applications

More information

Instant SQL Programming

Instant SQL Programming Instant SQL Programming Joe Celko Wrox Press Ltd. INSTANT Table of Contents Introduction 1 What Can SQL Do for Me? 2 Who Should Use This Book? 2 How To Use This Book 3 What You Should Know 3 Conventions

More information

CSC 443 Data Base Management Systems. Basic SQL

CSC 443 Data Base Management Systems. Basic SQL CSC 443 Data Base Management Systems Lecture 6 SQL As A Data Definition Language Basic SQL SQL language Considered one of the major reasons for the commercial success of relational databases SQL Structured

More information

Oracle Academy Introduction to Database Programming with PL/SQL Instructor Resource Guide

Oracle Academy Introduction to Database Programming with PL/SQL Instructor Resource Guide Oracle Academy Introduction to Database Programming with Instructor Resource Guide INSTRUCTOR NOTES FOR SLIDES SECTION 1 LESSON 1 Introduction to Slide 1: Introduction to Slide 2: What Will I Learn? Slide

More information

PL/SQL Overview. Basic Structure and Syntax of PL/SQL

PL/SQL Overview. Basic Structure and Syntax of PL/SQL PL/SQL Overview PL/SQL is Procedural Language extension to SQL. It is loosely based on Ada (a variant of Pascal developed for the US Dept of Defense). PL/SQL was first released in ١٩٩٢ as an optional extension

More information

SQL Server An Overview

SQL Server An Overview SQL Server An Overview SQL Server Microsoft SQL Server is designed to work effectively in a number of environments: As a two-tier or multi-tier client/server database system As a desktop database system

More information

RNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague

RNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague course: Database Applications (NDBI026) WS2015/16 RNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague student duties final DB

More information

Guide to SQL Programming: SQL:1999 and Oracle Rdb V7.1

Guide to SQL Programming: SQL:1999 and Oracle Rdb V7.1 Guide to SQL Programming: SQL:1999 and Oracle Rdb V7.1 A feature of Oracle Rdb By Ian Smith Oracle Rdb Relational Technology Group Oracle Corporation 1 Oracle Rdb Journal SQL:1999 and Oracle Rdb V7.1 The

More information

Choosing a Data Model for Your Database

Choosing a Data Model for Your Database In This Chapter This chapter describes several issues that a database administrator (DBA) must understand to effectively plan for a database. It discusses the following topics: Choosing a data model for

More information

SQL and Management of External Data

SQL and Management of External Data SQL and Management of External Data Jim Melton Oracle, Sandy, UT 84093 jim.melton@acm.org Guest Column Introduction In late 2000, work was completed on yet another part of the SQL standard [1], to which

More information

OBJECT ORIENTED EXTENSIONS TO SQL

OBJECT ORIENTED EXTENSIONS TO SQL OBJECT ORIENTED EXTENSIONS TO SQL Thomas B. Gendreau Computer Science Department University Wisconsin La Crosse La Crosse, WI 54601 gendreau@cs.uwlax.edu Abstract Object oriented technology is influencing

More information

A Brief Introduction to MySQL

A Brief Introduction to MySQL A Brief Introduction to MySQL by Derek Schuurman Introduction to Databases A database is a structured collection of logically related data. One common type of database is the relational database, a term

More information

2874CD1EssentialSQL.qxd 6/25/01 3:06 PM Page 1 Essential SQL Copyright 2001 SYBEX, Inc., Alameda, CA www.sybex.com

2874CD1EssentialSQL.qxd 6/25/01 3:06 PM Page 1 Essential SQL Copyright 2001 SYBEX, Inc., Alameda, CA www.sybex.com Essential SQL 2 Essential SQL This bonus chapter is provided with Mastering Delphi 6. It is a basic introduction to SQL to accompany Chapter 14, Client/Server Programming. RDBMS packages are generally

More information

OBJECTS AND DATABASES. CS121: Introduction to Relational Database Systems Fall 2015 Lecture 21

OBJECTS AND DATABASES. CS121: Introduction to Relational Database Systems Fall 2015 Lecture 21 OBJECTS AND DATABASES CS121: Introduction to Relational Database Systems Fall 2015 Lecture 21 Relational Model and 1NF 2 Relational model specifies that all attribute domains must be atomic A database

More information

The Relational Model. Ramakrishnan&Gehrke, Chapter 3 CS4320 1

The Relational Model. Ramakrishnan&Gehrke, Chapter 3 CS4320 1 The Relational Model Ramakrishnan&Gehrke, Chapter 3 CS4320 1 Why Study the Relational Model? Most widely used model. Vendors: IBM, Informix, Microsoft, Oracle, Sybase, etc. Legacy systems in older models

More information

Duration Vendor Audience 5 Days Oracle End Users, Developers, Technical Consultants and Support Staff

Duration Vendor Audience 5 Days Oracle End Users, Developers, Technical Consultants and Support Staff D80198GC10 Oracle Database 12c SQL and Fundamentals Summary Duration Vendor Audience 5 Days Oracle End Users, Developers, Technical Consultants and Support Staff Level Professional Delivery Method Instructor-led

More information

The Relational Model. Why Study the Relational Model?

The Relational Model. Why Study the Relational Model? The Relational Model Chapter 3 Instructor: Vladimir Zadorozhny vladimir@sis.pitt.edu Information Science Program School of Information Sciences, University of Pittsburgh 1 Why Study the Relational Model?

More information

Advanced SQL. Jim Mason. www.ebt-now.com Web solutions for iseries engineer, build, deploy, support, train 508-728-4353. jemason@ebt-now.

Advanced SQL. Jim Mason. www.ebt-now.com Web solutions for iseries engineer, build, deploy, support, train 508-728-4353. jemason@ebt-now. Advanced SQL Jim Mason jemason@ebt-now.com www.ebt-now.com Web solutions for iseries engineer, build, deploy, support, train 508-728-4353 What We ll Cover SQL and Database environments Managing Database

More information

4 Simple Database Features

4 Simple Database Features 4 Simple Database Features Now we come to the largest use of iseries Navigator for programmers the Databases function. IBM is no longer developing DDS (Data Description Specifications) for database definition,

More information

Oracle Database: SQL and PL/SQL Fundamentals

Oracle Database: SQL and PL/SQL Fundamentals Oracle University Contact Us: 1.800.529.0165 Oracle Database: SQL and PL/SQL Fundamentals Duration: 5 Days What you will learn This course is designed to deliver the fundamentals of SQL and PL/SQL along

More information

SQL. Short introduction

SQL. Short introduction SQL Short introduction 1 Overview SQL, which stands for Structured Query Language, is used to communicate with a database. Through SQL one can create, manipulate, query and delete tables and contents.

More information

4 Logical Design : RDM Schema Definition with SQL / DDL

4 Logical Design : RDM Schema Definition with SQL / DDL 4 Logical Design : RDM Schema Definition with SQL / DDL 4.1 SQL history and standards 4.2 SQL/DDL first steps 4.2.1 Basis Schema Definition using SQL / DDL 4.2.2 SQL Data types, domains, user defined types

More information

Physical Design. Meeting the needs of the users is the gold standard against which we measure our success in creating a database.

Physical Design. Meeting the needs of the users is the gold standard against which we measure our success in creating a database. Physical Design Physical Database Design (Defined): Process of producing a description of the implementation of the database on secondary storage; it describes the base relations, file organizations, and

More information

Embedded SQL programming

Embedded SQL programming Embedded SQL programming http://www-136.ibm.com/developerworks/db2 Table of contents If you're viewing this document online, you can click any of the topics below to link directly to that section. 1. Before

More information

Facebook Twitter YouTube Google Plus Website Email

Facebook Twitter YouTube Google Plus Website Email PHP MySQL COURSE WITH OOP COURSE COVERS: PHP MySQL OBJECT ORIENTED PROGRAMMING WITH PHP SYLLABUS PHP 1. Writing PHP scripts- Writing PHP scripts, learn about PHP code structure, how to write and execute

More information

SQL: Structured Query Language The Relational Database Standard. The name SQL is derived from Structured Query Language. Originally, SQL was

SQL: Structured Query Language The Relational Database Standard. The name SQL is derived from Structured Query Language. Originally, SQL was SQL: Structured Query Language The Relational Database Standard The name SQL is derived from Structured Query Language. Originally, SQL was called SEQUEL (for Structured English Query Language) and was

More information

Chapter 9: Object-Based Databases

Chapter 9: Object-Based Databases Chapter 9: Object-Based Databases Database System Concepts See www.db-book.com for conditions on re-use Database System Concepts Chapter 9: Object-Based Databases Complex Data Types and Object Orientation

More information

The Relational Model. Why Study the Relational Model? Relational Database: Definitions. Chapter 3

The Relational Model. Why Study the Relational Model? Relational Database: Definitions. Chapter 3 The Relational Model Chapter 3 Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke 1 Why Study the Relational Model? Most widely used model. Vendors: IBM, Informix, Microsoft, Oracle, Sybase,

More information

Bioinformática BLAST. Blast information guide. Buscas de sequências semelhantes. Search for Homologies BLAST

Bioinformática BLAST. Blast information guide. Buscas de sequências semelhantes. Search for Homologies BLAST BLAST Bioinformática Search for Homologies BLAST BLAST - Basic Local Alignment Search Tool http://blastncbinlmnihgov/blastcgi 1 2 Blast information guide Buscas de sequências semelhantes http://blastncbinlmnihgov/blastcgi?cmd=web&page_type=blastdocs

More information

History of SQL. Relational Database Languages. Tuple relational calculus ALPHA (Codd, 1970s) QUEL (based on ALPHA) Datalog (rule-based, like PROLOG)

History of SQL. Relational Database Languages. Tuple relational calculus ALPHA (Codd, 1970s) QUEL (based on ALPHA) Datalog (rule-based, like PROLOG) Relational Database Languages Tuple relational calculus ALPHA (Codd, 1970s) QUEL (based on ALPHA) Datalog (rule-based, like PROLOG) Domain relational calculus QBE (used in Access) History of SQL Standards:

More information

Oracle Database 10g: Program with PL/SQL

Oracle Database 10g: Program with PL/SQL Oracle University Contact Us: Local: 1800 425 8877 Intl: +91 80 4108 4700 Oracle Database 10g: Program with PL/SQL Duration: 5 Days What you will learn This course introduces students to PL/SQL and helps

More information

Oracle Database: SQL and PL/SQL Fundamentals NEW

Oracle Database: SQL and PL/SQL Fundamentals NEW Oracle University Contact Us: + 38516306373 Oracle Database: SQL and PL/SQL Fundamentals NEW Duration: 5 Days What you will learn This Oracle Database: SQL and PL/SQL Fundamentals training delivers the

More information

Advance DBMS. Structured Query Language (SQL)

Advance DBMS. Structured Query Language (SQL) Structured Query Language (SQL) Introduction Commercial database systems use more user friendly language to specify the queries. SQL is the most influential commercially marketed product language. Other

More information

SQL DATA DEFINITION: KEY CONSTRAINTS. CS121: Introduction to Relational Database Systems Fall 2015 Lecture 7

SQL DATA DEFINITION: KEY CONSTRAINTS. CS121: Introduction to Relational Database Systems Fall 2015 Lecture 7 SQL DATA DEFINITION: KEY CONSTRAINTS CS121: Introduction to Relational Database Systems Fall 2015 Lecture 7 Data Definition 2 Covered most of SQL data manipulation operations Continue exploration of SQL

More information

Oracle Database 10g Express

Oracle Database 10g Express Oracle Database 10g Express This tutorial prepares the Oracle Database 10g Express Edition Developer to perform common development and administrative tasks of Oracle Database 10g Express Edition. Objectives

More information

Handling Unstructured Data Type in DB2 and Oracle

Handling Unstructured Data Type in DB2 and Oracle Alexander P. Pons, Hassan Aljifri Handling Unstructured Data Type in DB2 and Oracle Alexander P. Pons Computer Information Systems, University of Miami, 421 Jenkins Building, Coral Gables, FL 33146 Phone:

More information

Database SQL messages and codes

Database SQL messages and codes System i Database SQL messages and codes Version 5 Release 4 System i Database SQL messages and codes Version 5 Release 4 Note Before using this information and the product it supports, read the information

More information

Firebird. Embedded SQL Guide for RM/Cobol

Firebird. Embedded SQL Guide for RM/Cobol Firebird Embedded SQL Guide for RM/Cobol Embedded SQL Guide for RM/Cobol 3 Table of Contents 1. Program Structure...6 1.1. General...6 1.2. Reading this Guide...6 1.3. Definition of Terms...6 1.4. Declaring

More information

EuroRec Repository. Translation Manual. January 2012

EuroRec Repository. Translation Manual. January 2012 EuroRec Repository Translation Manual January 2012 Added to Deliverable D6.3 for the EHR-Q TN project EuroRec Repository Translations Manual January 2012 1/21 Table of Content 1 Property of the document...

More information

ERserver. DB2 Universal Database for iseries SQL Programming with Host Languages. iseries. Version 5

ERserver. DB2 Universal Database for iseries SQL Programming with Host Languages. iseries. Version 5 ERserver iseries DB2 Universal Database for iseries SQL Programming with Host Languages Version 5 ERserver iseries DB2 Universal Database for iseries SQL Programming with Host Languages Version 5 Copyright

More information

Information Systems SQL. Nikolaj Popov

Information Systems SQL. Nikolaj Popov Information Systems SQL Nikolaj Popov Research Institute for Symbolic Computation Johannes Kepler University of Linz, Austria popov@risc.uni-linz.ac.at Outline SQL Table Creation Populating and Modifying

More information

1 Structured Query Language. 2 DDL - Data Definition Language 2.1 CREATE DATABASE 2.2 DROP DATABASE 2.3 CREATE TABLE

1 Structured Query Language. 2 DDL - Data Definition Language 2.1 CREATE DATABASE 2.2 DROP DATABASE 2.3 CREATE TABLE 1 Structured Query Language SQL, or Structured Query Language is the most popular declarative language used to work with Relational Databases. Originally developed at IBM, it has been subsequently standardized

More information

COMP 5138 Relational Database Management Systems. Week 5 : Basic SQL. Today s Agenda. Overview. Basic SQL Queries. Joins Queries

COMP 5138 Relational Database Management Systems. Week 5 : Basic SQL. Today s Agenda. Overview. Basic SQL Queries. Joins Queries COMP 5138 Relational Database Management Systems Week 5 : Basic COMP5138 "Relational Database Managment Systems" J. Davis 2006 5-1 Today s Agenda Overview Basic Queries Joins Queries Aggregate Functions

More information

IT2305 Database Systems I (Compulsory)

IT2305 Database Systems I (Compulsory) Database Systems I (Compulsory) INTRODUCTION This is one of the 4 modules designed for Semester 2 of Bachelor of Information Technology Degree program. CREDITS: 04 LEARNING OUTCOMES On completion of this

More information

Oracle Internal & Oracle Academy

Oracle Internal & Oracle Academy Declaring PL/SQL Variables Objectives After completing this lesson, you should be able to do the following: Identify valid and invalid identifiers List the uses of variables Declare and initialize variables

More information

Complex Data and Object-Oriented. Databases

Complex Data and Object-Oriented. Databases Complex Data and Object-Oriented Topics Databases The object-oriented database model (JDO) The object-relational model Implementation challenges Learning objectives Explain what an object-oriented data

More information

TRANSACÇÕES. PARTE I (Extraído de SQL Server Books Online )

TRANSACÇÕES. PARTE I (Extraído de SQL Server Books Online ) Transactions Architecture TRANSACÇÕES PARTE I (Extraído de SQL Server Books Online ) Microsoft SQL Server 2000 maintains the consistency and integrity of each database despite errors that occur in the

More information

In This Lecture. SQL Data Definition SQL SQL. Notes. Non-Procedural Programming. Database Systems Lecture 5 Natasha Alechina

In This Lecture. SQL Data Definition SQL SQL. Notes. Non-Procedural Programming. Database Systems Lecture 5 Natasha Alechina This Lecture Database Systems Lecture 5 Natasha Alechina The language, the relational model, and E/R diagrams CREATE TABLE Columns Primary Keys Foreign Keys For more information Connolly and Begg chapter

More information

Oracle For Beginners Page : 1

Oracle For Beginners Page : 1 Oracle For Beginners Page : 1 Chapter 22 OBJECT TYPES Introduction to object types Creating object type and object Using object type Creating methods Accessing objects using SQL Object Type Dependencies

More information

7. Databases and Database Management Systems

7. Databases and Database Management Systems 7. Databases and Database Management Systems 7.1 What is a File? A file is a collection of data or information that has a name, called the Filename. There are many different types of files: Data files

More information

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Test: Final Exam Semester 1 Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 6 1. The following code does not violate any constraints and will

More information

Fundamentals of Database Design

Fundamentals of Database Design Fundamentals of Database Design Zornitsa Zaharieva CERN Data Management Section - Controls Group Accelerators and Beams Department /AB-CO-DM/ 23-FEB-2005 Contents : Introduction to Databases : Main Database

More information

Java Application Developer Certificate Program Competencies

Java Application Developer Certificate Program Competencies Java Application Developer Certificate Program Competencies After completing the following units, you will be able to: Basic Programming Logic Explain the steps involved in the program development cycle

More information

IT2304: Database Systems 1 (DBS 1)

IT2304: Database Systems 1 (DBS 1) : Database Systems 1 (DBS 1) (Compulsory) 1. OUTLINE OF SYLLABUS Topic Minimum number of hours Introduction to DBMS 07 Relational Data Model 03 Data manipulation using Relational Algebra 06 Data manipulation

More information

Intro to Embedded SQL Programming for ILE RPG Developers

Intro to Embedded SQL Programming for ILE RPG Developers Intro to Embedded SQL Programming for ILE RPG Developers Dan Cruikshank DB2 for i Center of Excellence 1 Agenda Reasons for using Embedded SQL Getting started with Embedded SQL Using Host Variables Using

More information

Database Query 1: SQL Basics

Database Query 1: SQL Basics Database Query 1: SQL Basics CIS 3730 Designing and Managing Data J.G. Zheng Fall 2010 1 Overview Using Structured Query Language (SQL) to get the data you want from relational databases Learning basic

More information

Databases 2011 The Relational Model and SQL

Databases 2011 The Relational Model and SQL Databases 2011 Christian S. Jensen Computer Science, Aarhus University What is a Database? Main Entry: da ta base Pronunciation: \ˈdā-tə-ˌbās, ˈda- also ˈdä-\ Function: noun Date: circa 1962 : a usually

More information

Programming with SQL

Programming with SQL Unit 43: Programming with SQL Learning Outcomes A candidate following a programme of learning leading to this unit will be able to: Create queries to retrieve information from relational databases using

More information

Part A: Data Definition Language (DDL) Schema and Catalog CREAT TABLE. Referential Triggered Actions. CSC 742 Database Management Systems

Part A: Data Definition Language (DDL) Schema and Catalog CREAT TABLE. Referential Triggered Actions. CSC 742 Database Management Systems CSC 74 Database Management Systems Topic #0: SQL Part A: Data Definition Language (DDL) Spring 00 CSC 74: DBMS by Dr. Peng Ning Spring 00 CSC 74: DBMS by Dr. Peng Ning Schema and Catalog Schema A collection

More information

ORACLE 9I / 10G / 11G / PL/SQL COURSE CONTENT

ORACLE 9I / 10G / 11G / PL/SQL COURSE CONTENT ORACLE 9I / 10G / 11G / PL/SQL COURSE CONTENT INTRODUCTION: Course Objectives I-2 About PL/SQL I-3 PL/SQL Environment I-4 Benefits of PL/SQL I-5 Benefits of Subprograms I-10 Invoking Stored Procedures

More information

PL/SQL MOCK TEST PL/SQL MOCK TEST I

PL/SQL MOCK TEST PL/SQL MOCK TEST I http://www.tutorialspoint.com PL/SQL MOCK TEST Copyright tutorialspoint.com This section presents you various set of Mock Tests related to PL/SQL. You can download these sample mock tests at your local

More information

Object-Oriented Databases

Object-Oriented Databases Object-Oriented Databases based on Fundamentals of Database Systems Elmasri and Navathe Acknowledgement: Fariborz Farahmand Minor corrections/modifications made by H. Hakimzadeh, 2005 1 Outline Overview

More information

Oracle Database 11g SQL

Oracle Database 11g SQL AO3 - Version: 2 19 June 2016 Oracle Database 11g SQL Oracle Database 11g SQL AO3 - Version: 2 3 days Course Description: This course provides the essential SQL skills that allow developers to write queries

More information

INTRODUCTION TO DATABASE SYSTEMS

INTRODUCTION TO DATABASE SYSTEMS Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics INTRODUCTION TO DATABASE SYSTEMS HANS-PETTER HALVORSEN, 9. DESEMBER 2009 Faculty of Technology,

More information

Querying Microsoft SQL Server

Querying Microsoft SQL Server Course 20461C: Querying Microsoft SQL Server Module 1: Introduction to Microsoft SQL Server 2014 This module introduces the SQL Server platform and major tools. It discusses editions, versions, tools used

More information

Course ID#: 1401-801-14-W 35 Hrs. Course Content

Course ID#: 1401-801-14-W 35 Hrs. Course Content Course Content Course Description: This 5-day instructor led course provides students with the technical skills required to write basic Transact- SQL queries for Microsoft SQL Server 2014. This course

More information

Oracle Database: SQL and PL/SQL Fundamentals

Oracle Database: SQL and PL/SQL Fundamentals Oracle University Contact Us: +966 12 739 894 Oracle Database: SQL and PL/SQL Fundamentals Duration: 5 Days What you will learn This Oracle Database: SQL and PL/SQL Fundamentals training is designed to

More information

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. est: Final Exam Semester 1 Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 6 1. How can you retrieve the error code and error message of any

More information

Programming Database lectures for mathema

Programming Database lectures for mathema Programming Database lectures for mathematics students April 25, 2015 Functions Functions are defined in Postgres with CREATE FUNCTION name(parameter type,...) RETURNS result-type AS $$ function-body $$

More information

Querying Microsoft SQL Server 20461C; 5 days

Querying Microsoft SQL Server 20461C; 5 days Lincoln Land Community College Capital City Training Center 130 West Mason Springfield, IL 62702 217-782-7436 www.llcc.edu/cctc Querying Microsoft SQL Server 20461C; 5 days Course Description This 5-day

More information

PostgreSQL Functions By Example

PostgreSQL Functions By Example Postgre joe.conway@credativ.com credativ Group January 20, 2012 What are Functions? Introduction Uses Varieties Languages Full fledged SQL objects Many other database objects are implemented with them

More information

Porting from Oracle to PostgreSQL

Porting from Oracle to PostgreSQL by Paulo Merson February/2002 Porting from Oracle to If you are starting to use or you will migrate from Oracle database server, I hope this document helps. If you have Java applications and use JDBC,

More information

Retrieving Data Using the SQL SELECT Statement. Copyright 2006, Oracle. All rights reserved.

Retrieving Data Using the SQL SELECT Statement. Copyright 2006, Oracle. All rights reserved. Retrieving Data Using the SQL SELECT Statement Objectives After completing this lesson, you should be able to do the following: List the capabilities of SQL SELECT statements Execute a basic SELECT statement

More information

Commercial Database Software Development- A review.

Commercial Database Software Development- A review. Commercial Database Software Development- A review. A database software has wide applications. A database software is used in almost all the organizations. Over 15 years many tools have been developed

More information

Lecture 6. SQL, Logical DB Design

Lecture 6. SQL, Logical DB Design Lecture 6 SQL, Logical DB Design Relational Query Languages A major strength of the relational model: supports simple, powerful querying of data. Queries can be written intuitively, and the DBMS is responsible

More information

database abstraction layer database abstraction layers in PHP Lukas Smith BackendMedia smith@backendmedia.com

database abstraction layer database abstraction layers in PHP Lukas Smith BackendMedia smith@backendmedia.com Lukas Smith database abstraction layers in PHP BackendMedia 1 Overview Introduction Motivation PDO extension PEAR::MDB2 Client API SQL syntax SQL concepts Result sets Error handling High level features

More information

Teach Yourself InterBase

Teach Yourself InterBase Teach Yourself InterBase This tutorial takes you step-by-step through the process of creating and using a database using the InterBase Windows ISQL dialog. You learn to create data structures that enforce

More information

BCA. Database Management System

BCA. Database Management System BCA IV Sem Database Management System Multiple choice questions 1. A Database Management System (DBMS) is A. Collection of interrelated data B. Collection of programs to access data C. Collection of data

More information

1 Stored Procedures in PL/SQL 2 PL/SQL. 2.1 Variables. 2.2 PL/SQL Program Blocks

1 Stored Procedures in PL/SQL 2 PL/SQL. 2.1 Variables. 2.2 PL/SQL Program Blocks 1 Stored Procedures in PL/SQL Many modern databases support a more procedural approach to databases they allow you to write procedural code to work with data. Usually, it takes the form of SQL interweaved

More information

Oracle Database 10g: Introduction to SQL

Oracle Database 10g: Introduction to SQL Oracle University Contact Us: 1.800.529.0165 Oracle Database 10g: Introduction to SQL Duration: 5 Days What you will learn This course offers students an introduction to Oracle Database 10g database technology.

More information

Duration Vendor Audience 5 Days Oracle Developers, Technical Consultants, Database Administrators and System Analysts

Duration Vendor Audience 5 Days Oracle Developers, Technical Consultants, Database Administrators and System Analysts D80186GC10 Oracle Database: Program with Summary Duration Vendor Audience 5 Days Oracle Developers, Technical Consultants, Database Administrators and System Analysts Level Professional Technology Oracle

More information

AD A O.N. ET E Access Data Object

AD A O.N. ET E Access Data Object ADO.NET Access Data Object ADO.NET Conjunto de classes que permitem o acesso à base de dados. Dois cenários: Connected Os dados provenientes da base de dados são obtidos a partir de uma ligação que se

More information

Once the schema has been designed, it can be implemented in the RDBMS.

Once the schema has been designed, it can be implemented in the RDBMS. 2. Creating a database Designing the database schema... 1 Representing Classes, Attributes and Objects... 2 Data types... 5 Additional constraints... 6 Choosing the right fields... 7 Implementing a table

More information

Oracle8/ SQLJ Programming

Oracle8/ SQLJ Programming Technisch&AJniversitatDarmstadt Fachbeteich IpfcJrrnatik Fachgebiet PrjN^ische Informattk 7 '64283 Dar ORACLE Oracle Press Oracle8/ SQLJ Programming Tecbnischa UniversMt Osr FACHBEREICH INFORMATiK BIBLIOTHEK

More information

Querying Microsoft SQL Server Course M20461 5 Day(s) 30:00 Hours

Querying Microsoft SQL Server Course M20461 5 Day(s) 30:00 Hours Área de formação Plataforma e Tecnologias de Informação Querying Microsoft SQL Introduction This 5-day instructor led course provides students with the technical skills required to write basic Transact-SQL

More information

6 CHAPTER. Relational Database Management Systems and SQL Chapter Objectives In this chapter you will learn the following:

6 CHAPTER. Relational Database Management Systems and SQL Chapter Objectives In this chapter you will learn the following: 6 CHAPTER Relational Database Management Systems and SQL Chapter Objectives In this chapter you will learn the following: The history of relational database systems and SQL How the three-level architecture

More information