SQL Server - elearning.usarb.mdelearning.usarb.md/blog/matveeva/files/2013/03/sql.pdf · RDBMS Avem...

Post on 05-Feb-2018

250 views 2 download

transcript

SQL Server

Harta conceptuală

SQL

Limbajul SQL SQL este un limbaj standard pentru accesarea și

manipularea bazelor de date

SQL – Structured Query Language

SQL este un standard ANSI (American National

Standards Institute)

Pentru ce se utilizează Pentru a executa interogări la baza de date

Pentru a extrage date din baza de date

Pentru a insera înregistrări în baza de date

Pentru a actualiza înregistrări în baza de date

Pentru a șterge înregistrări în baza de date

Pentru a crea noi baze de date

Pentru a crea noi tabele în baza de date

Pentru a crea proceduri stocate, funcții, triggere

Pentru a crea vizualizări în baza de date

Pentru a stabili permisiuni asupra entităților din baza de date

RDBMS Avem nevoie de un sistem de gestiune a

bazelor de date.

Microsoft SQL Server

MySQL

Oracle

IBM DB2

Microsoft Access

DML şi DDL

DML - Data Manipulation Language –

comenzile pentru extragere și actualizare SELECT - extrage date din baza de date

UPDATE - actualizează date în baza de date

DELETE - șterge înregistrări din baza de date

INSERT INTO - inserează date noi în baza de date

DML şi DDL DDL - Data Definition Language – comenzi pentru

creare/modificare bază de date, tabele, indecși,

stabilire legături între tabele, constrângeri CREATE DATABASE

ALTER DATABASE

CREATE TABLE

ALTER TABLE

DROP TABLE

CREATE INDEX

DROP INDEX

Crearea bazei de date în SQL CREATE DATABASE MyDB ON (NAME = MyDBroot, --Fişier

primar de date

FILENAME = 'c:\mssql2k\MSSQL\data\mydbroot.mdf', SIZE = 8MB,

MAXSIZE = 9MB, FILEGROWTH = 100KB),

(NAME = MyDBdata1, --Fişier secundar de date

FILENAME = 'c:\mssql2k\MSSQL\data\mydbdata1.ndf', SIZE = 1000MB,

MAXSIZE = 1500MB, FILEGROWTH = 100MB)

LOG ON

(NAME = Logdata1, --Jurnal de tranzacţii

FILENAME = 'e:\log_files\logdata1.ldf', SIZE = 1000MB, MAXSIZE = 1500MB,

FILEGROWTH = 100MB)

Baze de date de sistem Master

Tempdb

Model

Msdb

Crearea tabelelor O bază de date conține cel puțin o tabelă identificată prin

nume. Tabelele conțin înregistrări cu date

Pentru a crea tabele se utilizează

CREATE TABLE table_name

(

column_name1 data_type,

column_name2 data_type,

column_name3 data_type,

....

)

Tipuri de date în MSSQL Şiruri de caractere

Tipuri de date în MSSQL Şiruri de caractere Unicode

Tipuri de date în MSSQL Tipuri binare

Tipuri de date în MSSQL Tipuri numerice

Tipuri de date în MSSQL Tipuri numerice

Tipuri de date în MSSQL

Tipuri de date în MSSQL Tipuri de date pentru dată

Tipuri de date în MSSQL

Tipuri de date în MSSQL

Constrângeri Se folosesc pentru a limita tipul datelor care pot ajunge în

tabelă

Se pot specifica la crearea tabelei (în instrucțiunea CREATE TABLE) sau după ce a fost creată tabela (cu instrucțiunea ALTER TABLE)

NOT NULL

UNIQUE

PRIMARY KEY

FOREIGN KEY

CHECK

DEFAULT

Constrângeri CREATE TABLE student

(

st_Id int NOT NULL,

nume varchar(255) NOT NULL,

prenumevarchar(255),

Addresa varchar(255),

Oras varchar(255)

)

Constrângeri CREATE TABLE student

(

st_Id int NOT NULL,

Nume varchar(255) NOT NULL,

Prenume varchar(255),

Adresa varchar(255),

Oras varchar(255),

CONSTRAINT uc_studentID UNIQUE (st_Id,prenume)

)

Constrângerea UNIQUE – cu

ALTER TABLE ALTER TABLE student

ADD UNIQUE (st_Id)

ALTER TABLE student

ADD CONSTRAINT uc_studentID UNIQUE (st_Id, nume)

Ştergerea unei constrîngeri ALTER TABLE student

DROP CONSTRAINT uc_studentID

Constrângeri CREATE TABLE student

(

st_Id int NOT NULL,

Nume varchar(255) NOT NULL,

Prenume varchar(255),

Adresa varchar(255),

Oras varchar(255),

CONSTRAINT pk_studentID PRIMARY KEY

(st_Id,nume)

)

Constrângeri CREATE TABLE note_exam

(

nota_Id int NOT NULL,

nota int NOT NULL,

st_Id int,

PRIMARY KEY (nota_Id),

FOREIGN KEY (st_Id) REFERENCES student(st_Id)

)

Constrângeri CREATE TABLE student

(

st_Id int NOT NULL CHECK (st_Id>0),

Nume varchar(255) NOT NULL,

Prenume varchar(255),

Adresa varchar(255),

Oras varchar(255)

)

ALTER TABLE student

ADD CONSTRAINT chk_student CHECK (st_Id>0

AND oras=‘Chisinau')

Constrângerea Default CREATE TABLE student

(

st_Id int NOT NULL,

Nume varchar(255) NOT NULL,

Prenume varchar(255),

Adresa varchar(255),

Oras varchar(255) DEFAULT ‘Balti'

)

Constrângerea Default CREATE TABLE Note_exam

(

nota_Id int NOT NULL,

nota int NOT NULL,

st_Id int,

Data_exam date DEFAULT GETDATE()

)

Instrucţiunea DROP DROP TABLE - șterge o tabelă

DROP TABLE table_name

TRUNCATE TABLE - șterge doar înregistrările dintr-

o tabelă

TRUNCATE TABLE table_name

Instrucţiunea ALTER Folosită pentru a adăuga, modifica, șterge, coloane dintr-o

tabelă

Adăugarea unei coloane

ALTER TABLE table_name

ADD column_name datatype

Ștergerea unei coloane

ALTER TABLE table_name

DROP COLUMN column_name

Schimbarea tipului de date pentru o coloană

ALTER TABLE table_name

ALTER COLUMN column_name datatype

Constrângerea IDENTITY CREATE TABLE student(

st_Id int PRIMARY KEY IDENTITY,

Nume varchar(255) NOT NULL,

Prenume varchar(255), Adresa varchar(255),

Oras varchar(255) )

Implicit pornește de la 1 și crește cu 1

Altfel IDENTITY(5,2)

Întrebări