2017-03-26 10 views
-3

私はmariadb 5.3がmysql5.3を同じ機能で置き換えることができることを知っています。
mysql5.7をどのバージョンのmariadbに置き換えることができますか?JSON process functionsバージョンmariadbはmysql 5.7を置き換えることができますか?

+0

これは同じ機能ではありません。たとえば、JSON_APPEND()はありません – jackson883

+0

https://mariadb.com/kb/en/mariadb/json_array_append/ – RiggsFolly

+0

私はそれが可能であると示唆しませんでした。私は、それが可能かどうかを調べる方法だと提案しました! – RiggsFolly

答えて

3

MariaDB 10.2.4+には、現在のMySQL 5.7と同じJSON関数があります。さらに、MariaDB 10.2は、機能JSON_VALUE,JSON_QUERY,JSON_EXISTS,JSON_COMPACTを提供します。

MariaDBにはJSON_APPENDがなく、MySQL 5.7もありません。 MySQL 5.7.9ではJSON_ARRAY_APPENDに変更されました。MySQL documentationを参照してください。

MariaDB 10.2には、column->pathcolumn->>pathの演算子がありません。

MariaDB 10.2にはJSONデータ型がありません。

両方の実装に存在する関数は、特に標準で結果を明示的に定義していない場合やエラー処理では、必ずしも同一に動作するとは限りません。

違いのいくつかの例:

  • MySQLは(このジレンマ は、異なるソースの長さで議論されたし、現在はそれが標準で重複キーを持つ禁止していない だとしてMariaDBは重複したキーを削除しません。 、 はそれを嫌う)。
  • MariaDBは、MySQLのようにJSONのキー/値を並べ替えません。
  • MySQLがエラーを返す場合、MariaDBは多くの場合、NULLと警告を返します。 は、デフォルトの動作であるNULL ON ERRORが の標準に固執するために行われます。 ON ERROR節は最終的に実装される になると予想されます。

一般的に、MariaDBは、実装する標準のサブセットに可能な限り近づきます。

+0

転送データベースはPHPスクリプトを検証する必要がありますか? – jackson883

関連する問題