postgresql
तालिका निर्माण
खोज…
प्राथमिक कुंजी के साथ तालिका निर्माण
CREATE TABLE person (
person_id BIGINT NOT NULL,
last_name VARCHAR(255) NOT NULL,
first_name VARCHAR(255),
address VARCHAR(255),
city VARCHAR(255),
PRIMARY KEY (person_id)
);
वैकल्पिक रूप से, आप PRIMARY KEY
बाधा को सीधे स्तंभ परिभाषा में रख सकते हैं:
CREATE TABLE person (
person_id BIGINT NOT NULL PRIMARY KEY,
last_name VARCHAR(255) NOT NULL,
first_name VARCHAR(255),
address VARCHAR(255),
city VARCHAR(255)
);
यह अनुशंसा की जाती है कि आप तालिका और साथ ही सभी स्तंभों के लिए निचले मामलों के नामों का उपयोग करें। यदि आप ऊपरी मामले के नाम जैसे Person
उपयोग करते हैं, तो आपको उस नाम को प्रत्येक उद्धरण में दोहरे उद्धरण ( "Person"
) में लपेटना होगा क्योंकि PostgreSQL केस तह को लागू करता है।
तालिका परिभाषा दिखाएं
डेटाबेस से जुड़ा psql
कमांड लाइन टूल खोलें जहां आपकी टेबल है। फिर निम्न कमांड टाइप करें:
\d tablename
विस्तारित जानकारी प्रकार प्राप्त करने के लिए
\d+ tablename
यदि आप तालिका का नाम भूल गए हैं, तो वर्तमान डेटाबेस में तालिकाओं और विचारों की सूची प्राप्त करने के लिए psql में बस टाइप करें।
चयन से तालिका बनाएँ
मान लीजिए कि आपके पास एक टेबल है जिसे व्यक्ति कहते हैं:
CREATE TABLE person (
person_id BIGINT NOT NULL,
last_name VARCHAR(255) NOT NULL,
first_name VARCHAR(255),
age INT NOT NULL,
PRIMARY KEY (person_id)
);
आप 30 से अधिक लोगों की एक नई तालिका बना सकते हैं:
CREATE TABLE people_over_30 AS SELECT * FROM person WHERE age > 30;
अनलॉगट टेबल बनाएं
आप असूचीबद्ध तालिकाओं को बना सकते हैं ताकि आप तालिकाओं को काफी तेज बना सकें। write-ahead
लॉग write-ahead
अनप्लग टेबल स्कीप जिसका अर्थ है कि यह क्रैश-सुरक्षित नहीं है और दोहराने में असमर्थ है।
CREATE UNLOGGED TABLE person (
person_id BIGINT NOT NULL PRIMARY KEY,
last_name VARCHAR(255) NOT NULL,
first_name VARCHAR(255),
address VARCHAR(255),
city VARCHAR(255)
);
एक तालिका बनाएं जो अन्य तालिका को संदर्भित करती है।
इस उदाहरण में, उपयोगकर्ता तालिका में एक स्तंभ होगा जो एजेंसी तालिका का संदर्भ देता है।
CREATE TABLE agencies ( -- first create the agency table
id SERIAL PRIMARY KEY,
name TEXT NOT NULL
)
CREATE TABLE users (
id SERIAL PRIMARY KEY,
agency_id NOT NULL INTEGER REFERENCES agencies(id) DEFERRABLE INITIALLY DEFERRED -- this is going to references your agency table.
)