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文でのユーザ変数への代入機能が削除予定になった経緯