MySQLテーブルにフィールドを一括追加する方法は何ですか?
May 30, 2023 pm 10:37 PMMySQL では、ALTER TABLE
ステートメントを使用してテーブル フィールドを追加できます。以下は、複数のフィールドをバッチで追加するサンプル コードです。
1 mysql テーブル バッチ フィールドの追加
1.1 単一フィールドの追加
ALTER TABLE `table_name` ADD COLUMN `new_column_name` `data_type` DEFAULT `default_value` COMMENT 'description';
その中に、table_name
はテーブル名、new_column_name
は新しく追加されたフィールドの名前、data_type
は新しいフィールドのデータ型、default_value
はデフォルトです新しいフィールドの値、 description
は新しいフィールドの説明情報です。
たとえば、age
という名前の INT
型フィールドを追加します。デフォルト値は 0
、コメントは age# です。 # # では、次のステートメントを使用できます:
ALTER TABLE `user` ADD COLUMN `age` INT DEFAULT 0 COMMENT '年龄';
sql
ALTER TABLE `table_name`
ADD COLUMN `new_column_name1` `data_type1` DEFAULT `default_value1` COMMENT 'description1',
ADD COLUMN `new_column_name2` `data_type2` DEFAULT `default_value2` COMMENT 'description2',
...,
ADD COLUMN `new_column_nameN` `data_typeN` DEFAULT `default_valueN` COMMENT 'descriptionN';
ログイン後にコピー
たとえば、2 つのフィールド sql ALTER TABLE `table_name` ADD COLUMN `new_column_name1` `data_type1` DEFAULT `default_value1` COMMENT 'description1', ADD COLUMN `new_column_name2` `data_type2` DEFAULT `default_value2` COMMENT 'description2', ..., ADD COLUMN `new_column_nameN` `data_typeN` DEFAULT `default_valueN` COMMENT 'descriptionN';
age と
sex を
user テーブルにバッチで追加するには、次のステートメントを使用します。 <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>sql
ALTER TABLE `user`
ADD COLUMN `age` INT DEFAULT 0 COMMENT &#39;年龄&#39;,
ADD COLUMN `sex` VARCHAR(10) DEFAULT &#39;&#39; COMMENT &#39;性别&#39;;</pre><div class="contentsignin">ログイン後にコピー</div></div>
上記のステートメントを使用して、複数のフィールドを一度に追加します。注: 複数のフィールドを追加する場合、各 ADD COLUMN ステートメントはコンマで終わる必要がありますが、最後の ADD COLUMN ステートメントの後にはコンマは必要ありません。
2 mysql は複数のテーブルにフィールドを追加します
MySQL の複数のテーブルにフィールドを追加するには、次の 2 つの方法を使用できます。
2.1 方法 1: フィールドを 1 つずつ追加します。手動
ALTER TABLE ステートメントを使用して、各テーブルにフィールドを 1 つずつ追加します。以下はサンプル コードです: <div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>sql
-- 为表1添加字段
ALTER TABLE `table1` ADD COLUMN `new_column_name` `data_type` DEFAULT `default_value` COMMENT &#39;description&#39;;
-- 为表2添加字段
ALTER TABLE `table2` ADD COLUMN `new_column_name` `data_type` DEFAULT `default_value` COMMENT &#39;description&#39;;
-- 为表3添加字段
ALTER TABLE `table3` ADD COLUMN `new_column_name` `data_type` DEFAULT `default_value` COMMENT &#39;description&#39;;</pre><div class="contentsignin">ログイン後にコピー</div></div><div class="contentsignin">ログイン後にコピー</div></div>
この方法はより面倒ですが、少数のテーブルのみにフィールドを追加する必要がある状況に適しています。
2.2 方法 2: スクリプトを使用してフィールドをバッチで追加する スクリプトを使用して、フィールドを複数のテーブルにバッチで追加できます。以下はサンプル コードです。
<div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>sql -- 为表1添加字段 ALTER TABLE `table1` ADD COLUMN `new_column_name` `data_type` DEFAULT `default_value` COMMENT &#39;description&#39;; -- 为表2添加字段 ALTER TABLE `table2` ADD COLUMN `new_column_name` `data_type` DEFAULT `default_value` COMMENT &#39;description&#39;; -- 为表3添加字段 ALTER TABLE `table3` ADD COLUMN `new_column_name` `data_type` DEFAULT `default_value` COMMENT &#39;description&#39;;</pre><div class="contentsignin">ログイン後にコピー</div></div><div class="contentsignin">ログイン後にコピー</div></div>スクリプトを
.sql ファイルとして保存し、MySQL クライアント ツール (MySQL Workbench など) を使用してスクリプトを実行し、複数のテーブルをバッチ処理します。フィールドを追加します。 スクリプトを使用してフィールドをバッチで追加する場合は、次の点に注意する必要があります。
- スクリプトを実行する前に、必ずデータベースをバックアップしてください。偶発的なデータ損失を防ぎます。
- スクリプト内のフィールド情報が正しいことを確認してください。正しくないと、データ エラーやデータ損失が発生する可能性があります。
- フィールドを追加する必要があるテーブルの数とテーブルのサイズによっては、スクリプトの実行に時間がかかる場合があります。
- 3 mybatis は複数のテーブルにフィールドを追加します
MyBatis はデータ アクセス フレームワークですが、テーブル フィールドを直接追加する機能は提供しておらず、ネイティブ SQL ステートメントが必要です。満たすため。したがって、複数のテーブルにフィールドを追加するには、次の手順に従います。
3.1 追加されたフィールドを含む SQL ステートメントを作成する
MyBatis では、注釈または XML ファイルを通じて SQL ステートメントを定義できます。たとえば、XML ファイルでは、
タグを使用して SQL ステートメントを記述することができます。サンプル コードは次のとおりです。 <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'><update id="addColumn" parameterType="map">
ALTER TABLE ${tableName} ADD COLUMN ${newColumnName} ${dataType} DEFAULT ${defaultValue};
</update></pre><div class="contentsignin">ログイン後にコピー</div></div>
この例では、
、 ${newColumnName}
、 ${dataType}
および${defaultValue}
は、コード内で動的に設定する必要があるすべてのパラメーターです。 3.2 Java コードでの SQL ステートメントの呼び出し
SQL ステートメントを実行するために、Java コードは MyBatis の SqlSession インターフェイスを使用できます。
SQL ステートメントを実行するには、まず SqlSession オブジェクトを取得し、対応するメソッドを呼び出す必要があります。サンプル コードは次のとおりです。
public void addColumn(String tableName, String newColumnName, String dataType, String defaultValue) { try (SqlSession session = sqlSessionFactory.openSession()) { Map<String, Object> params = new HashMap<>(); params.put("tableName", tableName); params.put("newColumnName", newColumnName); params.put("dataType", dataType); params.put("defaultValue", defaultValue); session.update("addColumn", params); session.commit(); } }
この例では、
sqlSessionFactory はすでに作成されている SqlSessionFactory オブジェクトです。 3.3 Java コードを呼び出して SQL ステートメントを実行する
最後に、アプリケーション内の適切な場所で Java コードを呼び出して SQL ステートメントを実行します。サンプルコードは次のとおりです:
addColumn("table1", "new_column_name", "VARCHAR", "'default_value'"); addColumn("table2", "new_column_name", "INTEGER", "0"); addColumn("table3", "new_column_name", "DECIMAL(10,2)", "0.00");
以上がMySQLテーブルにフィールドを一括追加する方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

人気の記事

人気の記事

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP で MySQL クエリのパフォーマンスを最適化するにはどうすればよいですか?

PHP で MySQL のバックアップと復元を使用するにはどうすればよいですか?

データベースにおける Java 列挙型のアプリケーション シナリオは何ですか?

PHP を使用して MySQL テーブルにデータを挿入するにはどうすればよいですか?

MySQL 8.4 で mysql_native_password がロードされていないエラーを修正する方法

PHP で MySQL ストアド プロシージャを使用するにはどうすればよいですか?
