تعریف Schema در پایگاه داده اوراکل

زهیر صفری 1403/06/05 0 56
لینک کوتاه https://zoheirsoftware.com/z/cf5387e |
تعریف Schema در پایگاه داده اوراکل,اجزای اصلی اسکیما  در پایگاه داده اوراکل,مدیریت اسکیما در پایگاه داده اوراکل

تعریف Schema در پایگاه های داده اوراکل 

در پایگاه‌های داده اوراکل، Schema به معنای یک ساختار منطقی است که مجموعه‌ای از اشیاء پایگاه داده را تحت مالکیت یک کاربر خاص سازماندهی می‌کند.

این اشیاء شامل جداول، نماها (Views)، ایندکس‌ها (Indexes)، توابع (Functions) و رویه‌های ذخیره‌شده (Stored Procedures) هستند.

به عبارت دیگر، Schema به‌عنوان یک فضای نام برای اشیاء پایگاه داده عمل می‌کند و به تفکیک داده‌ها و اشیاء مرتبط کمک می‌کند.

هر کاربر پایگاه داده اوراکل به‌طور پیش‌فرض یک Schema به نام خود دارد که در آن می‌تواند داده‌ها و اشیاء مورد نیاز خود را مدیریت کند.

Schema در اوراکل نقش کلیدی در مدیریت امنیت و دسترسی به داده‌ها ایفا می‌کند.

مدیران پایگاه داده می‌توانند با استفاده از Schema‌ها، دسترسی‌های مختلف به اشیاء پایگاه داده را تنظیم کرده و امنیت داده‌ها را بهبود بخشند.

به‌طور کلی، Schema به سازماندهی منطقی پایگاه داده کمک می‌کند و اطمینان حاصل می‌کند که داده‌ها به‌طور مؤثر و امن مدیریت می‌شوند.

در اوراکل، هر پایگاه داده شامل مجموعه‌ای از اسکیماها است و هر اسکیما متعلق به یک کاربر خاص است.

به عبارت دیگر، اسکیما نمایانگر محیطی است که در آن اشیاء پایگاه داده به صورت منظم و سازمان‌یافته قرار دارند.

این سازمان‌دهی به کاربران امکان می‌دهد که به طور مؤثر داده‌ها را ذخیره، جستجو، و مدیریت کنند.

در اوراکل، یک کاربر می‌تواند تنها یک اسکیما داشته باشد، و نام اسکیما معمولاً با نام کاربر یکی است.

 

 

تعریف Schema در پایگاه های داده اوراکل 

 

 

اجزای اصلی اسکیما  در پایگاه داده اوراکل

  • جداول (Tables)

    جداول یکی از اصلی‌ترین اجزای اسکیما هستند و داده‌ها را در قالب ردیف‌ها و ستون‌ها سازمان‌دهی می‌کنند.
    هر جدول در اوراکل شامل تعدادی ستون است که نوع داده و ویژگی‌های آن‌ها را مشخص می‌کند.
    جداول می‌توانند شامل داده‌های مختلفی از جمله متنی، عددی، تاریخی و غیره باشند.

مثال:

CREATE TABLE employees (
    employee_id NUMBER PRIMARY KEY,
    first_name VARCHAR2(50),
    last_name VARCHAR2(50),
    hire_date DATE
);
  •  نماها (Views)

    نماها نمایی مجازی از داده‌ها هستند که به‌وسیله پرس‌وجوهای SQL ایجاد می‌شوند.
    نماها به کاربران اجازه می‌دهند که داده‌های مورد نظر را به‌صورت یک جدول مجازی مشاهده کنند، بدون اینکه داده‌ها را به‌طور واقعی در پایگاه داده تغییر دهند.

مثال:

CREATE VIEW employee_summary AS
SELECT employee_id, first_name, last_name
FROM employees
WHERE hire_date > SYSDATE - INTERVAL '1' YEAR;

 

  •  ایندکس‌ها (Indexes)

    ایندکس‌ها ساختارهایی هستند که برای بهبود سرعت جستجو و بازیابی داده‌ها استفاده می‌شوند.
    آن‌ها به سرعت دسترسی به رکوردهای خاص را از طریق ستون‌های ایندکس‌شده فراهم می‌کنند.

مثال:

CREATE INDEX idx_employee_name ON employees (last_name);
  •  کلیدها (Keys)

    کلیدها برای شناسایی یکتا و مدیریت روابط بین جداول استفاده می‌شوند:
  1. کلید اصلی (Primary Key)

    برای شناسایی یکتای هر رکورد در جدول.
  2. کلید خارجی (Foreign Key)

    برای تعریف روابط بین جداول مختلف و حفظ یکپارچگی داده‌ها.

    مثال:
ALTER TABLE employees
ADD CONSTRAINT pk_employee PRIMARY KEY (employee_id);

 

  •  توالی‌ها (Sequences)

    توالی‌ها برای تولید مقادیر یکتا و به ترتیب، معمولاً برای ستون‌های کلید اصلی استفاده می‌شوند.
    این مقادیر به‌طور خودکار افزایش می‌یابند و به کاربران این امکان را می‌دهند که بدون نیاز به مدیریت دستی، مقادیر یکتا تولید کنند.

مثال:

