日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql有类似dbms_output.pu_line();_使用MySQL,SQL_MODE有哪些坑,你知道么?

發布時間:2024/4/20 数据库 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql有类似dbms_output.pu_line();_使用MySQL,SQL_MODE有哪些坑,你知道么? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SQL_MODE是MySQL中的一個系統變量(variable),可由多個MODE組成,每個MODE控制一種行為,如是否允許除數為0,日期中是否允許'0000-00-00'值。

為什么需要關注SQL_MODE呢?

首先,看三個簡單的Demo(MySQL 5.6)。

1.

mysql>create table t1(c1 datetime);

Query OK,0 rows affected (0.16sec)

mysql> insert into t1 values('2019-02-29');

Query OK,1 row affected, 1 warning (0.01sec)

mysql> select * fromt1;+---------------------+

| c1 |

+---------------------+

| 0000-00-00 00:00:00 |

+---------------------+

1 row in set (0.00 sec)

實際存儲值與插入值不符。

2.

mysql> create table t2(c1 varchar(10));

Query OK,0 rows affected (0.06sec)

mysql> insert into t2 values('a'),('b'),('c');

Query OK,3 rows affected (0.01sec)

Records:3 Duplicates: 0 Warnings: 0mysql> select * fromt2;+------+

| c1 |

+------+

| a |

| b |

| c |

+------+

3 rows in set (0.00sec)

mysql> alter table t2 modify column c1 int;

Query OK,3 rows affected, 3 warnings (0.05sec)

Records:3 Duplicates: 0 Warnings: 3mysql>show warnings;+---------+------+-------------------------------------------------------+

| Level | Code | Message |

+---------+------+-------------------------------------------------------+

| Warning | 1366 | Incorrect integer value: 'a' for column 'c1' at row 1 |

| Warning | 1366 | Incorrect integer value: 'b' for column 'c1' at row 2 |

| Warning | 1366 | Incorrect integer value: 'c' for column 'c1' at row 3 |

+---------+------+-------------------------------------------------------+

3 rows in set (0.00sec)

mysql> select * fromt2;+------+

| c1 |

+------+

| 0 |

| 0 |

| 0 |

+------+

3 rows in set (0.00 sec)

DDL導致原列內容丟失。

3.

mysql> create table t3(id int not null,c1 varchar(10));

Query OK,0 rows affected (0.05sec)

mysql> insert into t3 values(null,'a');

ERROR1048 (23000): Column 'id' cannot be nullmysql> insert into t3(c1) values('a');

Query OK,1 row affected, 1 warning (0.00sec)

mysql>show warnings;+---------+------+-----------------------------------------+

| Level | Code | Message |

+---------+------+-----------------------------------------+

| Warning | 1364 | Field 'id' doesn't have a default value |

+---------+------+-----------------------------------------+

1 row in set (0.00sec)

mysql> select * fromt3;+----+------+

| id | c1 |

+----+------+

| 0 | a |

+----+------+

1 row in set (0.00 sec)

顯式指定列和不顯式指定的處理邏輯竟然不一樣。

為什么會這樣呢?這個即與SQL_MODE有關。

在MySQL 5.6中, SQL_MODE的默認值為"NO_ENGINE_SUBSTITUTION",非嚴格模式。

在這種模式下,在進行數據變更操作時,如果涉及的列中存在無效值(如日期不存在,數據類型不對,數據溢出),只會提示"Warning",并不會報錯。

如果要規避上述問題,需開啟SQL_MODE的嚴格模式。

SQL_MODE的嚴格模式

所謂的嚴格模式,即SQL_MODE中開啟了STRICT_ALL_TABLES或STRICT_TRANS_TAB LES。

還是上面的Demo,看看嚴格模式下,MySQL的處理邏輯。

mysql> set session sql_mode='STRICT_TRANS_TABLES';

Query OK,0 rows affected (0.00sec)

mysql> insert into t1 values('2019-02-29');

ERROR1292 (22007): Incorrect datetime value: '2019-02-29' for column 'c1' at row 1mysql> alter table t2 modify column c1 int;

ERROR1366 (HY000): Incorrect integer value: 'a' for column 'c1' at row 1mysql> insert into t3(c1) values('a');

ERROR1364 (HY000): Field 'id' doesn't have a default value

同樣的SQL,在嚴格模式下,直接提示"ERROR",而不是"Warning"。

同是嚴格模式,下面看看STRICT_ALL_TABLES或STRICT_TRAN S_TABLES的區別。

STRICT_ALL_TABLES與STRICT_TRANS_TABLES的區別

STRICT_TRANS_TABLES只對事務表開啟嚴格模式,STRICT_ALL_TABLES是對所有表開啟嚴格模式,不僅僅是事務表,還包括非事務表。

看下面這個測試。

對myisam表插入3條數據,其中,第3條數據是空字符串,與定義的int類型不匹配。

mysql> create table t (c1 int) engine=myisam;

Query OK,0 rows affected (0.00sec)

mysql> set session sql_mode='STRICT_TRANS_TABLES';

Query OK,0 rows affected, 1 warning (0.00sec)

mysql> insert into t values (1),(2),('');

Query OK,3 rows affected, 1 warning (0.00sec)

Records:3 Duplicates: 0 Warnings: 1mysql>show warnings;+---------+------+------------------------------------------------------+

| Level | Code | Message |

+---------+------+------------------------------------------------------+

| Warning | 1366 | Incorrect integer value: '' for column 'c1' at row 3 |

+---------+------+------------------------------------------------------+

1 row in set (0.00sec)

mysql> select * fromt;+------+

| c1 |

+------+

| 1 |

| 2 |

| 0 |

+------+

3 rows in set (0.00sec)

mysql> set session sql_mode='STRICT_ALL_TABLES';

Query OK,0 rows affected, 1 warning (0.00sec)

mysql> insert into t values (1),(2),('');

ERROR1366 (HY000): Incorrect integer value: '' for column 'c1' at row 3

可以看到,在表為myisam存儲引擎的情況下,只有開啟STRICT_ALL_TABLES才會報錯。

不同版本默認的SQL_MODE

MySQL 5.5:空

MySQL 5.6:NO_ENGINE_SUBSTITUTION

MySQL 5.7:ONLY_FULL_GROUP_BY,?STRICT_TRANS_TABLES, NO_ZERO_IN_DATE,?NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER,? NO_ENGINE_SUBSTITUTION

MySQL 8.0:ONLY_FULL_GROUP_BY,?STRICT_TRANS_TABLES, NO_ZERO_IN_DATE,??NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION

如何修改SQL_MODE

SQL_MODE既可在全局級別修改,又可在會話級別修改。可指定多個MODE,MODE之間用逗號隔開。

全局級別

set global sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES';

會話級別

set session sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES';

SQL_MODE的完整列表

ALLOW_INVALID_DATES

在嚴格模式下,對于日期的檢測較為嚴格,其必須有效。若開啟該MODE,對于month和day的檢測會相對寬松。其中,month只需在1~12之間,day只需在1~31之間,而不管其是否有效,如下面的'2004-02-31'。

mysql> create table t (c1 datetime);

Query OK,0 rows affected (0.21sec)

mysql> set session sql_mode='STRICT_TRANS_TABLES';

Query OK,0 rows affected, 1 warning (0.00sec)

mysql> insert into t values('2004-02-31');

ERROR1292 (22007): Incorrect datetime value: '2004-02-31' for column 'c1' at row 1mysql> set session sql_mode='STRICT_TRANS_TABLES,ALLOW_INVALID_DATES';

Query OK,0 rows affected, 1 warning (0.00sec)

