[前][次][番号順一覧][スレッド一覧]

mysql:16489

From: yoku0825 <yoku0825 <yoku0825@xxxxxxxxxx>>
Date: Sat, 27 Oct 2018 00:27:31 +0900
Subject: [mysql 16489] Re: [mysql 16488] Re: Select文でのユーザ変数への代入機能が削除予定になった経緯

yoku0825といいます。

肌感覚だと、

> SELECT などのほかのステートメントでは、予想した結果が得られることもありますが、これは保証されません。


https://dev.mysql.com/doc/refman/5.6/ja/user-variables.html


と言っているにも関わらず、使っちゃって事故になるケースが多いからかな…とか思っています。

ステートメントベースだとレプリケーションアンセーフですし、最近の「データを守るような硬い動作」に寄せている流れなんではないでしょうか?


> ステートメントベースレプリケーションで、セッション変数は、テーブルを更新するステートメントで使用されるときに正しく複製されません。


https://dev.mysql.com/doc/refman/5.6/ja/replication-features-variables.html

2018年10月27日(土) 0:12 とみたまさひろ <tommy@xxxxxxxxxx>:

> とみたです。

>

> On Fri, 26 Oct 2018 23:11:11 +0900 (JST)

> <mysql201706mailing@xxxxxxxxxx> wrote:

>

> > 明智重蔵です。

> > MySQL8.0の機能について調べていて、

> > MySQL8.0のマニュアルで興味深い記述を見つけました。

> >

> > https://dev.mysql.com/doc/refman/8.0/en/user-variables.html

> >

> > >Previous releases of MySQL made it possible to assign a value to a user

> variable in statements other than SET.

> > >This functionality is supported in MySQL 8.0 for backward compatibility

> > >but is subject to removal in a future release of MySQL.

> >

> > 要約すると、Set文以外(例えばSelect文)でのユーザ変数への値の代入機能は削除予定です。

> > という記述なのですが、

>

> おー、こんな記述が。5.7のマニュアルにもありますね。

>

> https://dev.mysql.com/doc/refman/5.7/en/user-variables.html

>

> | It is also possible to assign a value to a user variable in statements

> other than SET.

> | (This functionality is deprecated in MySQL 8.0 and subject to removal in

> a subsequent release.)

>

> > 削除予定になった経緯が分かる方っていますか?

> > MySQL開発者のブログとかに書かれてませんかね?

>

> 何故でしょうね。うーむ、時々便利に使ってたのに…。

>

> --

> とみたまさひろ <tommy@xxxxxxxxxx>

> 日本MySQLユーザ会 http://www.mysql.gr.jp

>

>


添付ファイル

[前][次][番号順一覧][スレッド一覧]

   @ 16487 2018-10-26 23:11 [<mysql201706mailing@] Select文でのユーザ変数への代入機能が削除予定になった経緯
     16488 2018-10-27 00:11 ┣[とみたまさひろ <tomm]                                       
-> @ 16489 2018-10-27 00:27 ┃┗[yoku0825 <yoku0825@x] Re: [mysql 16488] Re: Select文でのユーザ変数への代入機能が削除予定になった経緯
   @ 16495 2018-12-04 23:48 ┗[<mysql201706mailing@] Re: [mysql 16487] Select文でのユーザ変数への代入機能が削除予定になった経緯