के साथ mySQL में एक बीएलओबी के रूप में वर्ड दस्तावेज़ को कैसे संग्रहीत करें एक क्लाइंट चाहता है कि वर्ड दस्तावेज़ मेरे mySQL डेटाबेस में सहेजे गए हों, इसके बावजूद मुझे बहस हो रही है। दस्तावेजों को विशेष रूप से बड़ा नहीं होना चाहिए, प्रत्येक 1 एमबी से अधिक नहीं। मैं सीएफ व्यवस्थापक में ब्लॉब सक्षम है और यहाँ मेरी एसक्यूएलकोल्डफ्यूजन
<cfset newMessageID=1569>
<cfset fileName="c:\temp\0.doc">
<cffile action = "readbinary"
file = "#fileName#"
variable = "fileData">
<cfquery name="addFile" datasource='#application.dsn#'>
INSERT into files (fileID, fileData)
Values (#newMessageID#, <cfqueryparam value="#fileData#" cfsqltype="CF_SQL_BLOB">)
</cfquery>
मैं "डेटा काट-छांट: डेटा बहुत लंबा स्तंभ 'filedata' पंक्ति 1 पर के लिए" है 1,000,000
को ब्लॉब बफर निर्धारित किया है त्रुटि। फाइल टेबल में दायरता फ़ील्ड निश्चित रूप से ब्लॉब करने के लिए सेट है। मैं क्या गलत कर रहा हूं?
सीएफ 9.01, MySQL 5.4
मैं गलत क्या कर रहा हूँ
आप सोचो 'toBase64()' में '# fileData #' को लपेटने की आवश्यकता है - यहां दस्तावेज़ देखें: http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=Tags_f_08.html 'बाइनरीएन्कोड' का उपयोग पढ़ें) 'इसे वापस बदलने के लिए: http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=functions_a-b_31.html#4989676 – orangepips
मैंने पहले से ही कोशिश की है। अगर मैं बस बेस 64 में परिवर्तित करता हूं तो यह मेरे cfqueryparam के साथ एक कास्ट त्रुटि फेंकता है। अगर मैं cfqueryparam के बिना चलाता हूं तो मैं "कॉलम के लिए बहुत लंबा डेटा" दायरता पर वापस आ जाता हूं " – Saul
@ साउल - किस तरह का 'ब्लॉब'? विभिन्न प्रकार के लंबे, मध्यम, ... http://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html और http://dev.mysql.com/doc/refman/5.0 हैं /en/blob.html – Leigh