mysql> insert into t values('2004-02-31');

Query OK,1 row affected (0.01sec)

mysql> select * fromt;+---------------------+

| c1 |

+---------------------+

| 2004-02-31 00:00:00 |

+---------------------+

1 row in set (0.00 sec)

注意,該MODE只適用于DATE和DATETIME,不適用于TIMESTAMP。

ANSI_QUOTES

在MySQL中,對于關鍵字和保留字,是不允許用做表名和字段名的。如果一定要使用,必須使用反引號("`")進行轉義。

mysql> create table order (id int);

ERROR1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'order (id int)' at line 1mysql> create table `order` (id int);

Query OK,0 rows affected (0.12 sec)

若開啟該MODE,則雙引號,同反引號一樣,可對關鍵字和保留字轉義。

mysql> set session sql_mode='';

Query OK,0 rows affected (0.00sec)

mysql> create table "order" (c1 int);

ERROR1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"order" (c1 int)' at line 1mysql> set session sql_mode='ANSI_QUOTES';

Query OK,0 rows affected (0.00sec)

mysql> create table "order" (c1 int);

Query OK,0 rows affected (0.17 sec)

需要注意的是,在開啟該MODE的情況下,不能再用雙引號來引字符串。

ERROR_FOR_DIVISION_BY_ZERO

該MODE決定除數為0的處理邏輯,實際效果還取決于是否開啟嚴格模式。

1. 開啟嚴格模式,且開啟該MODE,插入1/0,會直接報錯。

mysql> create table t (c1 double);

Query OK,0 rows affected (0.04sec)

mysql> set session sql_mode='STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO';

Query OK,0 rows affected, 1 warning (0.00sec)

mysql> insert into t values(1/0);

ERROR1365 (22012): Division by 0

2. 只開啟嚴格模式,不開啟該MODE,允許1/0的插入,且不提示warning,1/0最后會轉化為NULL。

mysql> set session sql_mode='STRICT_TRANS_TABLES';

Query OK,0 rows affected, 1 warning (0.00sec)

mysql> insert into t values(1/0);

Query OK,1 row affected (0.07sec)

mysql> select * fromt;+------+

| c1 |

+------+

| NULL |

+------+

1 row in set (0.00 sec)

3. 不開啟嚴格模式,只開啟該MODE,允許1/0的插入,但提示warning。

4. 不開啟嚴格模式,也不開啟該MODE,允許1/0的插入,且不提示warning,同2一樣。

HIGH_NOT_PRECEDENCE

默認情況下,NOT的優先級低于比較運算符。但在某些低版本中,NOT的優先級高于比較運算符。

看看兩者的區別。

mysql> set session sql_mode='';

Query OK,0 rows affected (0.00sec)

mysql> select not 1 < -1;+------------+

| not 1 < -1 |

+------------+

| 1 |

+------------+

1 row in set (0.00sec)

mysql> set session sql_mode='HIGH_NOT_PRECEDENCE';

Query OK,0 rows affected (0.00sec)

mysql> select not 1 < -1;+------------+

| not 1 < -1 |

+------------+

| 0 |

+------------+

1 row in set (0.00 sec)

在sql_mode為空的情況下, not 1 < -1相當于not (1 < -1),如果設置了'HIGH_ NOT_PRECEDENCE',則相當于(not 1) < -1。

IGNORE_SPACE

