22 #include <drizzled/function/str/str_conv.h>
31 if (!(res=args[0]->
val_str(str)))
40 res= copy_if_not_alloced(str,res,res->length());
41 len= converter(collation.collation, (
char*) res->ptr(), res->length(),
42 (
char*) res->ptr(), res->length());
43 assert(len <= res->length());
48 uint32_t len= res->length() * multiply;
50 tmp_value.set_charset(collation.collation);
51 len= converter(collation.collation, (
char*) res->ptr(), res->length(),
52 (
char*) tmp_value.ptr(), len);
53 tmp_value.length(len);
59 void Item_func_lcase::fix_length_and_dec()
61 collation.set(args[0]->collation);
62 multiply= collation.collation->casedn_multiply;
63 converter= collation.collation->cset->casedn;
64 max_length= args[0]->max_length * multiply;
67 void Item_func_ucase::fix_length_and_dec()
69 collation.set(args[0]->collation);
70 multiply= collation.collation->caseup_multiply;
71 converter= collation.collation->cset->caseup;
72 max_length= args[0]->max_length * multiply;