1
0
mirror of https://github.com/MariaDB/server.git synced 2026-01-06 05:22:24 +03:00

Bug#27358 INSERT DELAYED does not honour SQL_MODE of the client

SQL_MODE was ignored when a client issued INSERT DELAYED.

Some system settings weren't copied as intended when a record was saved for
a delayed insert. 


mysql-test/r/delayed.result:
  Added test case
mysql-test/t/delayed.test:
  Added test case
sql/sql_insert.cc:
  - Added two new variables (sql_mode, auto_increment_field_not_null) to support
    SQL_MODE in INSERT DELAYED statements.
This commit is contained in:
unknown
2007-08-23 10:22:20 +02:00
parent e6701d746d
commit 44d04c81ac
5 changed files with 68 additions and 73 deletions

View File

@@ -251,4 +251,35 @@ CREATE TABLE t2(c1 INT) ENGINE=MERGE UNION=(t1);
--error 1031
INSERT DELAYED INTO t2 VALUES(1);
DROP TABLE t1, t2;
#
# Bug#27358 INSERT DELAYED does not honour SQL_MODE of the client
#
--disable_warnings
DROP TABLE IF EXISTS t1,t2;
--enable_warnings
SET SQL_MODE='NO_AUTO_VALUE_ON_ZERO';
CREATE TABLE `t1` (
`id` int(11) PRIMARY KEY auto_increment,
`f1` varchar(10) NOT NULL UNIQUE
);
INSERT DELAYED INTO t1 VALUES(0,"test1");
sleep 1;
SELECT * FROM t1;
SET SQL_MODE='PIPES_AS_CONCAT';
INSERT DELAYED INTO t1 VALUES(0,'a' || 'b');
sleep 1;
SELECT * FROM t1;
SET SQL_MODE='ERROR_FOR_DIVISION_BY_ZERO,STRICT_ALL_TABLES';
--error 1365
INSERT DELAYED INTO t1 VALUES(mod(1,0),"test3");
CREATE TABLE t2 (
`id` int(11) PRIMARY KEY auto_increment,
`f1` date
);
SET SQL_MODE='NO_ZERO_DATE,STRICT_ALL_TABLES,NO_ZERO_IN_DATE';
--error ER_TRUNCATED_WRONG_VALUE
INSERT DELAYED INTO t2 VALUES (0,'0000-00-00');
--error ER_TRUNCATED_WRONG_VALUE
INSERT DELAYED INTO t2 VALUES (0,'2007-00-00');
DROP TABLE t1,t2;