MySQL で datetime 型のデフォルト値を設定する方法

MySQL で datetime 型のデフォルト値を設定する方法

Navicat クライアントを通じてデフォルトの日時値を変更する際に問題が発生しました。

データベース テーブル フィールド タイプ datetime は、最初はデフォルトで NULL に設定されています。インターフェイスを通じてデフォルト値が現在の時刻に設定されると、「1067 - 'CREATE_TM' のデフォルト値が無効です」というプロンプトが表示されます。ただし、この問題はテーブルの作成時には発生しません。たとえば、テーブル作成ステートメントは次のようになります。

テーブル `app_info1` を作成します ( 
 `id` bigint(21) unsigned NOT NULL AUTO_INCREMENT COMMENT '主キーID', 
 `app_id` varchar(30) DEFAULT NULL COMMENT 'アプリケーションコード', 
 `app_name` varchar(30) DEFAULT NULL COMMENT 'アプリケーション名', 
 `package_name` varchar(100) DEFAULT NULL COMMENT 'パッケージ名', 
 `version` int(11) DEFAULT NULL COMMENT 'バージョン番号', 
 `version_name` varchar(20) DEFAULT NULL COMMENT 'バージョン名', 
 `icon_url` varchar(512) デフォルト NULL コメント 'アイコンアドレス', 
 `download_url` varchar(512) デフォルト NULL コメント 'ダウンロード URL', 
 `summary` varchar(512) デフォルト NULL コメント '概要', 
 `desc` varchar(512) デフォルト NULL コメント '説明', 
 `app_status` int(4) デフォルト '0' コメント 'ステータス 0: 利用可能、1: 削除済み', 
 `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '作成時刻', 
 `create_user` varchar(30) デフォルト NULL コメント 'creator', 
 `modify_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '変更時刻', 
 `modify_user` varchar(30) デフォルト NULL コメント 'Modifier', 
 主キー (`id`) 
) ENGINE=InnoDB AUTO_INCREMENT=2 デフォルト CHARSET=utf8;

次に、スクリプトを通じてフィールドを直接変更してみましたが、これも次のように問題ありませんでした。

テーブル ts_role を変更する 
MODIFY列create_tm datetimeデフォルトCURRENT_TIMESTAMPコメント'作成時刻'

もちろん、私がインストールした MySQL は 5.6 以上であり、他のバージョンは試していません。

MySQL の datetime 型のデフォルト値を設定する上記の方法は、エディターが皆さんと共有する内容のすべてです。 皆さんの参考になれば幸いです。 また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • MySQL における Datetime と Timestamp の使用の概要
  • MySQL における datetime と timestamp の違いと選択
  • MySQL から Excel にテーブルデータをエクスポートする際の日時形式に関する簡単な説明
  • MySQL における datetime と timestamp の違いと使い方
  • MySQL データベースで datetime 型を作成する方法

<<:  nginx設定ファイルの場所を見つける方法の詳細な説明

>>:  Node.jsミドルウェアの仕組みの詳細な説明

推薦する

Maven モードで Tomcat ソースコードを実行する方法

序文最近、Tomcat の起動プロセスを分析していました。Tomcat のソース コードはアイデア次...

高度な CSS の 3 つの方法を使用して複数行の省略を実装するサンプル コード

序文これは古くからの要望ですが、オンラインで解決策を探している人はまだ多く、特に検索結果の上位にラン...

JS ES 新機能テンプレート文字列

目次1. テンプレート文字列とは何ですか? 2. 複数行のテンプレート文字列2.1 式付きテンプレー...

CSS ワールド - コード実践: 画像の Alt 情報の表示

ただし、デフォルトの src を持つ <img> 要素を使用してスクロール読み込み効果を...

Vue でインデックスをキー属性値として使用することが推奨されないのはなぜですか?

目次序文キーの役割差分アルゴリズムにおけるキーの役割ヘッドノードを同期するテールノードを同期する新し...

純粋な CSS 流星群の背景サンプルコード

GitHubアドレス、気に入ったらスターを付けてくださいプラグインのプレビューチュートリアルコード表...

IEの送信フォームの記録履歴クリックリターン情報を実現するためのCSSスタイルコントロールはまだ残っています

これは主に CSS スタイルのコントロールと META タグです。コードをコピーコードは次のとおりで...

Vue3 ミックスインの使い方

目次1. mixin の使い方は? 2. ミックスイン使用時の注意2.1. ミックスイン オブジェク...

Linux でファイルをあいまい検索するのに適したコマンドは何ですか?

1. はじめにこの記事では、主に Linux システムでコマンドライン ツールを使用してファイルを...

3Dカルーセル効果を実現するjs

この記事では、3Dカルーセル効果をjsで実装するための具体的なコードを参考までに共有します。具体的な...

MySQL Workbenchのダウンロードと使用方法のチュートリアルの詳細な説明

1. MySQL WorkbenchをダウンロードするWorkbench は、MySQL のグラフィ...

ウェブサイトをIE6、7、8、9の古いバージョンに対応させるための3つのソリューション

Microsoft は後からブラウザの研究開発に力を入れてきましたが、実際のところ、最新の IE ブ...

Linux 基本チュートリアル: 特別な権限 SUID、SGID、SBIT

序文Linux のファイルまたはディレクトリの権限については、共通の rwx 権限を知っておく必要が...

Vue の v-model ディレクティブと .sync 修飾子の違いの詳細な説明

目次vモデル.sync微妙な違い機能シナリオを要約します。 vモデル <!--親コンポーネント...

MySQL テーブル構造を Excel にエクスポートする方法

要件は次のとおりですテーブル構造、フィールドコメント情報、テーブル名などをエクスポートします。これは...