A5:SQL Mk-2

開発のこと、日々のこと

【要望】MySQL ER図リバース生成時のデフォルト値反映

ホーム フォーラム A5:SQL Mk-2掲示板 【要望】MySQL ER図リバース生成時のデフォルト値反映

4件の投稿を表示中 - 1 - 4件目 (全4件中)
  • 投稿者
    投稿
  • #6858 返信
    ddddchi
    ゲスト

    いつもsql mk2に大変助けられております。ありがとうございます。

    MySQLにてER図リバース生成するとDEFAULT値が反映されないのはおそらく仕様かと思いますが、
    timestampカラムのDEFAULT NULL指定が反映されないことに困っております。

    MySQLのtimestampはテーブル内でtimestampカラムが2個目だった場合にDEFAULT 0にする仕様があるのでそれをNULLとしたいのですが、実テーブル側に指定したDEFAULT値がER図側にはリバース生成で反映されず…

    https://dev.mysql.com/doc/refman/5.6/ja/timestamp-initialization.html

    お手すきの際にご対応/ご検討お願い致します。

    #6890 返信
    松原正和
    キーマスター

    ddddchiさんこんにちは。
     
    MySQL 8で検証したのですが、上述の2個目のtimestampカラムが 0日時で初期化されるという挙動は確認されませんでした。バージョン間の挙動の違いでしょうか…。
     
    なお、ER図のリバース生成生成時はデフォルト値の指定があれば、入ってくるはずなのですが、うまく動作していないのでしょうか?。

    テーブルエディタの「カラム」タブは正しくデフォルト値が表示されますでしょうか?。A5:SQL Mk-2では「show columns from xxxx.yyyy」形式でカラムの定義を取得します。

    #7307 返信
    ddddchi
    ゲスト

    返信大変遅くなり申し訳ございません

    MySQL 5.6.13ですが、
    実テーブル側でshow columns from クエリでDEFAULT NULLが指定されている場合でも、
    sqlmk2のテーブルエディタのカラムタブのデフォルトに NULL 指定が表示されていないようです おそらくER図に反映されないのはこの段階で表示されていないから、のような気がします

    MySQL 8だと暗黙のデフォルト値の取り扱いが変わったのかもしれませんね。

    #7367 返信
    松原正和
    キーマスター

    ddddchi さんこんにちは。
     
    確認したところ、デフォルト値にnullを指定したtimestamp型は、show columns from…で表示したところ、デフォルト値はnullでした。ただ、デフォルト値を指定しないtimestamp型はcurrenttimestampなり、0000-00-00 00:00:00だったりするのですが、「A5:SQL Mk-2はデフォルト値は指定しなければ nullが入る」を前提としているため、ここで齟齬が発生したようです。
     
    MySQLのtimestampではデフォルト値がnullで取得された場合、ER図のデフォルト値にも nullを設定するように修正しますので少々お待ちください。

4件の投稿を表示中 - 1 - 4件目 (全4件中)
返信先: 【要望】MySQL ER図リバース生成時のデフォルト値反映で#7307に返信
あなたの情報:




コメントは受け付けていません。