默認情況下,函數名和左括號(“(”)之間不允許存在空格。若開啟該MODE,則允許。

mysql> set session sql_mode='';

Query OK,0 rows affected (0.00sec)

mysql> select count(*) fromt;+----------+

| count(*) |

+----------+

| 2 |

+----------+

1 row in set (0.00sec)

mysql> select count (*) fromt;

ERROR1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '*) from t' at line 1mysql> set session sql_mode='IGNORE_SPACE';

Query OK,0 rows affected (0.01sec)

mysql> select count (*) fromt;+-----------+

| count (*) |

+-----------+

| 2 |

+-----------+

1 row in set (0.01 sec)

NO_AUTO_VALUE_ON_ZERO

默認情況下,在對自增主鍵插入NULL或0時,會自動生成下一個值。若開啟該MODE,當插入0時,并不會自動生成下一個值。

如果表中自增主鍵列存在0值,在進行邏輯備份還原時,可能會導致數據不一致。所以mysqldump在生成備份數據之前,會自動開啟該MODE,以避免數據不一致的情況。

mysql> create table t (id int auto_increment primary key);

Query OK,0 rows affected (0.11sec)

mysql> set session sql_mode='';

Query OK,0 rows affected (0.01sec)

mysql> insert into t values (0);

Query OK,1 row affected (0.04sec)

mysql> select * fromt;+----+

| id |

+----+

| 1 |

+----+

1 row in set (0.00sec)

mysql> set session sql_mode='NO_AUTO_VALUE_ON_ZERO';

Query OK,0 rows affected (0.02sec)

mysql> insert into t values (0);

Query OK,1 row affected (0.09sec)

mysql> select * fromt;+----+

| id |

+----+

| 0 |

| 1 |

+----+

2 rows in set (0.00 sec)

NO_BACKSLASH_ESCAPES

默認情況下,反斜杠“\”會作為轉義符,若開啟該MODE,則反斜杠“\”會作為一個普通字符,而不是轉義符。

mysql> set session sql_mode='';

Query OK,0 rows affected (0.01sec)

mysql> select '\\t';+----+

| \t |

+----+

| \t |

+----+

1 row in set (0.00sec)

mysql> set session sql_mode='NO_BACKSLASH_ESCAPES';

Query OK,0 rows affected (0.00sec)

mysql> select '\\t';+-----+

| \\t |

+-----+

| \\t |

+-----+

1 row in set (0.00 sec)

NO_DIR_IN_CREATE

默認情況下,在創建表時,可以指定數據目錄(DATA DIRECTORY)和索引目錄(INDEX DIRECTORY),若開啟該MODE,則會忽略這兩個選項。在主從復制場景下,可在從庫上開啟該MODE。

mysql> set session sql_mode='';

Query OK,0 rows affected (0.01sec)

mysql> create table t (id int) data directory '/tmp/';

Query OK,0 rows affected (0.15sec)

mysql> show create tablet\G*************************** 1. row ***************************

Table: tCreate Table: CREATE TABLE`t` (

`id`int(11) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci DATA DIRECTORY='/tmp/'

1 row in set (0.00sec)

mysql> set session sql_mode='NO_DIR_IN_CREATE';

Query OK,0 rows affected (0.00sec)

mysql> drop tablet;

Query OK,0 rows affected (0.11sec)

mysql> create table t (id int) data directory '/tmp/';

Query OK,0 rows affected, 1 warning (0.05sec)

mysql> show create tablet\G*************************** 1. row ***************************

Table: tCreate Table: CREATE TABLE`t` (

`id`int(11) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci1 row in set (0.00 sec)

NO_ENGINE_SUBSTITUTION

在開啟該MODE的情況下,在創建表時,如果指定的存儲引擎不存在或不支持,則會直接提示“ERROR”。

若不開啟,則只會提示“Warning”,且使用默認的存儲引擎。

mysql> set session sql_mode='';

Query OK,0 rows affected (0.00sec)

mysql> create table t (id int) engine=federated;

Query OK,0 rows affected, 2 warnings (0.11sec)

mysql>show warnings;+---------+------+-------------------------------------------+

| Level | Code | Message |

+---------+------+-------------------------------------------+

| Warning | 1286 | Unknown storage engine 'federated' |

| Warning | 1266 | Using storage engine InnoDB for table 't' |

+---------+------+-------------------------------------------+

2 rows in set (0.00sec)

mysql> show create tablet\G*************************** 1. row ***************************

Table: tCreate Table: CREATE TABLE`t` (

`id`int(11) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci1 row in set (0.01sec)

mysql> drop tablet;

Query OK,0 rows affected (0.11sec)

mysql> set session sql_mode='NO_ENGINE_SUBSTITUTION';

Query OK,0 rows affected (0.00sec)

mysql> create table t (id int) engine=federated;

ERROR1286 (42000): Unknown storage engine 'federated'

NO_UNSIGNED_SUBTRACTION

兩個整數相減,如果其中一個數是無符號位,默認情況下,會產生一個無符號位的值,如果該值為負數,則會提示“ERROR”。如,

mysql> set session sql_mode='';

Query OK,0 rows affected (0.00sec)

mysql> select cast(0 as unsigned)-1;

ERROR1690 (22003): BIGINT UNSIGNED value is out of range in '(cast(0 as unsigned) - 1)'

若開啟該MODE,則允許結果為負數。

mysql> set session sql_mode='NO_UNSIGNED_SUBTRACTION';

Query OK,0 rows affected (0.00sec)

mysql> select cast(0 as unsigned)-1;+-----------------------+

| cast(0 as unsigned)-1 |

+-----------------------+

| -1 |

+-----------------------+

1 row in set (0.00 sec)

NO_ZERO_DATE

該MODE會影響'0000-00-00'的插入。實際效果還取決于是否開啟嚴格模式。

1. 在開啟嚴格模式,且同時開啟該MODE,是不允許'0000-00-00'插入的。

mysql> set session sql_mode='STRICT_TRANS_TABLES,NO_ZERO_DATE';

Query OK,0 rows affected, 1 warning (0.00sec)

mysql>show warnings\G*************************** 1. row ***************************

Level: Warning

Code:3135Message:'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode ina future release.1 row in set (0.00sec)

mysql> insert into t values ('0000-00-00');

ERROR1292 (22007): Incorrect datetime value: '0000-00-00' for column 'c1' at row 1

2. 只開啟嚴格模式,不開啟該MODE,允許'0000-00-00'值的插入,且不提示warning。

mysql> set session sql_mode='STRICT_TRANS_TABLES';

Query OK,0 rows affected, 1 warning (0.00sec)

mysql> insert into t values ('0000-00-00');

Query OK,1 row affected (0.04 sec)

3. 不開啟嚴格模式,只開啟該MODE,允許'0000-00-00'值的插入,但提示warning。

mysql> set session sql_mode='NO_ZERO_DATE';

Query OK,0 rows affected, 1 warning (0.00sec)

mysql> insert into t values ('0000-00-00');

Query OK,1 row affected, 1 warning (0.05sec)

mysql>show warnings;+---------+------+---------------------------------------------+

| Level | Code | Message |

+---------+------+---------------------------------------------+

| Warning | 1264 | Out of range value for column 'c1' at row 1 |

+---------+------+---------------------------------------------+

1 row in set (0.01 sec)

4. 不開啟嚴格模式,也不開啟該MODE,允許'0000-00-00'值的插入,且不提示warning。

mysql> set session sql_mode='';

Query OK,0 rows affected (0.00sec)

mysql> insert into t values ('0000-00-00');

Query OK,1 row affected (0.03 sec)

NO_ZERO_IN_DATE

同NO_ZERO_DATE類似,只不過NO_ZERO_DATE針對的是'0000-00-00',而NO_ZERO_IN_DATE針對的是年不為0,但月或者日為0的日期,如,'2010-00-01' or '2010-01-00'。

實際效果也是取決于是否開啟嚴格模式,同NO_ZERO_DATE一樣。

ONLY_FULL_GROUP_BY

開啟該MODE,則SELECT列表中只能出現分組列和聚合函數。

mysql> set session sql_mode='';

Query OK,0 rows affected (0.00sec)

mysql> select dept_no,emp_no,min(from_date) from dept_emp group bydept_no;+---------+--------+----------------+

| dept_no | emp_no | min(from_date) |

+---------+--------+----------------+

| d001 | 10017 | 1985-01-01 |

| d002 | 10042 | 1985-01-01 |

| d003 | 10005 | 1985-01-01 |

| d004 | 10003 | 1985-01-01 |

| d005 | 10001 | 1985-01-01 |

| d006 | 10009 | 1985-01-01 |

| d007 | 10002 | 1985-01-01 |

| d008 | 10007 | 1985-01-01 |

| d009 | 10011 | 1985-01-01 |

+---------+--------+----------------+

9 rows in set (0.64sec)

mysql> set session sql_mode='ONLY_FULL_GROUP_BY';

Query OK,0 rows affected (0.00sec)

mysql> select dept_no,emp_no,min(from_date) from dept_emp group bydept_no;

ERROR1055 (42000): Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'employees.dept_emp.emp_no' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

如果不開啟該MODE,則允許SELECT列表中出現任意列,但這些列的值并不是確定的,官方文檔中也提到了這一點。

If ONLY_FULL_GROUP_BY is disabled, a MySQL extension to the standard SQL use of GROUP BY permits the select list, HAVING condition, or ORDER BY list to refer to nonaggregated columns even if the columns are not functionally dependent on GROUP BY columns. This causes MySQL toaccept the preceding query.In this case, the server is free to choose any value from each group, so unless they are the same, the values chosen are nondeterministic, which is probably notwhat you want.

Furthermore, the selectionof values from each group cannot be influenced by adding an ORDER BY clause. Result set sorting occurs after values have been chosen, and ORDER BY does not affect which value within each groupthe server chooses.

Disabling ONLY_FULL_GROUP_BYis useful primarily when you know that, due to some property of the data, all values in each nonaggregated column not named in the GROUP BY are the same for each group.

https://dev.mysql.com/doc/refman/8.0/en/group-by-handling.html

PAD_CHAR_TO_FULL_LENGTH

在對CHAR字段進行存儲時,在Compact格式下,會占用固定長度的字節。

如下面的c1列,定義為char(10),雖然'ab'只占用兩個字節,但在Compact格式下,會占用10個字節,不足部分以空格填充。

在查詢時,默認情況下,會剔除掉末尾的空格。若開啟該MODE,則不會剔除,每次都會返回固定長度的字符。

mysql> create table t (c1 char(10));

Query OK,0 rows affected (0.17sec)

mysql> insert into t values('ab');

Query OK,1 row affected (0.11sec)

mysql> set session sql_mode='';

Query OK,0 rows affected (0.00sec)

mysql> select c1, hex(c1), char_length(c1) fromt;+------+---------+-----------------+

| c1 | hex(c1) | char_length(c1) |

+------+---------+-----------------+

| ab | 6162 | 2 |

+------+---------+-----------------+

1 row in set (0.00sec)

mysql> set session sql_mode='PAD_CHAR_TO_FULL_LENGTH';

Query OK,0 rows affected (0.00sec)

mysql> select c1, hex(c1), char_length(c1) fromt;+------------+----------------------+-----------------+

| c1 | hex(c1) | char_length(c1) |

+------------+----------------------+-----------------+

| ab | 61622020202020202020 | 10 |

+------------+----------------------+-----------------+

1 row in set (0.00 sec)

PIPES_AS_CONCAT

在Oracle中,連接字符串可用concat和管道符("||"),但concat只能連接兩個字符串(MySQL中的concat可連接多個字符),局限性太大,如果要連接多個字符串,一般用的是管道符。

開啟該MODE,即可將管道符作為連接符。

mysql> set session sql_mode='';

Query OK,0 rows affected (0.00sec)

mysql> select 'a'||'b';+----------+

| 'a'||'b' |

+----------+

| 0 |

+----------+

1 row in set, 2 warnings (0.00sec)

mysql> select concat('a','b');+-----------------+

| concat('a','b') |

+-----------------+

| ab |

+-----------------+

1 row in set (0.00sec)

mysql> set session sql_mode='PIPES_AS_CONCAT';

Query OK,0 rows affected (0.00sec)

mysql> select 'a'||'b';+----------+

| 'a'||'b' |

+----------+

| ab |

+----------+

1 row in set (0.00 sec)

REAL_AS_FLOAT

在創建表時,數據類型可指定為real,默認情況下,其會轉化為double,若開啟該MODE,則會轉化為float。

mysql> set session sql_mode='';

Query OK,0 rows affected (0.00sec)

mysql> create table t ( c1 real);

Query OK,0 rows affected (0.12sec)

mysql> show create tablet\G*************************** 1. row ***************************

Table: tCreate Table: CREATE TABLE`t` (

`c1`double DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci1 row in set (0.00sec)

mysql> drop tablet;

Query OK,0 rows affected (0.04sec)

mysql> set session sql_mode='REAL_AS_FLOAT';

Query OK,0 rows affected (0.00sec)

mysql> create table t ( c1 real);

Query OK,0 rows affected (0.11sec)

mysql> show create tablet\G*************************** 1. row ***************************

Table: tCreate Table: CREATE TABLE`t` (

`c1`float DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci1 row in set (0.00 sec)

STRICT_ALL_TABLES

對事務表開啟嚴格模式。

STRICT_TRANS_TABLES

對所有表開啟嚴格模式。

TIME_TRUNCATE_FRACTIONAL

在時間類型定義了小數秒的情況下,如果插入的位數大于指定的位數,默認情況下,會四舍五入,若開啟了該MODE,則會直接truncate掉。

mysql> create table t (c1 int,c2 datetime(2));

Query OK,0 rows affected (0.04sec)

mysql> set session sql_mode='';

Query OK,0 rows affected (0.00sec)

mysql> insert into t values(1,'2018-08-08 11:12:13.125');

Query OK,1 row affected (0.06sec)

mysql> select * fromt;+------+------------------------+

| c1 | c2 |

+------+------------------------+

| 1 | 2018-08-08 11:12:13.13 |

+------+------------------------+

1 row in set (0.00sec)

mysql> set session sql_mode='TIME_TRUNCATE_FRACTIONAL';

Query OK,0 rows affected (0.00sec)

mysql> insert into t values(2,'2018-08-08 11:12:13.125');

Query OK,1 row affected (0.06sec)

mysql> select * fromt;+------+------------------------+

| c1 | c2 |

+------+------------------------+

| 1 | 2018-08-08 11:12:13.13 |

| 2 | 2018-08-08 11:12:13.12 |

+------+------------------------+

2 rows in set (0.00 sec)

NO_AUTO_CREATE_USER

在MySQL 8.0之前,直接授權會隱式創建用戶。

mysql> select host,user from mysql.user where user='u1';

Emptyset (0.00sec)

mysql> grant all on *.* to 'u1'@'%' identified by '123';

Query OK,0 rows affected, 1 warning (0.12sec)

mysql>show warnings;+---------+------+------------------------------------------------------------------------------------------------------------------------------------+

| Level | Code | Message |

+---------+------+------------------------------------------------------------------------------------------------------------------------------------+

| Warning | 1287 | Using GRANT for creating new user is deprecated and will be removed in future release. Create new user with CREATE USER statement. |

+---------+------+------------------------------------------------------------------------------------------------------------------------------------+

1 row in set (0.00sec)

mysql> select host,user from mysql.user where user='u1';+------+------+

| host | user |

+------+------+

| % | u1 |

+------+------+

1 row in set (0.00 sec)

同樣的grant語句,在MySQL 8.0中是會報錯的。

mysql> grant all on *.* to 'u1'@'%' identified by '123';

ERROR1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'identified by'123'' at line 1

在MySQL 8.0中,已不允許grant語句隱式創建用戶,所以,該MODE在8.0中也不存在。

從字面上看,該MODE是禁止授權時隱式創建用戶。但在實際測試過程中,發現其并不能禁止。

mysql> set session sql_mode='NO_AUTO_CREATE_USER';

Query OK,0 rows affected (0.03sec)

mysql> grant all on *.* to 'u1'@'%' identified by '123';

Query OK,0 rows affected, 1 warning (0.00 sec)

其實,該MODE禁止的只是不帶“identified by”子句的grant語句,對于帶有“identified by”子句的grant語句,其并不會禁止。

mysql> drop useru1;

Query OK,0 rows affected (0.00sec)

mysql> set session sql_mode='NO_AUTO_CREATE_USER';

Query OK,0 rows affected, 1 warning (0.00sec)

mysql> grant all on *.* to 'u1'@'%';

ERROR1133 (42000): Can't find any matching row in the user table

mysql> set session sql_mode='';

Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> grant all on *.* to'u1'@'%';

Query OK, 0 rows affected, 1 warning (0.00 sec)

SQL_MODE的常見組合

在MySQL 5.7中,還可將SQL_MODE設置為ANSI, DB2, MAXDB, MSSQL, MYSQL323, MYSQL40, ORACLE, POSTGRESQL, TRADITIONAL。

其實,這些MODE只是上述MODE的一種組合,目的是為了和其它數據庫兼容。

在MySQL 8.0中,只支持ANSI和TRADITIONAL這兩種組合。

ANSI

等同于REAL_AS_FLOAT,? PIPES_AS_CONCAT,?ANSI_QUOTES,? IGNORE_SPACE,??ONLY_FULL_GROUP_BY。

mysql> set session sql_mode='ANSI';

Query OK,0 rows affected (0.00sec)

mysql> show session variables like 'sql_mode';+---------------+--------------------------------------------------------------------------------+

| Variable_name | Value |

+---------------+--------------------------------------------------------------------------------+

| sql_mode | REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ONLY_FULL_GROUP_BY,ANSI |

+---------------+--------------------------------------------------------------------------------+

1 row in set (0.03 sec)

TRADITIONAL

等同于STRICT_TRANS_TABLES,??STRICT_ALL_TABLES, NO_ZERO_IN_DATE,?NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO,?NO_ENGINE_SUBSTITUTION。

mysql> set session sql_mode='TRADITIONAL';

Query OK,0 rows affected (0.00sec)

mysql> show session variables like 'sql_mode';+---------------+----------------------------------------------------------------------------------------------------------------------------------+

| Variable_name | Value |

+---------------+----------------------------------------------------------------------------------------------------------------------------------+

| sql_mode | STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_ENGINE_SUBSTITUTION |

+---------------+----------------------------------------------------------------------------------------------------------------------------------+

1 row in set (0.01 sec)

總結

1. SQL_MODE在非嚴格模式下,會出現很多意料不到的結果。建議線上開啟嚴格模式。但對于線上老的環境,如果一開始就運行在非嚴格模式下,切忌直接調整,畢竟兩者的差異性還是相當巨大。

2. 官方默認的SQL_MODE一直在發生變化,MySQL 5.5, 5.6, 5.7就不盡相同,但總體是趨嚴的,在對數據庫進行升級時,其必須考慮默認的SQL_MODE是否需要調整。

3. 在進行數據庫遷移時,可通過調整SQL_MODE來兼容其它數據庫的語法。

總結

以上是生活随笔為你收集整理的mysql有类似dbms_output.pu_line();_使用MySQL,SQL_MODE有哪些坑,你知道么?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

98福利在线| 免费看一级特黄a大片 | 亚洲精品视频免费在线观看 | 青青河边草免费视频 | 国产美女视频黄a视频免费 久久综合九色欧美综合狠狠 | 91免费国产在线观看 | 青青河边草免费视频 | 亚洲 中文 欧美 日韩vr 在线 | 亚洲国产成人精品电影在线观看 | 97碰在线 | 69视频永久免费观看 | 免费看片成人 | 天堂av一区二区 | 麻豆国产精品va在线观看不卡 | 国产亚洲成人网 | 久久五月激情 | 亚洲激情精品 | 欧美一级免费 | 懂色av懂色av粉嫩av分享吧 | 毛片美女网站 | 精品xxx | 一区二区三区精品在线 | 成片视频免费观看 | 天天干天天操天天搞 | 日本三级香港三级人妇99 | 99久久激情视频 | 美女国内精品自产拍在线播放 | 亚洲精品国产精品国 | 久久久久国产成人免费精品免费 | 婷婷丁香激情 | 六月色| 国产精品一区二区av影院萌芽 | 九九九电影免费看 | 91看片淫黄大片一级在线观看 | 超碰在线人人97 | 在线а√天堂中文官网 | 五月婷婷黄色 | 国产亚洲人成网站在线观看 | 亚洲天天 | 精品免费在线视频 | 天天操福利视频 | 玖玖视频精品 | 亚洲一级黄色大片 | 在线观看视频福利 | 国产精品99久久久久的智能播放 | 最新日韩精品 | 午夜视频二区 | 在线观看91久久久久久 | 久久成人亚洲欧美电影 | 成人一区电影 | 一本色道久久精品 | 国产精品美女久久久久久网站 | 久久 精品一区 | 中文av在线免费观看 | 69国产盗摄一区二区三区五区 | 国产免费观看高清完整版 | 亚洲精品一区二区三区高潮 | 午夜丁香视频在线观看 | 成年人黄色免费网站 | 日韩在线观看精品 | 黄色官网在线观看 | 嫩草av影院 | 在线观看成人网 | 色视频在线看 | 91在线精品秘密一区二区 | 免费a视频 | 美女av电影 | 国产日韩精品一区二区在线观看播放 | 中文字幕一区二区三区久久蜜桃 | 中文字幕在线乱 | 激情欧美一区二区三区 | 国产色爽| 国内精品久久久久久久影视麻豆 | 一区二区三区国产精品 | 日黄网站 | 亚洲免费在线看 | 国产99免费| 一区在线观看 | 亚洲精品中文在线观看 | av资源在线看 | 在线视频 成人 | 国产精品久久久久永久免费观看 | 天天精品视频 | 超薄丝袜一二三区 | 国产精品久久影院 | 亚洲丁香日韩 | 国产资源在线观看 | a v在线视频 | 三级免费黄色 | 成 人 黄 色视频免费播放 | 成年人免费电影 | 亚洲乱亚洲乱妇 | 热久久99这里有精品 | 日韩视频www | 成年人黄色av | 91精品天码美女少妇 | 中文字幕在线观看视频免费 | 国产免费三级在线观看 | 91精品免费视频 | 天堂av在线| 免费看污污视频的网站 | 视频成人免费 | 日韩欧美在线第一页 | 欧美激情第八页 | 欧美成人影音 | 99久久精品久久亚洲精品 | 国产视频欧美视频 | 久久电影日韩 | 久久午夜影视 | 97爱| 久久视频在线 | 在线中文日韩 | 婷婷综合影院 | 九九视频免费在线观看 | 日p在线观看 | 国产玖玖在线 | 婷婷去俺也去六月色 | 国产中文在线播放 | 日韩视频三区 | 亚洲视频免费在线观看 | 国产精品久久久久久麻豆一区 | 国产一区免费在线观看 | 在线视频麻豆 | 91精品亚洲影视在线观看 | 在线视频1卡二卡三卡 | 久久久影片 | 欧美一二三视频 | 在线观看视频免费播放 | 国内精品久久久久影院男同志 | 久草在线视频首页 | 国产精品黄 | 天天夜夜狠狠操 | 欧美激情综合五月色丁香 | 国模一二三区 | 天天射天天 | wwxxxx日本 | 久久国产区 | 超碰日韩在线 | 欧美91在线| 亚洲日韩欧美一区二区在线 | 蜜臀av在线一区二区三区 | 久久精品专区 | 国产精品视频线看 | 91精品国产电影 | 国产丝袜制服在线 | 亚洲精品tv久久久久久久久久 | 国产精品不卡一区 | 国产精品美女视频网站 | 中文字幕在线日亚洲9 | 中文字幕91在线 | 91精品国产麻豆国产自产影视 | 欧美成人播放 | 少妇bbbb| 中文字幕在线观看亚洲 | 91一区在线观看 | 久久免费视频4 | 午夜婷婷在线观看 | 香蕉视频免费在线播放 | 精品久久久免费 | 久久艹艹| 综合色站导航 | 正在播放久久 | japanese黑人亚洲人4k | 五月婷婷六月丁香在线观看 | 69视频国产 | 91九色最新地址 | 欧美中文字幕久久 | 国产三级国产精品国产专区50 | 亚洲一区欧美精品 | 国产精品美女久久久久久久 | 日韩免费一级电影 | 日韩精品久久一区二区三区 | 日本久久久影视 | 91精品在线观看入口 | 91久久久久久久一区二区 | 欧美成人在线免费 | 97日日碰人人模人人澡分享吧 | 日韩黄色在线电影 | 日韩在线视频线视频免费网站 | 人人澡超碰碰97碰碰碰软件 | 久久精品视频在线免费观看 | www.狠狠干 | 啪啪午夜免费 | 黄色毛片网站在线观看 | 91亚瑟视频 | 久久久高清 | 一区二区视频在线免费观看 | 久久精品屋| 97网站 | 免费在线观看的av网站 | 黄色毛片在线看 | 丁香av | 在线免费观看视频一区二区三区 | 特级西西444www高清大视频 | 深爱婷婷激情 | 久草精品视频在线播放 | 亚洲伦理电影在线 | 精品一区精品二区高清 | 精品国偷自产在线 | 日日夜夜骑 | 日韩一区二区免费视频 | 日本激情视频中文字幕 | 伊人五月天婷婷 | 三级av在线播放 | 99视频在线精品免费观看2 | 人人擦| 9797在线看片亚洲精品 | 国产成人av在线影院 | 欧美性脚交| 免费欧美高清视频 | 香蕉国产91| 国产999精品久久久 免费a网站 | 在线观看久久 | 久草久| 奇人奇案qvod | 欧美xxxxx在线视频 | 色婷婷狠狠五月综合天色拍 | 日韩精品一区二区三区三炮视频 | 激情综合啪 | 欧美性色黄大片在线观看 | 成年人视频免费在线播放 | 成人电影毛片 | 97精品国产97久久久久久久久久久久 | av看片网| 中文字幕一区二区三区久久 | 国产小视频免费观看 | 国产日韩视频在线播放 | 久久精品老司机 | 99久久久久国产精品免费 | 97精品国自产拍在线观看 | 中文字幕在线视频一区 | 亚洲精品久久久久中文字幕二区 | 国产v在线播放 | 麻豆视频一区 | wwxxx日本| 国产美女永久免费 | 亚洲精品美女久久 | 97人人超碰在线 | 久久综合日| 亚洲精品乱码久久久久久久久久 | 国产美女精彩久久 | 国产亚洲精品久久19p | 日韩av成人免费看 | 99视频免费 | 午夜久久影院 | 日本久草电影 | 久久久色| 国产一区二区在线免费播放 | 色香蕉在线视频 | 91爱在线 | 成人在线电影观看 | 久久久久久久久久久影视 | 人人爽人人澡 | 久久字幕精品一区 | 亚洲欧美日韩国产精品一区午夜 | 欧美人体xx | 日日夜夜狠狠操 | 91精品久久久久久久久久久久久 | 在线观看香蕉视频 | 亚洲国产精品久久久久久 | 99色视频在线 | 99久久99久久精品国产片 | 亚洲国产精品成人女人久久 | 91精品久久久久久综合五月天 | 日韩欧美v | 久久综合九色综合欧美狠狠 | 精品欧美一区二区精品久久 | 欧美日韩精品久久久 | 91九色porny蝌蚪主页 | 久久国产成人午夜av影院宅 | 亚洲涩涩一区 | 亚洲日本黄色 | 91免费网址 | 久久成人精品电影 | 黄色毛片视频 | 久久五月天色综合 | 亚洲精品国产精品国自产在线 | www·22com天天操 | bbb搡bbb爽爽爽 | 欧美日韩精| 亚洲aⅴ免费在线观看 | 久久久www成人免费毛片 | 黄色网www | 中文字幕一区二区三区在线播放 | 亚洲高清激情 | 国产精品一区二区三区在线 | 久草在线视频在线 | 国产91精品高清一区二区三区 | 成人网页在线免费观看 | 精品久久视频 | 婷婷在线播放 | 超碰97国产精品人人cao | 美女黄频在线观看 | 18久久久久 | 久久久久久久久久久久久影院 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 天天操天天爱天天干 | 中文字幕观看在线 | 狠狠狠色狠狠色综合 | 91九色蝌蚪视频在线 | 日韩av中文字幕在线 | 91精品系列 | 国产又粗又猛又爽又黄的视频免费 | 九九热中文字幕 | 成人一级免费视频 | 天天se天天cao天天干 | 精品一区二区精品 | 97色国产 | 九九热国产 | 一区二区视频在线看 | 精品色综合 | 四虎国产精品免费 | 欧美午夜视频在线 | 亚洲国产激情 | 国产精品久久久久久久久免费看 | 91av视频在线观看免费 | 成人av电影免费观看 | 韩国一区视频 | 成片视频免费观看 | 日日爽| 91网址在线观看 | 免费在线观看av不卡 | 久久99久久99精品免视看婷婷 | 国语黄色片 | 久久免费国产精品 | 美国av大片 | www久久久 | 超碰人人草人人 | 久草视频在线播放 | 黄色一级在线观看 | 久久久久亚洲精品国产 | 一区二区视频欧美 | 不卡的av电影 | 国产高清专区 | 久久少妇免费视频 | 天天综合日| 亚洲精品视频网址 | 日本不卡视频 | 精品色综合 | 夜夜躁狠狠躁日日躁视频黑人 | 国产视频在线免费观看 | 国产区精品区 | 九九九九九国产 | 久久tv | 97色涩 | 九九热只有这里有精品 | 欧美日韩后 | 国产韩国日本高清视频 | 99精品视频观看 | 国产精品久久久久高潮 | 免费看黄20分钟 | 99 精品 在线 | 99这里只有 | 一区免费视频 | 黄色毛片视频免费观看中文 | 免费观看www7722午夜电影 | 中文在线天堂资源 | av看片在线 | 一区电影 | 欧美一级黄色视屏 | 久草在线免 | 色网站黄 | 日本动漫做毛片一区二区 | 久久久久久草 | 久久在线看 | 午夜精品久久久久99热app | 夜夜爽天天爽 | 麻豆国产精品永久免费视频 | 成人午夜黄色 | 国产美女主播精品一区二区三区 | 成年人视频在线 | 国产亚洲精品久久久久动 | 人人澡人人舔 | 亚洲韩国一区二区三区 | 久久精品com| a天堂中文在线 | 国产在线精品区 | 欧美老少交 | 五月开心色 | 国产在线观看91 | 婷婷久久五月天 | 国产精品影音先锋 | 日韩r级电影在线观看 | 99亚洲精品 | 国产精品久久av | 丁香婷婷综合激情五月色 | 日韩精品欧美专区 | 999毛片| av一二三区| 色中色亚洲 | 亚洲电影av在线 | av免费看在线 | 久久久高清一区二区三区 | 亚洲成人免费在线 | 91在线免费视频 | 国内小视频 | 国产精品1区 | 玖玖视频在线 | 久久av网 | www.狠狠色.com| 日韩在线观看第一页 | 日本久久久影视 | www.香蕉| 91精品在线观看视频 | 国产高清绿奴videos | 久久久国产精品视频 | 久久国产精品免费视频 | 91试看| 精品一区二区在线播放 | av高清在线| 久久公开免费视频 | 99在线视频观看 | 日日操天天爽 | 美女精品 | 国产精品国产三级国产专区53 | 日日爱影视 | 精品日韩av| 亚洲欧洲日韩在线观看 | 亚洲精品视频在线观看免费视频 | 国产高清在线一区 | 麻豆影视在线观看 | 欧美精品久久久久久久久久 | 91视频 - 88av | av中文天堂在线 | 97爱 | 色播五月激情五月 | 午夜精品一区二区三区在线播放 | 91大神一区二区三区 | 亚洲永久精品在线观看 | 久久精品99久久久久久2456 | 精品在线观看视频 | 日韩高清免费观看 | 黄色av电影网 | 日韩不卡高清视频 | 麻豆超碰 | 午夜色大片在线观看 | 久久超碰网 | 天堂va在线高清一区 | 六月丁香激情综合 | 亚洲精品国产精品乱码在线观看 | 在线观看黄网站 | 久久久综合九色合综国产精品 | 国产中文字幕一区二区 | 伊人宗合| 日韩女同一区二区三区在线观看 | 超碰在线人人草 | 91免费高清观看 | 色婷婷狠| 亚洲女人天堂成人av在线 | 激情图片久久 | 亚洲天堂网在线视频 | 色香网| 欧美成年网站 | 99国产免费网址 | 亚洲一区二区视频在线播放 | 天天爽天天摸 | 骄小bbw搡bbbb揉bbbb | 91免费观看网站 | 国产精品久久网站 | 久久99精品久久久久久秒播蜜臀 | 国产伦理精品一区二区 | 国产亚洲精品久久久久久电影 | 国产v在线 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 性色av免费在线观看 | 欧美做受高潮1 | 97在线视频观看 | 国产麻豆精品传媒av国产下载 | 久99视频 | 99资源网 | 99久久国产免费看 | 欧美色图亚洲图片 | 五月婷婷综合在线观看 | 日本精品va在线观看 | 天天干 天天摸 天天操 | 青青草视频精品 | 91av电影在线 | 亚洲人片在线观看 | 成人超碰在线 | av在线成人 | 国产精品不卡在线观看 | 国产精品久久久久久久久久久久午夜片 | 亚洲黄色免费观看 | 视频一区二区免费 | 精品国产伦一区二区三区观看说明 | 亚洲精品18日本一区app | 丁香久久久 | 国产精品第一页在线 | 亚洲精品美女视频 | 黄色a在线 | 久久久久国产精品www | 婷婷综合在线 | 欧美极品xxxx | 国产免费资源 | 免费黄在线观看 | 91精品推荐 | 一级成人免费视频 | 91一区二区在线 | 日韩欧美国产激情在线播放 | 欧美精品视| 亚洲国产精品女人久久久 | 久久免费观看少妇a级毛片 久久久久成人免费 | 香蕉影院在线 | 久久精品99精品国产香蕉 | 亚洲一区二区精品在线 | 99视频在线免费看 | 国产成人精品一二三区 | 亚洲视频在线免费看 | 97超碰人人澡人人 | 亚洲艳情| 日韩性久久 | 国产欧美综合在线观看 | 中文字幕视频三区 | 午夜精品久久久久久久久久久久久久 | 亚洲精品视频中文字幕 | 精品国产精品久久一区免费式 | 在线观看免费视频你懂的 | 国产无吗一区二区三区在线欢 | 中文字幕欲求不满 | 国产欧美最新羞羞视频在线观看 | 久久色在线观看 | 国产成人三级在线 | 日日狠狠 | 亚洲日本韩国一区二区 | 成人一级片免费看 | 国产成人精品一区二三区 | 在线观看免费黄色 | 国产精品免费久久久久影院仙踪林 | 国产女做a爱免费视频 | 在线观看国产v片 | www.av中文字幕.com | 97超级碰碰| 成片视频免费观看 | 久草视频网 | 国产第一二区 | 成人教育av| 成人国产精品 | 探花视频在线观看免费 | 全黄色一级片 | av在线免费观看网站 | 99夜色| 久久九九网站 | 久久国产精品久久久 | 久久99精品国产99久久 | 天天舔天天射天天操 | 激情网站免费观看 | 久久综合之合合综合久久 | 欧美精品久久久久久久 | 久久狠狠干 | 激情五月五月婷婷 | 欧美精品久久久久a | 日韩av免费大片 | 91麻豆精品国产91久久久无限制版 | 国产成人精品一二三区 | 久草在线中文视频 | 亚洲永久字幕 | 91视频在线| 国产资源网站 | 国产麻豆视频在线观看 | 九色精品免费永久在线 | 国内久久精品 | 久草在线免费播放 | 成年人免费在线播放 | 99国产视频在线 | 天天综合视频在线观看 | 在线久热 | 91久久精品一区二区二区 | 免费a v观看| 456免费视频 | 欧美激情精品久久久久久变态 | 日韩字幕在线 | 日韩理论 | 中文字幕永久免费 | 在线观看视频黄色 | 在线观看的av网站 | 天天操夜夜操国产精品 | 色婷婷久久一区二区 | 一级a毛片高清视频 | 久二影院 | 久久久国产电影 | 狠狠色丁香久久婷婷综合五月 | av短片在线观看 | 精品91| 中文高清av| 草在线视频 | 一区二区在线影院 | 国产精品网址在线观看 | 成人毛片一区二区三区 | 美女露久久 | 国产欧美日韩精品一区二区免费 | 香蕉在线观看视频 | 98久久| 日韩精品一区二区三区免费观看 | 91麻豆福利 | h动漫中文字幕 | 欧美日韩久久不卡 | 在线观看免费一区 | 欧美另类性 | 日韩一二三 | 高清av免费看| 国产欧美最新羞羞视频在线观看 | 国产一区久久 | 亚洲国产精品影院 | 婷婷激情五月 | 国产成人精品在线 | 天堂中文在线播放 | 国产精品免费视频久久久 | av电影一区二区三区 | 精品国产一区二区三区久久久久久 | 亚洲精品乱码久久久久久高潮 | 中文亚洲欧美日韩 | 天天综合中文 | 欧美一级欧美一级 | 欧美性性网 | 亚洲精品综合在线观看 | 国产精品美女久久久久久久久 | 最新午夜 | 日韩一区二区三区免费电影 | 在线视频中文字幕一区 | 最新午夜 | 久久久久免费精品视频 | 成人av免费播放 | 久久午夜影视 | 99资源网| 精品欧美在线视频 | 9ⅰ精品久久久久久久久中文字幕 | 综合色久| 国产毛片aaa | 91精品久久久久久综合五月天 | www.久久com| 国产福利精品在线观看 | 丁香在线 | 国内精品二区 | 精品国产视频在线观看 | 国产亚洲精品女人久久久久久 | 天天综合入口 | 超碰在线天天 | 在线观看视频99 | 超碰成人免费电影 | 操操综合 | www五月天婷婷 | 亚洲欧美日本一区二区三区 | 精品美女在线视频 | 草久久久久久 | 青草视频在线播放 | 五月婷婷激情六月 | 婷婷亚洲五月色综合 | 久久国产精品二国产精品中国洋人 | 四虎在线永久免费观看 | 中文字幕a∨在线乱码免费看 | 欧美日韩在线电影 | 欧美极品少妇xxxx | 久草在线免费看视频 | 九九九热视频 | 午夜精品久久久久久99热明星 | 黄色天堂在线观看 | 欧美国产日韩一区 | 国产视频一二三 | 久久久久婷 | 中文视频在线看 | 国产精品久久久久影院日本 | 久久久91精品国产一区二区精品 | 成人亚洲精品久久久久 | 成人一级电影在线观看 | 五月激情六月丁香 | 人人网av | 亚洲va欧洲va国产va不卡 | 米奇影视7777| 9797在线看片亚洲精品 | 欧美网址在线观看 | 国产一区二区三区在线免费观看 | 国产福利91精品张津瑜 | 欧美大片第1页 | 欧美一级片免费 | 麻豆 free xxxx movies hd | 亚洲在线网址 | 欧美在线不卡一区 | 在线播放日韩av | 日韩成人邪恶影片 | 色成人亚洲 | 亚洲视频在线播放 | 黄色的网站免费看 | 美女网站在线看 | 国产精品99久久99久久久二8 | 在线观看涩涩 | 国产亚洲欧美精品久久久久久 | 精品极品在线 | 精品视频区 | 国产小视频在线免费观看 | 久久精品aaa | 久久99精品国产麻豆婷婷 | 欧美日韩三级在线观看 | 成人久久18免费网站麻豆 | 97超碰中文字幕 | 亚洲精品视频在线看 | 国产亚洲精品久久久久动 | 97人人爽| 成人精品国产 | 欧美淫视频 | 日韩欧美视频免费看 | 草久电影 | 天天色综合天天 | 成人av电影免费在线播放 | 91完整版在线观看 | 成人禁用看黄a在线 | 五月天综合激情 | 亚洲黄色成人 | 精品女同一区二区三区在线观看 | 欧美日韩国产精品一区二区亚洲 | 久久爽久久爽久久av东京爽 | 中文字幕在线视频网站 | 日韩欧美精选 | 色婷婷综合久久久久中文字幕1 | 天天色视频 | 一级片免费观看 | 免费又黄又爽视频 | 亚洲电影成人 | 国产精品video爽爽爽爽 | 国产经典av | 国产精品电影在线 | 亚洲精品在线免费播放 | 日韩特级黄色片 | 色噜噜狠狠狠狠色综合久不 | 人人澡超碰碰 | 亚洲精品国产综合99久久夜夜嗨 | 国产午夜精品一区二区三区嫩草 | 人人擦| 亚洲毛片一区二区三区 | 亚洲成人动漫在线观看 | 天天干天天操av | 激情在线五月天 | 婷婷久草| 国产午夜精品福利视频 | 欧美日韩大片在线观看 | www.成人精品| 中文字幕一区二区三区精华液 | 九九热精品视频在线观看 | 操操操av| 欧美日韩亚洲第一页 | 国产91精品看黄网站 | 成人理论电影 | 欧美日韩亚洲精品在线 | 欧美精品一区二区在线播放 | a视频在线播放 | 一级片免费视频 | 色综合久久88色综合天天6 | 黄色91在线观看 | 九九久久电影 | 免费看av片网站 | 国产精品区一区 | 日韩成人精品在线观看 | 黄色小网站在线 | 日韩中文幕 | 天天色综合三 | 在线激情小视频 | 91在线视频在线观看 | 婷婷久久一区 | 丁香亚洲| 亚洲成人精品久久 | 久久久久久久亚洲精品 | 久久婷婷久久 | 国产成在线观看免费视频 | 一区二区三区在线电影 | 超碰97人人在线 | 国产99久久99热这里精品5 | 精品国产一区二 | 久久艹国产视频 | 99久久激情视频 | 91精品一区二区在线观看 | 毛片网在线播放 | 免费成人av在线看 | 精品国产欧美一区二区 | 日韩一级黄色av | 久久久精品国产一区二区电影四季 | 国产精品成人免费 | av中文字幕在线免费观看 | 国产成人一区二区三区久久精品 | 日韩高清av在线 | 久久久国产影院 | 五月天亚洲婷婷 | 日黄网站| 国产精品9999 | 国产r级在线观看 | 成人午夜剧场在线观看 | 免费av影视| 亚洲视频一| 在线精品观看国产 | 色姑娘综合天天 | 国产欧美综合在线观看 | 婷婷色av | 欧美激情第一区 | 97成人在线免费视频 | 日韩欧美在线高清 | 免费高清看电视网站 | 国产无套精品久久久久久 | 国产高清免费 | 亚洲精品欧美成人 | 99久久婷婷国产精品综合 | 亚洲成a人片在线观看网站口工 | 国产精品国产毛片 | 最近乱久中文字幕 | 五月天国产| 在线视频观看91 | 在线欧美日韩 | 欧美日本在线视频 | 97色婷婷成人综合在线观看 | 99热在线这里只有精品 | 国产精品淫片 | 日韩欧美在线观看一区 | 精品天堂av | 日韩av免费在线看 | 国产精品欧美一区二区三区不卡 | 欧美在线观看小视频 | 久久草草热国产精品直播 | 99精品亚洲| 国产精品视频地址 | 奇米影视8888在线观看大全免费 | 91在线区 | 香蕉网在线 | 久久私人影院 | 欧美日韩激情视频8区 | 亚洲影院天堂 | 中文区中文字幕免费看 | 婷婷五综合 | 免费看黄的 | 韩日三级在线 | 亚洲激情影院 | 免费一级片在线观看 | 色爱区综合激月婷婷 | 欧美精品黑人性xxxx | 日韩中文字幕免费视频 | 夜夜操天天摸 | 日韩欧美在线观看一区二区 | 亚洲干视频在线观看 | 美女黄色网在线播放 | 国产99久久九九精品 | 狠狠搞,com| 色婷婷啪啪免费在线电影观看 | 99在线视频网站 | 欧美热久久 | 日韩性久久 | 日本少妇高清做爰视频 | www.天天成人国产电影 | 欧洲激情在线 | 欧美日韩中文国产一区发布 | www色| 精品国产欧美一区二区三区不卡 | 久久久影院官网 | 国产精品久久久久久久久久久久午 | 久久99久久99精品免费看小说 | 欧美日韩国产精品一区二区亚洲 | 国产精品久久久久一区 | 日韩电影中文字幕在线 | 天天色天天操天天爽 | 欧洲亚洲国产视频 | 国产一级一级国产 | 色诱亚洲精品久久久久久 | 国产剧情久久 | 日韩久久在线 | 日日摸日日添日日躁av | 日韩有码在线观看视频 | 视频国产一区二区三区 | 国产精品成人免费精品自在线观看 | 色婷在线 | 日韩在线视频一区二区三区 | 狠狠狠狠干 | 国产精品日韩在线播放 | 国产无遮挡又黄又爽馒头漫画 | 亚洲黄色av网址 | 国产专区在线 | 欧美一级特黄高清视频 | 日韩精品在线视频免费观看 | 亚洲视频免费 | 日日爱视频 | 国产一二三四在线视频 | 看毛片网站 | 久久一精品 | 人人玩人人爽 | 青青久草在线视频 | 色婷婷久久 | 亚洲午夜精品久久久久久久久久久久 | 在线观看 国产 | 五月天中文字幕 | 久久成人久久 | 日韩免费福利 | 色综合色综合色综合 | 日韩午夜精品 | 免费三级骚| 插久久 | 日韩电影在线观看一区二区三区 | 99色在线 | 色视频在线免费观看 | 日韩精品免费一区二区在线观看 | 狠狠地日 | 一区二区三区www | 在线观看免费91 | 99久久婷婷国产一区二区三区 | 午夜美女福利直播 | 久久综合9988久久爱 | 亚洲韩国一区二区三区 | 啪啪资源| 亚洲高清视频在线观看 | 日韩性久久 | 91久久精 | 黄色大全免费网站 | 97人人网| 久久成年人 | 国产精品女人久久久 | 国产中文字幕在线视频 | 精品久久久久久一区二区里番 | 在线99视频 | 在线视频日韩 | 看av免费 | 日韩av影视 | 伊人五月婷 | 91免费网址 | 久久激情电影 | 亚洲成色 | av性在线| 91高清免费 | 国产色爽 | 欧美日韩精品免费观看视频 | 毛片黄色一级 | 久久国产精品系列 | 99热这里精品| 日韩网站在线免费观看 | 亚洲黄色免费电影 | 国产精品自产拍在线观看桃花 | 久久国产精品视频免费看 | 国产精品 中文在线 | 日韩精品综合在线 | 日日干av| 在线观看日韩av | 欧美一级日韩三级 | 日韩欧美在线视频一区二区三区 | 中文在线免费视频 | 久久精品免费播放 | 91免费网 | 欧美淫aaa免费观看 日韩激情免费视频 | 国内精品久久久久影院一蜜桃 | 免费视频久久久久久久 | 日韩欧美xxx| 探花视频免费在线观看 | 夜夜夜 | 国产原厂视频在线观看 | 国产福利在线 | av电影中文字幕在线观看 | 久久亚洲综合国产精品99麻豆的功能介绍 | 91精品国产乱码在线观看 | 一区二区三区国 | 中文字幕.av.在线 | 美女网站黄免费 | 国产精品久久久久久久av大片 | 久久久久在线观看 | 男女免费视频观看 | 在线a视频免费观看 | 在线日韩| 日韩精品不卡在线 | 91麻豆视频网站 | 中文字幕免费观看视频 | 国产成人精品av久久 | 国产99久久久精品 | 亚洲成人av一区 | 国产精品久久久久久999 | 最近更新的中文字幕 | 国产精品欧美 | 亚洲 在线 | 日韩精品一区二区三区高清免费 | 欧美一级视频一区 | 国产一区成人 | 国产精品亚州 | 日韩精品久久一区二区三区 | 91网址在线观看 | 五月天激情综合 | 日本中文乱码卡一卡二新区 | 五月天色站 | 大片网站久久 | 国产精品视频免费在线观看 | 国产 字幕 制服 中文 在线 | 午夜丁香网 | 成人网页在线免费观看 | 一区二区三区电影 | 欧美影院久久 | 久久婷婷一区二区三区 | 久久视频在线观看中文字幕 | 成人av一区二区在线观看 | 国产精品9999 | 国产日产精品一区二区三区四区的观看方式 | 在线v片免费观看视频 | 亚洲综合国产精品 | 外国av网| 69视频在线| 亚州性色 | 亚洲精品久久久久www | 国产色综合天天综合网 | 日韩高清激情 | 色五月激情五月 | 不卡的一区二区三区 |