SQL Server sintaksisi

Jahongir Temirov

SQL ni UPPER-CASE da yozgan ma'qul.

SQL katta-kichik harflarga sezgir emas. SELECT va select keywordlari bir ma'noni beradi

Comments

Single-line: 2 ta tire qo'yilgan joydan o'ng tomoni qator oxirigacha comment

Multi-line/* */ orasida joylashgan barchasi comment

SQL Sub Languages

SQL turli imkoniyatlarni ta'minlaydigan ko'plab pastki tillardan iborat. SQL ning pastki tillari tomonidan taqdim etiladigan imkoniyatlar - bu yaratish, ma'lumotlarni manipulyatsiya qilish, so'rovlar va ularni boshqarish

  • DDL - Data Definition Language

  • DML - Data Manipulation Language

  • DQL/DRL - Data Query/Retrieval Language

  • TCL - Transaction Control Language

  • DCL - Data Control Language

Database bilan ishlash

SQL Serverda db nomi Unique (yagona) bo'lishi, maksimum 128 belgi bo'lishi lozim.

DB xosil qilishni 2 xil yo'li mavjud. UI va Query. Faqat Queryni yozaman.

CREATE DATABASE

CREATE DATABASE <Database_name>

CREATE DATABASE Student;

Yangi database(keyingi o'rinlarda db) bilan 2 file ham hosil bo'ladi.

*.mdf — master data file. Asosiy ma'lumotlar, jadvallar ushbu fileda saqlanadi.

*.ldf — log data file. Querylar tarixi(dbni tiklash uchun) ushbu fileda.

ALTER DATABASE

ALTER DATABASE <Databse_name>              
MODIFY NAME = <New Name>

ALTER DATABASE Student
MODIFY NAME = Students;

ALTER orqali db nomini, sozlamalarini, file nomi va joylashuvini va boshqalarni o'zgartirishimiz mumkin.

File nomi:

Alter DATABASE Edu_TSQL_Alter;
MODIFY FILE ( NAME = Edu_TSQL, NEWNAME = Edu_TSQL_newName );

File joylashuv:

Alter DATABASE Edu_TSQL_Alter;
MODIFY FILE ( NAME = Edu_TSQL_NewName, FILENAME = N"C:\Program Files\Microsoft SQL Server\MSSQL14.SQL_MS\MSSQL\DATA\New_File\Edu_TSQL_log.ldf" );

DROP DATABASE

DROP DATABASE <Databse_name>

DROP DATABASE Students;

Shu bilan db olib tashlanadi.

BACKUP DATABASE

BACKUP DATABASE <Databse_name>
TO DISK = 'filePath';

BACKUP DATABASE Students
TO DISK = 'J:\Databases\';

SQL ma'lumotlar bazasining to'liq zaxira nusxasini yaratish uchun ishlatiladi

BACKUP DATABASE <Databse_name>
TO DISK = 'filePath'
WITH DIFFERENTIAL;

Differensial zahira nusxasi faqat oxirgi to'liq ma'lumotlar bazasi zahira nusxasidan keyin o'zgargan ma'lumotlar bazasi qismlarini zaxiralaydi.

RESTORE DATABASE

RESTORE DATABASE <Databse_name>
FROM DISK = 'filePath + fileName';

RESTORE DATABASE Students
FROM DISK ='J:\Databases\Students.bak';

Zaxiraga olingan db ni yuklash

Table bilan ishlash

Jadval(Table) - bu ma'lumotlarni satr va ustun formatida saqlaydigan ob'ekt

Jadvalni quyidagi usullar bilan yaratishimiz mumkin:

  1. Query: Barcha ustunlar va uning ma'lumotlar turini belgilash orqali yangi jadval yarating.

  2. Query: Mavjud jadval yordamida yangi jadval yaratish

  3. Jadval dizayneridan foydalanish

CREATE TABLE

CREATE TABLE tableName
( 
  column_1 datatype [ NULL | NOT NULL ],
  column_2 datatype [ NULL | NOT NULL ],
  ...
);

CREATE TABLE Student
(
    Id INT NOT NULL,
    Name VARCHAR(30) NOT NULL,
    Address TEXT,
    Email TEXT
);

CREATE TABLE nomi (ustun_nomi ma'lumot_turi null_yoki_null_emasligi);

NOT NULL yoki NULL ni belgilamasa default NULL olinadi.

Jadval nomi, column nomi Unique bo'lishi lozim. Nomi _ dan boshqa belgi va raqamlardan boshlanmasligi lozim. Iloji boricha space(" ")dan foydalanmang. O'rniga _ dan foydalaning. Nomi kamida 1 belgi, max 128 belgi, ustunlar soni 1 dan 1024 gacha bo'lishi lozim.

SELECT (Column 1, …) INTO <New Table name> FROM <Old Table name>;
SELECT (Id,Email) INTO Emails FROM Student;

Mavjud table dan yangi table ochish.

ALTER TABLE

ALTER TABLE tableName ADD column_1 datatype, column_1 datatype;

ALTER TABLE Students ADD Age INT;

ALTER TABLE bilan column nomini, o'lchamini, datatype ini o'zgartirish, null yoki not null ni belgilash, yangi column qo'shish, olib tashlash, cheklovlar qo'shish, olib tashlash mumkin.

ALTER TABLE tableName ALTER COLUMN column_1 datatype NOT NULL or NULL;

ALTER TABLE Students ALTER COLUMN Address VARCHAR(100) NOT NULL;

Address column NULL dan NOT NULL ga o'zgardi.

ALTER TABLE tableName ALTER COLUMN column_1 datatype;

ALTER TABLE Students ALTER COLUMN Address VARCHAR(100);

Columnni size va typeni o'zgartirish. Sizeni o'zgartirganda mavjud datalarni eng kam belgi borini oladi. Masalan: "Tashkent, Amir Temur Street 108" da 31 dan kam qila olmaysiz.

EXEC sp_rename 'Table.Column', 'newName';

EXEC sp_rename 'Customers.ID', 'CustomerID';

Column nomini o'zgartirish. sp_rename saqlangan protsedura hisoblanadi.

ALTER TABLE tableName DROP COLUMN column_1;

ALTER TABLE Students DROP COLUMN Address;

Ustunni olib tashlash

DROP/TRUNCATE TABLE

DROP TABLE <tableName>;
DROP TABLE Students

TRUNCATE TABLE <tableName>;
TRUNCATE TABLE Students

DROP jadvalni o'chiradi. TRUNCATE esa jadvaldagi ma'lumotlarni tozalaydi.

Last updated