sql server - elearning.usarb.mdelearning.usarb.md/blog/matveeva/files/2013/03/sql.pdf · rdbms avem...
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