MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLでカラムのデータ型をTEXT型からTIMESTAMP型に変更する方法

MySQLでカラムのデータ型を TEXT 型から TIMESTAMP 型に変更するには、ALTER コマンドを使用します。

基本構文

データ型を変更するための構文は以下のとおりです。

ALTER TABLE テーブル名 MODIFY COLUMN カラム名 TIMESTAMP;

実際に試してみよう

それでは、構文の動作を確認するために、実際にテーブルを作成して検証していきましょう。

1. テーブルの作成

まず、TEXT 型のカラムを持つテーブルを作成します。テーブル作成のクエリは以下のとおりです。

mysql> create table textTotimestampdemo
    - > (
    - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    - > Source text
    - > );
Query OK, 0 rows affected (0.44 sec)

2. テーブル構造の確認

DESC コマンドを使うと、テーブルの構造(カラム定義)を確認できます。構文は以下のとおりです。

DESC テーブル名;

実際に実行してみましょう。

mysql> desc textTotimestampdemo;

実行結果は以下のとおりです。Source カラムが text 型として定義されていることがわかります。

+--------+---------+------+-----+---------+----------------+
| Field  | Type    | Null | Key | Default | Extra          |
+--------+---------+------+-----+---------+----------------+
| Id     | int(11) | NO   | PRI | NULL    | auto_increment |
| Source | text    | YES  |     | NULL    |                |
+--------+---------+------+-----+---------+----------------+
2 rows in set (0.04 sec)

3. データ型をTIMESTAMP型に変更

次に、以下のクエリを実行して、Source カラムのデータ型を TEXT 型から TIMESTAMP 型へ変更します。

mysql> alter table textTotimestampdemo modify column Source TIMESTAMP;
Query OK, 0 rows affected (1.25 sec)
Records: 0 Duplicates: 0 Warnings: 0

4. 変更結果の確認

再度 DESC コマンドでテーブル構造を確認しましょう。

mysql> desc textTotimestampdemo;

実行結果は以下のとおりです。

+--------+-----------+------+-----+---------+----------------+
| Field  | Type      | Null | Key | Default | Extra          |
+--------+-----------+------+-----+---------+----------------+
| Id     | int(11)   | NO   | PRI | NULL    | auto_increment |
| Source | timestamp | YES  |     | NULL    |                |
+--------+-----------+------+-----+---------+----------------+
2 rows in set (0.00 sec)

上記の出力を見ると、Source カラムのデータ型が text から timestamp に正常に変更されていることが確認できます。

注意点

既存のデータが入っているカラムに対してデータ型を変更する場合、元の値が TIMESTAMP 型として有効な形式(例:'YYYY-MM-DD HH:MM:SS')でないと、変換エラーや予期しない値(NULL や '0000-00-00 00:00:00')になる可能性があります。事前にデータのバックアップを取っておくことをおすすめします。

  1. MySQLクエリでテーブル列の日付形式を変更する方法

    MySQLクエリでテーブル列の日付形式を変更する方法 MySQLでテーブルに保存された日付の表示形式を変更するには、DATE_FORMAT()関数を使用します。この記事では、サンプルテーブルを作成し、実際に日付形式を変換するまでの手順をサンプルコード付きでわかりやすく解説します。 1. サンプルテーブルの作成 まず、datetime型の列を持つテーブルを作成しましょう。 mysql> create table DemoTable1906 ( DueTime datetime ); Query OK, 0 rows affected (0.00 sec) 2.

  2. MySQLでテーブルの重複を除いたレコードから平均値を取得するクエリの書き方

    MySQLで平均値を求めるには AVG() 関数を使用します。さらに DISTINCT と組み合わせることで、重複しているレコードを除外した状態で平均を計算することができます。この記事では、実際にサンプルテーブルを作成しながら、個別(ユニーク)なレコードから平均値を取得する方法を解説します。サンプルテーブルの作成まず、以下のクエリでテーブルを作成します。mysql> create table DemoTable1934 ( StudentName varchar(20), StudentMarks int ); Query OK, 0 rows affec