PL / SQL. Paketlar bilan ishlash. Tranzaktsiyalar bilan ishlash. TCL buyruqlari yordamida SQL so'rovlarini yozish.
PostgreSQL-da paketlar (packages) yo'q, lekin funktsiyalar (functions) va proseduralar (procedures) orqali o'zgarishlarni bajarish va ma'lumotlar bazasini boshqarish mumkin.
PostgreSQL-da tranzaktsiyalar orqali ma'lumotlar bazasida o'zgarishlarni bajarish va boshqarish mumkin. Tranzaktsiyalar, bitta yoki bir nechta SQL buyruqlarini bajarishni birlashtiradi va ma'lumotlar bazasiga bir qator amalni bajarishni ta'minlayadi.
Tranzaktsiyalar quyidagi SQL buyruqlari orqali boshlanadi:
1. `BEGIN` yoki `START TRANSACTION`: Tranzaksiyani boshlash uchun buyruq.
2. SQL buyruqlarini bajarish: Bajarilishi kerak bo'lgan barcha SQL buyruqlarini yozing.
3. `COMMIT`: Tranzaksiyani tasdiqlash va o'zgarishlarni ma'lumotlar bazasiga saqlash.
4. `ROLLBACK`: Tranzaksiyani bekor qilish va o'zgarishlarni bekor qilish.
Tranzaksiya boshlandi va COMMIT buyrug'i bajarilgandan so'ng, o'zgarishlar ma'lumotlar bazasiga saqlanadi. Agar ROLLBACK buyrug'i bajarilsa, tranzaksiya bekor qilinadi va o'zgarishlar bekor qilinadi.
Tranzaksiyalarning avtomatik ravishda boshlanishi uchun PostgreSQL sozlamalarini o'zgartirish mumkin. `autocommit` sozlamasini `off` ga o'zgartirish orqali, har bir SQL buyrug'i tranzaksiya sifatida bajariladi. Bunda `COMMIT` yoki `ROLLBACK` buyrug'ini bajarish kerak emas.
Tranzaksiyalar ma'lumotlar bazasida o'zgarishlarni amalga oshirish va boshqarish uchun yaxshi bir vosita hisoblanadi.
Commit amalini bajarilishi
-- Begin Transaction
BEGIN;
-- Savepoint
SAVEPOINT before_update;
-- Update operation
UPDATE Products SET price = price * 1.1 WHERE category = 'Electronics';
-- Savepoint
SAVEPOINT after_update;
-- Insert operation
INSERT INTO Products (name, category, price) VALUES ('New Product', 'Clothing', 25.99);
-- Commit Transaction
COMMIT;
Do'stlaringiz bilan baham: |