यदि आप C बैकग्राउंड से आते हैं, तो PostgreSQL में एक कैरेक्टर स्ट्रिंग टाइप नहीं है वर्णों की एक सरणी।
प्रत्येक प्रकार के लिए foo
PostgreSQL में, एक संगत सरणी प्रकार है foo[]
जो foo
. प्रकार के मानों की एक सरणी को दर्शाता है . सरणी प्रकारों का उपयोग केवल तभी करें जब आप उन्हें डेटाबेस के अंदर बहुत अधिक हेरफेर करने की योजना नहीं बनाते हैं; यदि आप करते हैं, तो आमतौर पर सरणी को एक अलग तालिका में सामान्य करना बेहतर होता है।
सरणी प्रकारों को छोड़कर, विभिन्न वर्ण प्रकार हैं:
-
"char"
(दोहरे उद्धरण आवश्यक हैं):एक एकल वर्ण। ज्यादातर कैटलॉग टेबल में उपयोग किया जाता है। इस प्रकार का उपयोग तब तक न करें जब तक आप यह नहीं जानते कि आप क्या कर रहे हैं। -
character(n)
याchar(n)
:निश्चित लंबाई वर्ण स्ट्रिंग। कोई फर्क नहीं पड़ता कि आप वहां क्या स्टोर करते हैं, यह हमेशा दाईं ओर रिक्त स्थान से भरा होगा। व्यवहार, जैसा कि SQL मानक द्वारा निर्धारित किया जाता है, कभी-कभी आश्चर्यजनक होता है, इसलिए आप शायद ही कभी इस प्रकार को चाहते हैं। -
text
:मनमाना-लंबाई वर्ण स्ट्रिंग। यह वह प्रकार है जिसे आप वर्ण स्ट्रिंग के लिए चाहते हैं जब तक कि आप डेटाबेस को लंबाई सीमा लागू नहीं करना चाहते। -
character varying(n)
याvarchar(n)
:यहtext
. जैसा ही है एक अतिरिक्त लंबाई सीमा के साथ।
एक उदाहरण के साथ इसे पूर्ण करने के लिए:
CREATE TABLE strtest(
id serial PRIMARY KEY,
sc "char",
c character(10),
vc character varying(10),
vca character varying(10)[]
);
INSERT INTO strtest (sc, c, vc, vca)
VALUES (
'x',
'short',
'short',
ARRAY['short1', 'short2', 'short3']
);
SELECT sc, c, vc, vca[2] FROM strtest;
sc | c | vc | vca
----+------------+-------+--------
x | short | short | short2
(1 row)