テーブル定義が正しくありません。自動カラムは 1 つだけ指定でき、キーとして定義する必要があります。 - MySQL エラーの解決方法: テーブル定義が正しくありません。自動カラムは 1 つだけ指定でき、キーとして定義する必要があります。

WBOY
リリース: 2023-10-05 11:05:15
オリジナル
2728 人が閲覧しました

Incorrect table definition; there can be only one auto column and it must be defined as a key - 如何解决MySQL报错:错误的表定义;只能有一个自动列,并且必须定义为键

MySQL エラーの解決方法: テーブル定義が間違っています。自動列は 1 つだけ存在でき、キーとして定義する必要があります。具体的なコード例が必要です。

近年、MySQLデータベースへの応用がますます普及してきていますが、使用中にさまざまなエラー報告に遭遇することがよくあります。その中でよくあるエラーは、「テーブル定義が間違っています。自動列は 1 つしか存在できず、それをキーとして定義する必要があります。」です。このエラーは通常、テーブルを作成するときに発生するため、初心者にとっては頭の痛い問題かもしれません。この記事では、このエラーの理由を詳細に分析し、問題を解決するための具体的なコード例を示します。

まず、このエラーの理由を理解しましょう。 MySQL データベースでは、テーブル内に自動インクリメント列が 1 つだけ存在できる必要があり、この列がテーブルの主キーである必要があります。テーブルの作成中にこのルールに違反すると、上記のエラーが発生します。次に、この問題を解決する方法をコード例の形で示します。

たとえば、学生の情報を保存するために、Students という名前のテーブルを作成しました。各学生に一意の学生番号を割り当て、その学生番号を主キーとして使用したいと考えています。以下は、間違ったテーブル定義の例です。

CREATE TABLE Students (
    id INT AUTO_INCREMENT,
    name VARCHAR(50),
    PRIMARY KEY (name)
);
ログイン後にコピー

上記の例では、自動増加する列 ID を作成しましたが、name 列を主キーとして定義しました。これは MySQL のルールに違反しているため間違っています。

この問題を解決するには、id 列を主キーとして定義する必要があります。以下は、変更された正しいテーブル定義の例です。

CREATE TABLE Students (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(50)
);
ログイン後にコピー

上の例では、自動増加する主キーとして id 列を定義し、自動列が 1 つだけ存在することを確認しました。主キー。

テーブル定義の変更に加えて、ALTER TABLE ステートメントを使用して既存のテーブルを変更することもできます。以下は、ALTER TABLE ステートメントを使用して上記のエラーを修正する例です。

CREATE TABLE Students (
    id INT AUTO_INCREMENT,
    name VARCHAR(50)
);

ALTER TABLE Students
MODIFY COLUMN id INT AUTO_INCREMENT PRIMARY KEY;
ログイン後にコピー

上記の例では、最初に Students テーブルを作成し、間違ったテーブル構造を定義しました。次に、ALTER TABLE ステートメントを使用して id 列の定義を変更し、それを自動的に増加する主キーとして設定します。

要約すると、「テーブル定義が間違っています。自動カラムは 1 つしか存在できず、キーとして定義する必要があります」という MySQL エラーを解決するには、次の点を明確にする必要があります。

  1. テーブル には自動拡張列は 1 つだけ存在できます。
  2. 自動的に拡張される列は主キーである必要があります。
  3. テーブルを作成するときは、自動増加列を主キーとして正しく定義してください。
  4. 既存のテーブルでは、ALTER TABLE ステートメントを使用して列定義を変更できます。

初心者にとって、このエラーを理解して解決するのは難しいかもしれません。この記事の分析とコード例が、この問題の理解を深め、解決するのに役立つことを願っています。 MySQL データベースを使用する場合、エラーを迅速に処理し、問題の解決方法を学ぶことは、優れた開発者になるための重要なステップです。

以上がテーブル定義が正しくありません。自動カラムは 1 つだけ指定でき、キーとして定義する必要があります。 - MySQL エラーの解決方法: テーブル定義が正しくありません。自動カラムは 1 つだけ指定でき、キーとして定義する必要があります。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート