ホームページ  >  記事  >  データベース  >  MySQL で主キー値が連結されたユーザー名を割り当てる方法は?

MySQL で主キー値が連結されたユーザー名を割り当てる方法は?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-09 21:58:02677ブラウズ

How to Assign Usernames with Concatenated Primary Key Values in MySQL?

連結文字列と主キーを含むデータの挿入

MySQL テーブルへの挿入には、多くの場合、自動インクリメントされた主キーを含む、列への値の割り当てが含まれます。鍵。ただし、ユーザー名を "user" として割り当て、その後に主キーの値を割り当てる場合のように、挿入中に文字列を主キーと連結したい場合があります。

チャレンジ:

user テーブルには、自動インクリメントされる主キー「id」列や「username」列など、いくつかの列が含まれています。その目的は、それぞれの主キー値を付加した「user」としてユーザー名を自動的に割り当てることです。

アプローチ:

  • 単一の SQL ステートメントを使用することは不可能です。主キー値は「BEFORE INSERT」トリガーの実行後にのみ生成され、その後の「username」の変更は「AFTER INSERT」トリガーでは禁止されています。
  • 実行可能な回避策は、最初に挿入を実行してから、次に挿入を実行することです。即時更新を実行して、主キーの値を文字列と連結します。

代替:

  • 主キーが自動インクリメントされず、指定する代わりに、パラメータとして値を渡す前に連結操作を PHP コード内で直接実行できます。

注:

  • MySQL 5.7 の場合生成された列はこのシナリオに対応できません。自動インクリメント列を参照する生成列を作成しようとすると、「生成列 'username' は自動インクリメント列を参照できません。」というエラーが発生します。

以上がMySQL で主キー値が連結されたユーザー名を割り当てる方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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