प्री-हिस्ट्री: मुझे जेडीबीसीएक्सप्शन रिपेटर data exception: string data, right truncation
इकाइयों के अपडेट पर अपवाद मिलता है।service.xml या सेवा बिल्डर का उपयोग कर स्ट्रिंग कॉलम का आकार कैसे सेट करें?
मुझे पता चला है कि इसका मतलब है, निर्दिष्ट varchar
के लिए डेटा बहुत बड़ा है।
service.xml
में स्तंभ की तरह निर्दिष्ट किया जाता है:
<column name="message" type="String"/>
मैं Liferay के स्रोत कोड में ServiceBuilder
के लिए इस टुकड़ा पाया है:
else if (colType.equals("String")) {
Map<String, String> hints = ModelHintsUtil.getHints(
_packagePath + ".model." + entity.getName(), colName);
int maxLength = 75;
if (hints != null) {
maxLength = GetterUtil.getInteger(
hints.get("max-length"), maxLength);
}
if (col.isLocalized()) {
maxLength = 4000;
}
if (maxLength < 4000) {
sb.append("VARCHAR(" + maxLength + ")");
}
else if (maxLength == 4000) {
sb.append("STRING");
}
else if (maxLength > 4000) {
sb.append("TEXT");
}
}
अब मेरे सवाल का, मैं कैसे max-length
परिभाषित कर सकते हैं है मेरे कॉलम के लिए?