| 1020 | |
| 1021 | |
| 1022 | const char *Item_ident::full_name() const |
| 1023 | { |
| 1024 | char *tmp; |
| 1025 | if (!table_name || !field_name) |
| 1026 | return field_name ? field_name : item_name.is_set() ? item_name.ptr() : "tmp_field"; |
| 1027 | if (db_name && db_name[0]) |
| 1028 | { |
| 1029 | tmp=(char*) sql_alloc((uint) strlen(db_name)+(uint) strlen(table_name)+ |
| 1030 | (uint) strlen(field_name)+3); |
| 1031 | strxmov(tmp,db_name,".",table_name,".",field_name,NullS); |
| 1032 | } |
| 1033 | else |
| 1034 | { |
| 1035 | if (table_name[0]) |
| 1036 | { |
| 1037 | tmp= (char*) sql_alloc((uint) strlen(table_name) + |
| 1038 | (uint) strlen(field_name) + 2); |
| 1039 | strxmov(tmp, table_name, ".", field_name, NullS); |
| 1040 | } |
| 1041 | else |
| 1042 | tmp= (char*) field_name; |
| 1043 | } |
| 1044 | return tmp; |
| 1045 | } |
| 1046 | |
| 1047 | void Item_ident::print(String *str, enum_query_type query_type) |
| 1048 | { |
no test coverage detected