summaryrefslogtreecommitdiff
path: root/sql/protocol.cc
diff options
context:
space:
mode:
authorunknown <gluh@gluh.mysql.r18.ru>2003-10-20 13:45:28 +0500
committerunknown <gluh@gluh.mysql.r18.ru>2003-10-20 13:45:28 +0500
commit4ae56c050a03ed933c3fe53500d1e63015b41374 (patch)
tree47e63db5fc732a256e07ddbbe3a8559cf084288c /sql/protocol.cc
parent45c1a753517df70f17c9dd76c859a27275f2d55d (diff)
parentb615639240b30b7eb7b453c321f714e92f7c8ede (diff)
downloadmariadb-git-4ae56c050a03ed933c3fe53500d1e63015b41374.tar.gz
Merge commit
sql/field.cc: Auto merged sql/item.cc: Auto merged sql/item.h: Auto merged sql/lex.h: Auto merged sql/protocol.cc: Auto merged sql/set_var.cc: Auto merged sql/set_var.h: Auto merged sql/sql_class.cc: Auto merged sql/sql_class.h: Auto merged sql/sql_yacc.yy: Auto merged
Diffstat (limited to 'sql/protocol.cc')
-rw-r--r--sql/protocol.cc45
1 files changed, 19 insertions, 26 deletions
diff --git a/sql/protocol.cc b/sql/protocol.cc
index 79420fb71d5..0fe759cff67 100644
--- a/sql/protocol.cc
+++ b/sql/protocol.cc
@@ -833,17 +833,12 @@ bool Protocol_simple::store(TIME *tm)
field_pos++;
#endif
char buff[40];
- uint length;
- length= my_sprintf(buff,(buff, "%04d-%02d-%02d %02d:%02d:%02d",
- (int) tm->year,
- (int) tm->month,
- (int) tm->day,
- (int) tm->hour,
- (int) tm->minute,
- (int) tm->second));
- if (tm->second_part)
- length+= my_sprintf(buff+length,(buff+length, ".%06d", (int)tm->second_part));
- return net_store_data((char*) buff, length);
+ String tmp((char*) buff,sizeof(buff),&my_charset_bin);
+ DATETIME_FORMAT *tmp_format= (&t_datetime_frm
+ (current_thd, DATETIME_FORMAT_TYPE).datetime_format);
+ make_datetime(&tmp, tm, 1, tm->second_part,
+ tmp_format->format, tmp_format->format_length, 1);
+ return net_store_data((char*) tmp.ptr(), tmp.length());
}
@@ -855,12 +850,12 @@ bool Protocol_simple::store_date(TIME *tm)
field_pos++;
#endif
char buff[40];
- uint length;
- length= my_sprintf(buff,(buff, "%04d-%02d-%02d",
- (int) tm->year,
- (int) tm->month,
- (int) tm->day));
- return net_store_data((char*) buff, length);
+ String tmp((char*) buff,sizeof(buff),&my_charset_bin);
+ DATETIME_FORMAT *tmp_format= (&t_datetime_frm
+ (current_thd, DATE_FORMAT_TYPE).datetime_format);
+ make_datetime(&tmp, tm, 1, 0,
+ tmp_format->format, tmp_format->format_length, 1);
+ return net_store_data((char*) tmp.ptr(), tmp.length());
}
@@ -878,16 +873,14 @@ bool Protocol_simple::store_time(TIME *tm)
field_pos++;
#endif
char buff[40];
- uint length;
+ String tmp((char*) buff,sizeof(buff),&my_charset_bin);
+ DATETIME_FORMAT *tmp_format= (&t_datetime_frm
+ (current_thd, TIME_FORMAT_TYPE).datetime_format);
uint day= (tm->year || tm->month) ? 0 : tm->day;
- length= my_sprintf(buff,(buff, "%s%02ld:%02d:%02d",
- tm->neg ? "-" : "",
- (long) day*24L+(long) tm->hour,
- (int) tm->minute,
- (int) tm->second));
- if (tm->second_part)
- length+= my_sprintf(buff+length,(buff+length, ".%06d", (int)tm->second_part));
- return net_store_data((char*) buff, length);
+ tm->hour= (long) day*24L+(long) tm->hour;
+ make_datetime(&tmp, tm, 0, tm->second_part,
+ tmp_format->format, tmp_format->format_length, 1);
+ return net_store_data((char*) tmp.ptr(), tmp.length());
}