ホームページ >データベース >mysql チュートリアル >MySQL テーブルのフィールド名を変更してハイフンを含めるにはどうすればよいですか?

MySQL テーブルのフィールド名を変更してハイフンを含めるにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2025-01-09 16:02:42444ブラウズ

How Can I Rename a MySQL Table Field to Include a Hyphen?

ハイフンを含む MySQL テーブル フィールドの名前を変更するための解決策

MySQL テーブルのフィールド名にハイフンを直接含めることは許可されていません。これは、MySQL がテーブル列の参照にドット表記を使用し、ドット表記ではハイフンが使用できないためです。

ただし、この制限を回避するには 2 つの方法があります。

区切り文字を使用

バックティック (`) や二重引用符 (") などの区切り文字を使用して、特殊文字を含むフィールド名を囲むことができます。例:

<code class="language-sql">ALTER TABLE my_table CHANGE COLUMN `product` `ds-product` VARCHAR(255);</code>

この例では、フィールド名 ds-product がバッククォートで囲まれているため、ハイフンを含めることができます。

ANSI_QUOTES SQL モードを使用します

もう 1 つのオプションは、ANSI_QUOTES SQL モードを有効にすることです。これにより、識別子の区切り文字として二重引用符を使用できるようになります。このモードが有効な場合、次の構文を使用してフィールドの名前を変更できます:

<code class="language-sql">SET SQL_MODE = ANSI_QUOTES;
ALTER TABLE my_table CHANGE COLUMN "product" "ds-product" VARCHAR(255);</code>

フィールドの名前を変更する前に、ANSI_QUOTES モードを設定する必要があることに注意してください。

上記のいずれかの方法を使用した後は、「不明な列」エラーが発生することなく、フィールドの名前を変更してクエリで使用できます。

以上がMySQL テーブルのフィールド名を変更してハイフンを含めるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。