चरित्र की आकार सीमा Postgresql बदलती है


24

Postgresql में विभिन्न डेटा प्रकारों की आकार सीमा क्या है? मैं देखा कहीं उस के लिए character varying(n), varchar(n) n10485760. के लिए 1 के बीच होना चाहिए यह सच है?

के लिए मान्य आकार क्या हैं character(n), char(n)और text?

जवाबों:


27

Postgres में सीमित वर्ण प्रकार (जैसे varchar (n)) का अधिकतम आकार 10485760 है। आप इसे इस तरह से देख सकते हैं:

create table test(id serial primary key, str varchar(10485761));

ERROR:  length for type varchar cannot exceed 10485760

सीमा को स्रोत कोड (htup_details.h) के निम्नलिखित टुकड़े में परिभाषित किया गया है, हालांकि आधिकारिक दस्तावेज में स्पष्ट रूप से उल्लेख नहीं किया गया है:

/*
 * MaxAttrSize is a somewhat arbitrary upper limit on the declared size of
 * data fields of char(n) and similar types.  It need not have anything
 * directly to do with the *actual* upper limit of varlena values, which
 * is currently 1Gb (see TOAST structures in postgres.h).  I've set it
 * at 10Mb which seems like a reasonable number --- tgl 8/6/00.
 */
#define MaxAttrSize     (10 * 1024 * 1024)

चर असीमित लंबाई प्रकार (पाठ, varchar) के लिए वर्णों की अधिकतम संख्या अपरिभाषित है। सभी स्ट्रिंग प्रकारों के लिए बाइट्स में आकार की एक सीमा होती है :

किसी भी मामले में, सबसे लंबे समय तक संभव चरित्र स्ट्रिंग को संग्रहीत किया जा सकता है जो लगभग 1 जीबी है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.