0
0

More than 1 year has passed since last update.

MySQLで、カラムの型を変更する

Posted at

はじめに

開発環境はrailsのデータベースを使用しており、本番環境では「Amazon RDS」の「MySQL」を使用していた。
そこでカラムの型を変更する必要があったので、下記のコードを実行したら問題なく変更できた。

結論

MySQLに接続し、以下のコードを実行してください

ALTER TABLE [テーブル名] MODIFY [カラム名] [変更したい型];

経緯

開発環境のRailsで緯度、経度を登録しているテーブルがあり、それぞれのカラムをfloatで登録していました。

しかし、本番環境の「Amazon RDS」にそのまま移行すると、登録していた数値が正しく表示されませんでした。

おかしいと思って調べてみると、floatは単精度浮動小数点実数と言って有効桁数が7桁までとのこと。

一方で、doubleというデータ型であれば、倍精度浮動小数点実数と言って有効桁数が16桁まであるようです。

なので、対象のデータ型をfloatからdoubleに変更すれば良さそうだと気づきました。

実行

1.MySQLに接続し、データベース一覧を確認します

SHOW DATABASES;

2.上記のリストの中から、該当のデータベースに移動します

USE [データベース名];

3.テーブルの一覧を表示します
 変更したいテーブルを確認します

SHOW TABLES;

4.現状のテーブル構成を確認しておきましょう

DESC [該当のテーブル名];

5.それでは、実際にカラムのデータ型を変更してみましょう

#NOT NULL制約をつけたい場合は、最後にNOT NULLをつけてください
ALTER TABLE [テーブル名] MODIFY [カラム名] [変更したい型] NOT NULL;

#例として、テーブル名:check_points、カラム名: latitude、変更したい型: DOUBLEだった時
ALTER TABLE check_points MODIFY latitude DOUBLE NOT NULL;

6.テーブルが変更されたことを確認してください

DESC [該当のテーブル名];

以上の作業で、無事にカラムのデータ型を変更することができました!

参考になった記事

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0