mysqlに価値を加えるにはどうすればよいでしょうか?

青灯夜游
リリース: 2020-10-26 15:31:08
オリジナル
2660 人が閲覧しました

mysql に値を追加する方法: 「INSERT INTO」ステートメントを使用して、データベース内の既存のテーブルに 1 行以上のデータを挿入します。構文形式は「INSERT INTO テーブル名 [列名 1 [ , ...列名 n] ] VALUES (値 1) [... , (値 n)];”。

mysqlに価値を加えるにはどうすればよいでしょうか?

(推奨チュートリアル: mysql ビデオ チュートリアル)

データベースとテーブルが正常に作成されたら、次のことを行う必要があります。データベーステーブルを追加します。 にデータを挿入します。 MySQL では、INSERT INTO ステートメントを使用して、タプル データの 1 行以上をデータベース内の既存のテーブルに挿入できます。

基本構文

INSERT INTO の構文形式は次のとおりです。

INSERT INTO <表名> [ <列名1> [ , … <列名n>] ]
VALUES (值1) [… , (值n) ];
ログイン後にコピー

構文の説明は次のとおりです。

  • <テーブル名>: 操作対象のテーブル名を指定します。

  • <列名>: データを挿入する必要がある列名を指定します。テーブル内のすべての列にデータを挿入する場合、すべての列名を省略でき、INSERT<テーブル名>VALUES(…) を直接使用できます。

  • VALUES または VALUE 句: この句には、挿入されるデータのリストが含まれます。データ リスト内のデータの順序は、列の順序に対応している必要があります。

MySQL では、複数の INSERT ステートメントを使用するよりも、単一の INSERT ステートメントで複数の挿入を処理する方が高速です。

単一の INSERT ステートメントを使用して複数行のデータを挿入する場合、必要なのはデータの各行をかっこで囲むことだけです。

テーブルのすべてのフィールドに値を追加する

テーブルのすべてのフィールドに値を挿入するには 2 つの方法があります。1 つはすべてのフィールドを指定する方法です。名前; その他 フィールド名をまったく指定しません。

[例 1] tb_courses テーブルに新しいレコードを挿入します。course_id 値は 1、course_name 値は「Network」、course_grade 値は 3、info 値は「Computer Network」です。

挿入操作を実行する前に、次のように tb_courses テーブルの SQL ステートメントと実行結果を確認します。

mysql> SELECT * FROM tb_courses;
Empty set (0.00 sec)
ログイン後にコピー

クエリの結果は、現在のテーブルの内容が空でデータが存在しないことを示しています。次に、データの挿入操作を実行します。入力 SQL 文と実行プロセスは次のとおりです。

