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

推薦する

XHTML ブロックレベルタグの概要

* 住所 - 住所* blockquote - ブロック引用* center - 中央揃えブロック*...

フォームデータを取得するための Node.js メソッドの 3 つの例

序文Nodejs はサーバーサイド言語です。開発中、登録やログインなどでは、判断のためにフォームを通...

VirtualBox+Ubuntu16でKubernetesクラスタを構築する実装

目次Kubernetesについて基本的な環境の準備VirtualBoxをインストールするUbuntu...

Tomcat サーバーの設定と Web プロジェクトの公開に関する IDEA グラフィック チュートリアル

1. Webプロジェクトを作成したら、Tomcatを例にサーバーを構成する必要があります。 2. 実...

MySQL ツリー構造テーブルの設計と最適化に関する簡単な説明

序文多くの管理・オフィスシステムでは、ツリー構造がいたるところで見られます。たとえば、「部門」や「機...

MySQL チュートリアル データ定義言語 DDL の例 詳細な説明

目次1. SQL言語の基本機能の紹介2. データ定義言語の目的3. データベースの作成と破棄4. デ...

Linux ファイルシステムの説明: ext4 以降

今日は、ext3 や他の以前のファイル システムとの違いを含め、ext4 の歴史について説明します。...

Linuxの貼り付けコマンドの使い方

01. コマンドの概要貼り付けコマンドは各ファイルを列ごとに結合します。これは、2 つの異なるファイ...

プライベートウェアハウス(レジストリとハーバー)を構築するためのDockerの実装

使用される Docker イメージが増えるにつれて、イメージを保存する場所、つまりウェアハウスが必要...

MySQL innodb B+ツリーの高さを取得する方法

序文MySQL の InnoDB エンジンがインデックスの保存に B+tree を使用する理由は、デ...

HTML タグ マーキーを使用してスクロール効果を実現する簡単な方法 (必読)

ページの自動スクロール効果は JavaScript で実現できますが、今日偶然、JS 制御なしでさま...

Reactはラジオコンポーネントのサンプルコードを実装します

この記事の目的は、最も明確な構造を使用していくつかのコンポーネントの基本機能を実装することです。皆さ...

HTML マウス CSS コントロール

一般的に、マウスは上向きの斜め矢印として表示され、テキストの上に移動すると垂直線になり、ハイパーリン...

mysql-8.0.11-winx64.zip の詳細なインストール チュートリアル

zip インストール パッケージをダウンロードします。 MySQL8.0 For Windows z...

Windows 上で Nginx+Tomcat クラスタを実装するプロセスの分析

導入: Nginx (エンジン エックスと同じ発音) は、BSD のようなプロトコルに基づいてリリー...