質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Q&A

解決済

2回答

1673閲覧

新たなカラムを追加した際にエラーが出てしまいました

toll_tree

総合スコア199

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

0グッド

0クリップ

投稿2019/04/16 03:45

テーブル「user_2」に追加のカラムとしまして、「user_id」を既存のカラムの「id」の後ろに挿入したいのですが、
下記のsqlを入力しますとエラーとなってしまいます。

mysql

1ALTER TABLE `user_2` ADD COLUMN `user_id` varchar(255) NOT NULL PRIMARY_KEY AFTER id;

エラーの内容は以下になります。
「ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'AFTER id' at line 1」

どなたか、エラーの解決方法を教えて頂けましたら幸いです。
よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

user_2に現時点でprimary keyの指定がない前提でよいですね?

「PRIMARY_KEY」を「PRIMARY KEY」としてください

投稿2019/04/16 03:51

yambejp

総合スコア114574

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

toll_tree

2019/04/16 03:54

ご回答ありがとうございます。 いえ、実は既存の「id」カラムには「PRIMARY KEY」を設定しておりますが、新たに一意のカラムを追加したかった為、「PRIMARY KEY」を指定しております。
yambejp

2019/04/16 03:59

primay keyは1テーブルに1個しか指定できません(ただし複数行に渡ってもOK) 一意のカラムならunique key指定でよいでしょう create table tbl(id int primary key auto_increment,val1 int,val2 varchar(20)); alter table tbl add column user_id varchar(255) not null unique key after id;
toll_tree

2019/04/16 04:03

ご返信ありがとうございます。 primary keyが一つテーブルに一つしか設定できないのは知りませんでした。 「unique key」調べてみたいと思います。
guest

0

すでにPRIMARY KEYがあるのでは?
ALTER TABLE DROP PRIMARY KEY の跡カラムを追加、PRIMARY KEYを再設定しては?

投稿2019/04/16 03:57

Orlofsky

総合スコア16415

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yambejp

2019/04/16 04:02

primary keyの二重定義の場合のエラーとは異なるので まずはtypoみたいですよ
toll_tree

2019/04/16 04:04

primary keyが重複してしまっていたため、yamabeさんに教えて頂きました「unique key」で試してみたいと思います
toll_tree

2019/04/16 04:14

primary key の部分をunique keyに差し替えましたら、カラムを追加できました。 ありがとうございました
Orlofsky

2019/04/16 04:23

primary_key ね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問