mysql> INSERT INTO tb_courses
    -> (course_id,course_name,course_grade,course_info)
    -> VALUES(1,&#39;Network&#39;,3,&#39;Computer Network&#39;);
Query OK, 1 rows affected (0.08 sec)
mysql> SELECT * FROM tb_courses;
+-----------+-------------+--------------+------------------+
| course_id | course_name | course_grade | course_info      |
+-----------+-------------+--------------+------------------+
|         1 | Network     |            3 | Computer Network |
+-----------+-------------+--------------+------------------+
1 row in set (0.00 sec)
ログイン後にコピー

レコードが正常に挿入されたことがわかります。データを挿入する場合、tb_courses テーブルのすべてのフィールドが指定されるため、フィールドごとに新しい値が挿入されます。

INSERT ステートメント後の列名の順序は、tb_courses テーブルの定義時の順序である必要はありません。つまり、データを挿入するときに、テーブルで定義された順序で挿入する必要はありません。値の順序が列フィールドの順序と同じである限り。

[例 2] tb_courses テーブルに新しいレコードを挿入します。course_id 値は 2、course_name 値は「Database」、course_grade 値は 3、info 値は「MySQL」です。入力したSQL文と実行結果を以下に示します。

mysql> INSERT INTO tb_courses
    -> (course_name,course_info,course_id,course_grade)
    -> VALUES(&#39;Database&#39;,&#39;MySQL&#39;,2,3);
Query OK, 1 rows affected (0.08 sec)
mysql> SELECT * FROM tb_courses;
+-----------+-------------+--------------+------------------+
| course_id | course_name | course_grade | course_info      |
+-----------+-------------+--------------+------------------+
|         1 | Network     |            3 | Computer Network |
|         2 | Database    |            3 | MySQL            |
+-----------+-------------+--------------+------------------+
2 rows in set (0.00 sec)
ログイン後にコピー

INSERT を使用してデータを挿入する場合、列名リスト column_list は空にすることができます。このとき、値リストではテーブルの各フィールドの値と値の順序を指定する必要があります。データテーブルでフィールドが定義されている順序と同じである必要があります。

[例 3] tb_courses テーブルに新しいレコードを挿入します。course_id 値は 3、course_name 値は「Java」、course_grade 値は 4、info 値は「Jave EE」です。入力したSQL文と実行結果を以下に示します。

mysql> INSERT INTO tb_courses
    -> VLAUES(3,&#39;Java&#39;,4,&#39;Java EE&#39;);
Query OK, 1 rows affected (0.08 sec)
mysql> SELECT * FROM tb_courses;
+-----------+-------------+--------------+------------------+
| course_id | course_name | course_grade | course_info      |
+-----------+-------------+--------------+------------------+
|         1 | Network     |            3 | Computer Network |
|         2 | Database    |            3 | MySQL            |
|         3 | Java        |            4 | Java EE          |
+-----------+-------------+--------------+------------------+
3 rows in set (0.00 sec)
ログイン後にコピー

INSERT ステートメントは挿入リストを指定せず、値リストのみを指定します。この場合、値リストは各フィールド列の挿入値を指定し、値は tb_courses テーブルでフィールドが定義されているのと同じ順序である必要があります。

注: INSERT を使用してデータを挿入する場合、挿入されたデータの列名は無視できますが、値に列名が含まれていない場合、VALUES キーワードの後の値は完全であるだけでなく、この順序は、テーブルを定義するときの列の順序と同じである必要があります。テーブルの構造を変更し、列の追加、削除、位置の変更を行うと、同時にデータの挿入順序も変更されます。列名を指定した場合、テーブル構造の変更による影響を受けません。

テーブルの指定したフィールドに値を追加します

テーブルの指定したフィールドにデータを挿入します。INSERT ステートメントの一部のフィールドにのみ値を挿入します。一方、その他のフィールド 値はテーブル定義時のデフォルト値です。

[例 4] tb_courses テーブルに新しいレコードを挿入します。 course_name の値は "System"、 course_grade の値は 3、 course_info の値は "Operating System"、入力 SQL 文と実行結果は次のようになります。次のように。

mysql> INSERT INTO tb_courses
    -> (course_name,course_grade,course_info)
    -> VALUES(&#39;System&#39;,3,&#39;Operation System&#39;);
Query OK, 1 rows affected (0.08 sec)
mysql> SELECT * FROM tb_courses;
+-----------+-------------+--------------+------------------+
| course_id | course_name | course_grade | course_info      |
+-----------+-------------+--------------+------------------+
|         1 | Network     |            3 | Computer Network |
|         2 | Database    |            3 | MySQL            |
|         3 | Java        |            4 | Java EE          |
|         4 | System      |            3 | Operating System |
+-----------+-------------+--------------+------------------+
4 rows in set (0.00 sec)
ログイン後にコピー

レコードが正常に挿入されたことがわかります。クエリ結果が示すように、ここでは整数値 4 が course_id フィールドに自動的に追加されます。現時点では、 course_id フィールドはテーブルの主キーであり、空にすることはできません。システムはこのフィールドに自動インクリメント シーケンス値を自動的に挿入します。レコードを挿入するときに、一部のフィールドで挿入値が指定されていない場合、MySQL はフィールドの定義時にデフォルト値を挿入します。

プログラミング関連の知識について詳しくは、プログラミング入門をご覧ください。 !

以上がmysqlに価値を加えるにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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