CREATE SEQUENCE employee_seq
START WITH 1
INCREMENT BY 1;
  • توابع و رویه‌ها (Functions and Procedures)

    توابع و رویه‌ها بلوک‌های کد PL/SQL هستند که برای انجام عملیات خاص در پایگاه داده استفاده می‌شوند.
    توابع معمولاً مقداری را باز می‌گردانند، در حالی که رویه‌ها برای انجام عملیات بدون بازگشت مقدار استفاده می‌شوند.

مثال:

CREATE OR REPLACE FUNCTION get_employee_name (p_employee_id NUMBER)
RETURN VARCHAR2
IS
    v_name VARCHAR2(100);
BEGIN
    SELECT first_name || ' ' || last_name
    INTO v_name
    FROM employees
    WHERE employee_id = p_employee_id;
    RETURN v_name;
END;
  •  پکیج‌ها (Packages)

    پکیج‌ها مجموعه‌ای از توابع، رویه‌ها، و متغیرهای PL/SQL هستند که به‌صورت گروهی مدیریت می‌شوند.
    آن‌ها به سازمان‌دهی و نگهداری کدهای PL/SQL کمک می‌کنند و امکان استفاده مجدد از کد را فراهم می‌آورند.

مثال:

CREATE OR REPLACE PACKAGE employee_pkg AS
    PROCEDURE add_employee (p_first_name VARCHAR2, p_last_name VARCHAR2);
    FUNCTION get_employee_count RETURN NUMBER;
END employee_pkg;
  • تریگرها (Triggers)

    تریگرها بلوک‌های کدی هستند که به‌طور خودکار در پاسخ به رویدادهای خاص (مثل درج، به‌روزرسانی، یا حذف رکوردها) اجرا می‌شوند.
    آن‌ها می‌توانند برای اعتبارسنجی داده‌ها، ثبت تاریخچه تغییرات و اجرای کدهای دیگر استفاده شوند.

مثال:

CREATE OR REPLACE TRIGGER trg_employee_audit
AFTER INSERT ON employees
FOR EACH ROW
BEGIN
    INSERT INTO employee_audit (employee_id, action, action_date)
    VALUES (:NEW.employee_id, 'INSERT', SYSDATE);
END;

 

 

اجزای اصلی اسکیما در پایگاه داده اوراکل

 

مدیریت اسکیما در پایگاه داده اوراکل

  • ایجاد اسکیما

    برای ایجاد یک اسکیما در اوراکل، باید یک کاربر جدید با دستور CREATE USER ایجاد کنید و به آن کاربر، دسترسی‌ها و مجوزهای لازم را اعطا کنید.

مثال:

CREATE USER hr IDENTIFIED BY hr_password;
GRANT CONNECT, RESOURCE TO hr;

 

  • مدیریت دسترسی‌ها

    دسترسی به اسکیماها از طریق دستورات SQL مانند GRANT و REVOKE مدیریت می‌شود.
    برای اعطای دسترسی به یک کاربر به اشیاء موجود در یک اسکیما، می‌توانید از دستور GRANT استفاده کنید.

مثال:

GRANT SELECT, INSERT ON hr.employees TO some_user;

 

  • مدیریت اشیاء اسکیما

    برای ایجاد، تغییر و حذف اشیاء در اسکیما، از دستورات SQL مانند CREATE, ALTER, و DROP استفاده می‌شود.

مثال:

-- ایجاد یک جدول
CREATE TABLE hr.departments (
    department_id NUMBER PRIMARY KEY,
    department_name VARCHAR2(50)
);

 

  • تغییر جدول

    ALTER TABLE hr.departments ADD location VARCHAR2(100);
    
  •  حذف جدول

    DROP TABLE hr.departments;
    

در نهایت، اسکیماها در اوراکل به‌عنوان ساختاری اساسی برای سازمان‌دهی و مدیریت داده‌ها عمل می‌کنند.

آن‌ها با فراهم آوردن ساختار مناسب برای داده‌ها و روابط بین آن‌ها، امکان مدیریت مؤثر پایگاه‌های داده را فراهم می‌آورند.

با درک صحیح از اجزای اسکیما و نحوه استفاده از آن‌ها، می‌توانید پایگاه داده‌های پیچیده و مؤثری ایجاد و مدیریت کنید.

 

CREATE OR REPLACE PACKAGE employee_pkg AS
    PROCEDURE add_employee (p_first_name VARCHAR2, p_last_name VARCHAR2);
    FUNCTION get_employee_count RETURN NUMBER;
END employee_pkg;

 

 

مدیریت اسکیما در پایگاه داده اوراکل

دوره های مرتبط
پکیج آموزش اوراکل,دوره آموزش پروژه محور پایگاه داده اوراکل,آموزش پایگاه داده اوراکل Oracle ,پایگاه داده اوراکل

اموزش پایگاه داده اوراکل Oracle

در دوره آموزش پایگاه داده اوراکل اصول ، مفاهیم ، طراحی ، پیاده‌سازی و مدیریت پایگاه داده را به صورت جامع آموزش می دهیم .

700,000 تومان

2.1k بازدید
مشاهده

ارسال دیدگاه

برای ارسال نظر لطفا ورود یا ثبت نام کنید.