mirror of
https://github.com/MariaDB/server.git
synced 2025-01-20 14:02:32 +01:00
Merge bk-internal:/home/bk/mysql-5.0-maint
into neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
This commit is contained in:
commit
d3b4712bad
8 changed files with 78 additions and 23 deletions
|
@ -51,7 +51,8 @@ char *batch_readline(LINE_BUFFER *line_buff)
|
|||
if (!(pos=intern_read_line(line_buff,&out_length)))
|
||||
return 0;
|
||||
if (out_length && pos[out_length-1] == '\n')
|
||||
out_length--; /* Remove '\n' */
|
||||
if (--out_length && pos[out_length-1] == '\r') /* Remove '\n' */
|
||||
out_length--; /* Remove '\r' */
|
||||
line_buff->read_length=out_length;
|
||||
pos[out_length]=0;
|
||||
return pos;
|
||||
|
|
|
@ -186,12 +186,12 @@ date format datetime
|
|||
2003-01-02 02:11:12.12345AM %Y-%m-%d %h:%i:%S.%f %p 2003-01-02 02:11:12.123450
|
||||
2003-01-02 12:11:12.12345 am %Y-%m-%d %h:%i:%S.%f%p 2003-01-02 00:11:12.123450
|
||||
2003-01-02 11:11:12Pm %Y-%m-%d %h:%i:%S%p 2003-01-02 23:11:12
|
||||
10:20:10 %H:%i:%s 0000-00-00 10:20:10
|
||||
10:20:10 %h:%i:%s.%f 0000-00-00 10:20:10
|
||||
10:20:10 %T 0000-00-00 10:20:10
|
||||
10:20:10AM %h:%i:%s%p 0000-00-00 10:20:10
|
||||
10:20:10AM %r 0000-00-00 10:20:10
|
||||
10:20:10.44AM %h:%i:%s.%f%p 0000-00-00 10:20:10.440000
|
||||
10:20:10 %H:%i:%s 0000-00-00 00:00:00
|
||||
10:20:10 %h:%i:%s.%f 0000-00-00 00:00:00
|
||||
10:20:10 %T 0000-00-00 00:00:00
|
||||
10:20:10AM %h:%i:%s%p 0000-00-00 00:00:00
|
||||
10:20:10AM %r 0000-00-00 00:00:00
|
||||
10:20:10.44AM %h:%i:%s.%f%p 0000-00-00 00:00:00
|
||||
15-01-2001 12:59:58 %d-%m-%Y %H:%i:%S 2001-01-15 12:59:58
|
||||
15 September 2001 %d %M %Y 2001-09-15 00:00:00
|
||||
15 SEPTEMB 2001 %d %M %Y 2001-09-15 00:00:00
|
||||
|
@ -208,6 +208,13 @@ Tuesday 52 2001 %W %V %X 2002-01-01 00:00:00
|
|||
15-01-2001 %d-%m-%Y %H:%i:%S 2001-01-15 00:00:00
|
||||
15-01-20 %d-%m-%y 2020-01-15 00:00:00
|
||||
15-2001-1 %d-%Y-%c 2001-01-15 00:00:00
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect datetime value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect datetime value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect datetime value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect datetime value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect datetime value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect datetime value: '0000-00-00 10:20:10.440000'
|
||||
select date,format,DATE(str_to_date(date, format)) as date2 from t1;
|
||||
date format date2
|
||||
2003-01-02 10:11:12 %Y-%m-%d %H:%i:%S 2003-01-02
|
||||
|
@ -248,12 +255,12 @@ date format time
|
|||
2003-01-02 02:11:12.12345AM %Y-%m-%d %h:%i:%S.%f %p 02:11:12.123450
|
||||
2003-01-02 12:11:12.12345 am %Y-%m-%d %h:%i:%S.%f%p 00:11:12.123450
|
||||
2003-01-02 11:11:12Pm %Y-%m-%d %h:%i:%S%p 23:11:12
|
||||
10:20:10 %H:%i:%s 10:20:10
|
||||
10:20:10 %h:%i:%s.%f 10:20:10
|
||||
10:20:10 %T 10:20:10
|
||||
10:20:10AM %h:%i:%s%p 10:20:10
|
||||
10:20:10AM %r 10:20:10
|
||||
10:20:10.44AM %h:%i:%s.%f%p 10:20:10.440000
|
||||
10:20:10 %H:%i:%s NULL
|
||||
10:20:10 %h:%i:%s.%f NULL
|
||||
10:20:10 %T NULL
|
||||
10:20:10AM %h:%i:%s%p NULL
|
||||
10:20:10AM %r NULL
|
||||
10:20:10.44AM %h:%i:%s.%f%p NULL
|
||||
15-01-2001 12:59:58 %d-%m-%Y %H:%i:%S 12:59:58
|
||||
15 September 2001 %d %M %Y 00:00:00
|
||||
15 SEPTEMB 2001 %d %M %Y 00:00:00
|
||||
|
@ -270,6 +277,13 @@ Tuesday 52 2001 %W %V %X 00:00:00
|
|||
15-01-2001 %d-%m-%Y %H:%i:%S 00:00:00
|
||||
15-01-20 %d-%m-%y 00:00:00
|
||||
15-2001-1 %d-%Y-%c 00:00:00
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect time value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect time value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect time value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect time value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect time value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect time value: '0000-00-00 10:20:10.440000'
|
||||
select date,format,concat(TIME(str_to_date(date, format))) as time2 from t1;
|
||||
date format time2
|
||||
2003-01-02 10:11:12 %Y-%m-%d %H:%i:%S 10:11:12
|
||||
|
@ -279,12 +293,12 @@ date format time2
|
|||
2003-01-02 02:11:12.12345AM %Y-%m-%d %h:%i:%S.%f %p 02:11:12.123450
|
||||
2003-01-02 12:11:12.12345 am %Y-%m-%d %h:%i:%S.%f%p 00:11:12.123450
|
||||
2003-01-02 11:11:12Pm %Y-%m-%d %h:%i:%S%p 23:11:12
|
||||
10:20:10 %H:%i:%s 10:20:10
|
||||
10:20:10 %h:%i:%s.%f 10:20:10
|
||||
10:20:10 %T 10:20:10
|
||||
10:20:10AM %h:%i:%s%p 10:20:10
|
||||
10:20:10AM %r 10:20:10
|
||||
10:20:10.44AM %h:%i:%s.%f%p 10:20:10.440000
|
||||
10:20:10 %H:%i:%s NULL
|
||||
10:20:10 %h:%i:%s.%f NULL
|
||||
10:20:10 %T NULL
|
||||
10:20:10AM %h:%i:%s%p NULL
|
||||
10:20:10AM %r NULL
|
||||
10:20:10.44AM %h:%i:%s.%f%p NULL
|
||||
15-01-2001 12:59:58 %d-%m-%Y %H:%i:%S 12:59:58
|
||||
15 September 2001 %d %M %Y 00:00:00
|
||||
15 SEPTEMB 2001 %d %M %Y 00:00:00
|
||||
|
@ -301,6 +315,13 @@ Tuesday 52 2001 %W %V %X 00:00:00
|
|||
15-01-2001 %d-%m-%Y %H:%i:%S 00:00:00
|
||||
15-01-20 %d-%m-%y 00:00:00
|
||||
15-2001-1 %d-%Y-%c 00:00:00
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect time value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect time value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect time value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect time value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect time value: '0000-00-00 10:20:10'
|
||||
Warning 1292 Truncated incorrect time value: '0000-00-00 10:20:10.440000'
|
||||
select concat('',str_to_date('8:11:2.123456 03-01-02','%H:%i:%S.%f %y-%m-%d'));
|
||||
concat('',str_to_date('8:11:2.123456 03-01-02','%H:%i:%S.%f %y-%m-%d'))
|
||||
2003-01-02 08:11:02.123456
|
||||
|
@ -571,4 +592,13 @@ DATE_FORMAT('%Y-%m-%d %H:%i:%s', 1151414896)
|
|||
NULL
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect datetime value: '%Y-%m-%d %H:%i:%s'
|
||||
select str_to_date('04 /30/2004', '%m /%d/%Y');
|
||||
str_to_date('04 /30/2004', '%m /%d/%Y')
|
||||
2004-04-30
|
||||
select str_to_date('04/30 /2004', '%m /%d /%Y');
|
||||
str_to_date('04/30 /2004', '%m /%d /%Y')
|
||||
2004-04-30
|
||||
select str_to_date('04/30/2004 ', '%m/%d/%Y ');
|
||||
str_to_date('04/30/2004 ', '%m/%d/%Y ')
|
||||
2004-04-30
|
||||
"End of 4.1 tests"
|
||||
|
|
|
@ -36,6 +36,8 @@ Tables_in_test
|
|||
t1
|
||||
t2
|
||||
t3
|
||||
Tables_in_test
|
||||
t1
|
||||
_
|
||||
Test delimiter : from command line
|
||||
a
|
||||
|
|
|
@ -326,4 +326,12 @@ SELECT TIME_FORMAT("25:00:00", '%l %p');
|
|||
#
|
||||
SELECT DATE_FORMAT('%Y-%m-%d %H:%i:%s', 1151414896);
|
||||
|
||||
#
|
||||
# Bug #22029: str_to_date returning NULL
|
||||
#
|
||||
|
||||
select str_to_date('04 /30/2004', '%m /%d/%Y');
|
||||
select str_to_date('04/30 /2004', '%m /%d /%Y');
|
||||
select str_to_date('04/30/2004 ', '%m/%d/%Y ');
|
||||
|
||||
--echo "End of 4.1 tests"
|
||||
|
|
|
@ -49,3 +49,13 @@ delimiter ; # Reset delimiter
|
|||
# Bug #11523: \d works differently than delimiter
|
||||
#
|
||||
source t/mysql_delimiter_source.sql
|
||||
delimiter ; # Reset delimiter
|
||||
|
||||
#
|
||||
# Bug #19799: delimiter command not working correctly when sourcing a sql file
|
||||
# with Windows style line endings.
|
||||
#
|
||||
source t/mysql_delimiter_19799.sql
|
||||
use test//
|
||||
show tables//
|
||||
delimiter ; # Reset delimiter
|
||||
|
|
1
mysql-test/t/mysql_delimiter_19799.sql
Executable file
1
mysql-test/t/mysql_delimiter_19799.sql
Executable file
|
@ -0,0 +1 @@
|
|||
delimiter //
|
|
@ -411,7 +411,9 @@ str_to_datetime(const char *str, uint length, MYSQL_TIME *l_time,
|
|||
if (number_of_fields < 3 ||
|
||||
l_time->year > 9999 || l_time->month > 12 ||
|
||||
l_time->day > 31 || l_time->hour > 23 ||
|
||||
l_time->minute > 59 || l_time->second > 59)
|
||||
l_time->minute > 59 || l_time->second > 59 ||
|
||||
(l_time->year == 0 && l_time->month == 0 && l_time->day == 0 &&
|
||||
(l_time->hour != 0 || l_time->minute != 0 || l_time->second != 0)))
|
||||
{
|
||||
/* Only give warning for a zero date if there is some garbage after */
|
||||
if (!not_zero_date) /* If zero date */
|
||||
|
|
|
@ -290,15 +290,16 @@ static bool extract_date_time(DATE_TIME_FORMAT *format,
|
|||
|
||||
for (; ptr != end && val != val_end; ptr++)
|
||||
{
|
||||
/* Skip pre-space between each argument */
|
||||
while (val != val_end && my_isspace(cs, *val))
|
||||
val++;
|
||||
|
||||
if (*ptr == '%' && ptr+1 != end)
|
||||
{
|
||||
int val_len;
|
||||
char *tmp;
|
||||
|
||||
error= 0;
|
||||
/* Skip pre-space between each argument */
|
||||
while (val != val_end && my_isspace(cs, *val))
|
||||
val++;
|
||||
|
||||
val_len= (uint) (val_end - val);
|
||||
switch (*++ptr) {
|
||||
|
|
Loading…
Reference in a new issue