צור טבלה בסכימה Postgres

Zwr Tblh Bskymh Postgres



PostgreSQL היא אחת ממערכות מסדי הנתונים הפופולריות ביותר ביחס לאובייקטים. זוהי תוכנה חינמית וקוד פתוח שמרחיבה את שפת SQL עם תכונות נוספות כדי להתמודד עם עומסי העבודה המורכבים של הנתונים. זה יכול לעבוד עם סוגי נתונים שונים, אמין ומאובטח. למידע נוסף על התכונות של PostgreSQL.

במדריך זה, נלמד עוד על יצירת טבלאות בסכימה ב-PostgreSQL.







סכימות ב-PostgreSQL

מסד נתונים PostgreSQL עשוי להכיל סכימה אחת או יותר בשם, כל סכימה מכילה טבלאות.



ניתן להקצות את אותו שם אובייקט על פני מספר סכימות ללא התנגשות. לדוגמה, הסכימה/עץ הטבלה הבאים חוקיים:



  • schema_a
    • שולחן 1
    • שולחן 2
  • schema_b
    • שולחן 1
    • שולחן 2

אתה יכול לחשוב על סכמות כמו ספריות ברמת מערכת ההפעלה. ההבדל הוא שלא יכולות להיות סכמות מקוננות. למידע נוסף ומעמיק על סכימה על תיעוד PostgreSQL .





יכולות להיות מספר סיבות ליישם את הסכמות:

  • מספר משתמשים המשתמשים באותו מסד נתונים מבלי להתנגש זה עם זה.
  • ארגון וניהול טובים יותר של מסדי נתונים לקבוצות לוגיות.
  • אפליקציות של צד שלישי יכולות ליצור את הסכימה הייחודית שלהן מבלי להתנגש בסכימות הקיימות או באובייקטים אחרים.

טבלאות ב-PostgreSQL

כל מסד נתונים יחסי מורכב ממספר טבלאות קשורות, שכל אחת מהן מורכבת משורות ועמודות. PostgreSQL מגיע עם מספר טבלאות מובנות המכילות מידע מערכת שונה. עם זאת, אנו יכולים גם ליצור טבלאות חדשות תחת מסדי נתונים וסכימות המוגדרות על ידי המשתמש.



דרישות מוקדמות:

כדי לבצע את השלבים המוצגים במדריך זה, תזדקק לרכיבים הבאים:

  • מערכת לינוקס מוגדרת כהלכה. למידע נוסף על התקנת אובונטו ב-VirtualBox .
  • התקנה נכונה של PostgreSQL. לבדוק התקנת PostgreSQL על אובונטו .
  • גישה לא משתמש PostgreSQL עם הרשאת USAGE למסד נתונים.

לצורך מדריך זה, נשתמש postgres כדי לבצע את כל הפעולות ב-PostgreSQL.

יצירת טבלאות בסכימה

יצירת מאגר הדגמות

כפי שהוזכר קודם לכן, סכימות קיימות תחת מסד נתונים. למטרות הדגמה, אנו יוצרים מסד נתונים דמה, תוך הימנעות מהפרעה לכל מסד נתונים קיים.

גש למעטפת PostgreSQL כ postgres :

$ sudo -i -u postgres psql

צור מסד נתונים חדש demo_db:

$ CREATE DATABASE demo_db;

ודא אם מסד הנתונים נוצר בהצלחה:

$ \l

לבסוף, התחבר למסד הנתונים החדש שנוצר:

$ \connect demo_db;

הסכימה הציבורית

כל מסד נתונים חדש ב-PostgreSQL מגיע עם סכימת ברירת מחדל - פּוּמְבֵּי . אם תנסה ליצור אובייקט מבלי לציין את שם הסכימה, הסכימה הציבורית נבחרה כברירת מחדל.

הפקודה הבאה מדפיסה את כל הסכימה הזמינה במסד הנתונים של PostgreSQL:

$ \dn

לחלופין, אנו יכולים להשתמש גם בשאילתת SQL הבאה:

$ SELECT * FROM pg_catalog.pg_namespace;

יצירת סכימה חדשה

כדי ליצור סכימה חדשה תחת מסד נתונים ספציפי, מבנה הפקודה הוא כדלקמן:

$ CREATE SCHEMA <שם_סכימה>;

בעקבות הכלל, בואו ניצור סכימה חדשה demo_schema:

$ CREATE SCHEMA demo_schema;

בדוק את רשימת הסכימה לאימות:

$ \dn

יצירת טבלה בסכימה

כעת, לאחר שנוצרה לנו סכימת היעד, נוכל לאכלס אותה בטבלאות.

התחביר ליצירת טבלה הוא כדלקמן:

צור טבלה <סכימה>.<שם_טבלה> (

...
)

כאן:

  • סכֵימָה : שדה זה מציין את שם הסכימה שבה נוצרת הטבלה. אם לא מסופק ערך, הטבלה נוצרת תחת פּוּמְבֵּי סכֵימָה.

