आपका कार्यक्रम सही है। अगर फ़ाइल का आकार छोटा है तो यह ठीक काम करेगा। अगर आप BLOB
. का इस्तेमाल कर रहे हैं डेटाटाइप उस बाइनरी डेटा को स्टोर करने के लिए, इसे LONGBLOB
में बदलें . क्योंकि अगर आपने किसी फाइल को BLOB
. में सेव करने की कोशिश की है डेटा फ़ील्ड, और यदि फ़ाइल का आकार बीएलओबी डेटाटाइप के अधिकतम अनुमत आकार से अधिक है तो सामग्री को छोटा कर दिया जाएगा और आप फ़ाइल की कुछ सामग्री को खो देंगे (फ़ाइल आकार पर निर्भर करता है)। भले ही आप LONGBLOB
. का उपयोग करते हों डेटाटाइप कुछ चीजें हैं जिन्हें आपको जांचना चाहिए। मैं समझाता हूँ
mysql वेबसाइट में हम LONGBLOB
. का अधिकतम फ़ाइल आकार देख सकते हैं 4GB है। लेकिन यह कई बातों पर निर्भर करता है। बड़ी फाइल को स्टोर करने के लिए आपको कुछ चीजों की जांच करनी होती है। पहली बात my.ini
में है फ़ाइल में, max_allowed_packet
. नामक एक संपत्ति है , यह सबसे बड़ा संभावित पैकेट निर्दिष्ट करता है जिसे एक mysql क्लाइंट या सर्वर से या उससे प्रेषित किया जा सकता है। आपको max_allowed_packet
सेट करना चाहिए एक उच्च मूल्य के लिए संपत्ति। और mysql को पुनरारंभ करें। कुछ फ़ाइल सिस्टम 4GB फ़ाइलों की अनुमति नहीं देंगे. उस स्थिति में आप इतनी बड़ी फ़ाइल लोड नहीं कर सकते।
मुझे लगता है कि आपके मामले में सेटिंग max_allowed_packet
. है उच्च मूल्य की संपत्ति समस्या का समाधान करेगी।
मुझे लगता है कि आप निम्न तालिका निर्माण स्क्रिप्ट का उपयोग कर सकते हैं
CREATE TABLE `image` (
`id` INT(10) NULL DEFAULT NULL,
`fs` LONGBLOB NULL,
`filen` VARCHAR(50) NULL DEFAULT NULL
)