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ミドルウェアの仕組みの詳細な説明

推薦する

Vue プロジェクトをパッケージ化して Apache サーバーにデプロイする手順

開発環境では、vue プロジェクトは、ローカルで Express サーバーを構築することをベースにし...

js における関数のネストとクロージャの詳細

目次1. 範囲2. 関数の戻り値3. 関数のネスト4. 終了5. クロージャの実用的応用1. 内部変...

シンプルで簡単なJavaScript開発のためのSvelte実装原理の詳細な説明

目次デモ1フラグメントの作成スヴェルトコンポーネント状態を変更できるデモSvelte は長い間存在し...

HTML の 5 種類のスペースの意味

HTML には、幅の異なる 5 つのスペース エンティティが用意されています。非改行スペース ( )...

CentOS7で新しいデータディスクをマウントするための完全な手順

序文新しい VPS を購入しました。新しい VPS のデータ ディスクはデフォルトではシステムにマウ...

Webサービスのリモートデバッグとタイムアウト動作原理の分析

Webサービスのリモートデバッグ.NET では、WEBSERVICE のリモート デバッグ機能はデフ...

npm グローバル モジュールのデフォルトのインストール パスを変更するためにノードのインストールをカスタマイズする手順

node を D ドライブにインストールしましたが、C ドライブのスペースを占有したくなかったため、...

Nginx フォワード プロキシとリバース プロキシ、および負荷分散機能の構成コード例

この記事は主に、Nginx のフォワード プロキシとリバース プロキシ、および負荷分散機能の設定コー...

Centos7でのMySQLインストールチュートリアル

MySQLインストールチュートリアル、参考までに具体的な内容は次のとおりです。 1. ダウンロードY...

div の幅が width:100% に設定されていて、パディングまたはマージンが親要素を超えてしまう問題の解決方法

序文この記事では、div の幅を 100% に設定し、親要素を超えてパディングまたはマージンを設定す...

Linux での scp および sftp コマンドの詳細な説明

目次序文1. SCPの使用法2. sftpを使用する3. scp と sftp の違いは何ですか?ど...

Vue.jsクラウドストレージで画像アップロード機能を実現

序文ヒント:以下はこの記事の主な内容です。以下のケースを参考にしてください。 1. オブジェクトスト...

Vue における属性とプロパティの具体的な使用法と違い

目次Vue.jsにおける属性とプロパティ値および関連する処理として属性とプロパティの概念属性とプロパ...

nginx プロキシ サーバーで双方向証明書検証を構成する方法

証明書チェーンを生成するスクリプトを使用して、ルート証明書、中間証明書、および 3 つのクライアント...

Vue は Tencent Map を統合して API を実装します (デモ付き)

目次執筆の背景プロジェクトの説明事前準備注記執筆の背景以前のプロジェクトではTencent Maps...