להדגמה, אנו יוצרים טבלה פשוטה:

CREATE TABLE demo_schema.demo_table (

NAME CHAR(64),

ID INT NOT NULL

);

כאן:

  • השדה שֵׁם מצוין לאחסון מחרוזת של 64 תווים.
  • השדה תְעוּדַת זֶהוּת מכיל את ערכי המספרים השלמים. התנאי ' לא ריק ' מציין זאת תְעוּדַת זֶהוּת לא יכול להיות ריק או ריק.

אנו יכולים לאמת את קיומה של הטבלה באמצעות השאילתה הבאה:

$ SELECT * FROM demo_schema.demo_table;

הכנסת נתונים לטבלה

עם הטבלה במקום, אנו יכולים כעת להוסיף כמה ערכים:

INSERT INTO demo_schema.demo_table (שם, מזהה)

ערכים

('PQR', 45),

('IJK', 99)

;

בדוק את תוכן הטבלה:

$ SELECT * FROM demo_schema.demo_table;

ניהול סכימה

הרשאות סכימה

בעזרת הרשאת סכימה, אנו יכולים לנהל איזה תפקיד יכול לבצע איזו פעולה בסכמה ספציפית. מתוך כל ההרשאות האפשריות, סכימות תומכות רק צור ושימוש.

כדי לעדכן את הרשאת הסכימה עבור תפקיד מסוים, מבנה הפקודה הוא כדלקמן:

$ GRANT ב-SCHEMA ל-;

כדי לבטל את הרשאת הסכימה עבור תפקיד מסוים, מבנה הפקודה הוא כדלקמן:

$ REVOKE ON SCHEMA TO ;

אמת את השינוי באמצעות הפקודה הבאה:

$ \dn+

אלטר סכימה נכסים

בעזרת ה ALTER SCHEMA הצהרה, אנו יכולים לשנות את המאפיינים השונים של סכימה. לדוגמה: בעלות, שם סכימה וכו'.

כדי לשנות את שם הסכימה, השתמש בשאילתה הבאה:

$ ALTER SCHEMA <שם_סכימה> שנה את שם אל <שם_סכימה_חדש>;

כדי לשנות את הבעלות על סכימה, השתמש בשאילתה הבאה:

$ ALTER SCHEMA הבעלים ל-;

שים לב שכדי לשנות את הבעלות, המשתמש הנוכחי חייב להיות בעל לִיצוֹר הרשאה לסכימה.

מחיקת סכימה

אם אין עוד צורך בסכימה, נוכל למחוק אותה באמצעות ה- יְרִידָה שאילתא:

$ DROP SCHEMA

אם הסכימה מכילה אובייקט כלשהו, ​​אנו זקוקים ל- אֶשֶׁד מַתקֵן:

$ DROP SCHEMA CASCADE;

ניהול שולחן

הרשאות טבלה

כמו סכימה, כל טבלה מגיעה גם עם ניהול הרשאות, המגדיר איזו פעולה תפקיד יכול לבצע בטבלה.

כדי לבדוק את ההרשאות של טבלה, השתמש בפקודה הבאה ב-psql:

$ \dp <שם_טבלה>

שנה מאפייני טבלה

בעזרת ה שינוי טבלה הצהרה, אנו יכולים לשנות את ההיבטים הרבים של טבלה שכבר קיימת.

לדוגמה, כדי לשחרר עמודה, השאילתה נראית כך:

$ ALTER TABLE DROP COLUMN <עמודה>;

כדי להוסיף עמודה חדשה, נוכל להשתמש בשאילתה הבאה:

$ ALTER TABLE
הוסף עמודה <עמודה> <סוג_נתונים>;

אנו יכולים גם להגדיר את הדחיסה עבור עמודה ספציפית:

$ ALTER COLUMN SET COMPRESSION ;

מחיקת טבלה

כדי למחוק טבלה מסכימה, נוכל להשתמש ב- זרוק שולחן שאילתא:

$ DROP TABLE
;

שימו לב שבניגוד לסכמות, ה זרוק שולחן השאילתה לא תיצור שגיאה בין אם הטבלה ריקה או לא.

סיכום

במדריך זה, הדגמנו כיצד ליצור את הטבלאות בסכימה ב-PostgreSQL. יצרנו סכימת דמה בתוך מסד נתונים דמה ויצרנו טבלה בתוך הסכימה. מדריך זה גם הציג כיצד לנהל את המאפיינים השונים של סכימות וטבלאות.

לשלמות נתונים טובה יותר, אתה יכול להגדיר את א שכפול PostgreSQL לוגי . כדי לשמור על תקינות מסד הנתונים של PostgreSQL, אתה יכול להגדיר את ואקום אוטומטי כדי לנקות את הטפלים המתים שנותרו על ידי הרשומות שנמחקו.

למדריכי PostgreSQL נוספים, עיין ב- תת קטגוריית PostgreSQL .