(XV)のデータを挿入する - SQLは次のようになります知っている必要があります

1、データ挿入

データベーステーブルにに行を挿入(または追加)用インサート。挿入するいくつかの方法があります。

  • 完全な行を挿入
  • 挿入された行のいくつかの部分
  • 一部のクエリの結果を挿入します

注意:
1、INSERT文を使用すると、クライアント/サーバーDBMSに固有のセキュリティ権限が必要な場合があります。あなたはINSERTを使用しようとする前に、あなたは彼らが十分なセキュリティ権限を持っていることを確認する必要があります

2.1、完全な行を挿入

INSERT INTO customers
VALUES(
'Toy Land'
,'123 Any Street'
,'New York'
,'NY'
,'11111'
,'USA'
,'NULL'
,'NULL'
);

注意:
図1は、いくつかのSQLの実装では、キーワードINTO INSERTで次はオプションです。しかし、タイムリーに、必ずしもそれがSQLコードは、DBMS間での移植であることを確認するために行われますので、それは、このキーワードを提供するのが最善である、必要とされていない
2、上記のSQLステートメントは、表に定義された列に、だけでなく、その簡単なアクセス順序に大きく依存しています情報。順序は次の順番の変更後のテーブル構造の列が同じで維持することを保証するものではない場合でも、このような情報を得ることができます。そのため、準備はSQL文の特定の配列に依存して非常に安全ですので、遅かれ早かれ間違って行きます

INSERT INTO customers
(
cust_id,
cust_name,
cust_address,
cust_city,
cust_state,
cust_zip,
cust_country,
cust_contact,
cust_email
)
VALUES(
'Toy Land',
'123 Any Street',
'New York',
'NY',
'11111',
'USA',
'NULL',
'NULL',
)
--在插入行时,DBMS将用VALUES列表中的相应值贴入列表中的对应项。VALUES中的第一个值对应第一个指定列名,
第二个值对应于第二个列名,如此等等。

注意:
1、提供カラム名として、値が指定され、そのために、指定された列名と一致している必要があり、必ずしも今の表にリストされた各実際の注文のために。利点は正しく任意の自然INSERT文作業することができ、テーブル構造の変更、たとえ、ということです。

2.2、挿入部行

INSERT INTO customers
(
cust_id,
cust_name,
cust_address,
cust_city,
cust_state,
cust_zip,
cust_country,
)
VALUES(
'Toy Land',
'123 Any Street',
'New York',
'NY',
'11111',
'USA',
)

注意:
省略列がで一定の条件を満たさなければならない
1、列がNULL値(NULL値または値なし)を許可するように定義される
2、デフォルト値が表定義に示されています。これは、その値が指定されていない場合、デフォルト値を意味し、

2.3、検索されたデータの挿入

INSERT INTO customers
(
cust_name,
cust_address,
cust_city,
cust_state,
cust_zip,
cust_country
)
SELECT 
	cust_name,
	cust_address,
	cust_city,
	cust_state,
	cust_zip,
	cust_country
FROM custnew;

注意:
図1は、簡略化のため、この例では、INSERTとSELECT文で同じ列名を使用します。しかし、それは必ずしも一致するカラム名を必要としません。実際には、DBMSは、返されたSELECTの列名を気にしないでください。彼は列の位置を使用しています。

2.4、他に一つのテーブルからコピー

SELECT *
INTO custcopy
FROM customers;
--这条SELECT语句创建一个名为custcopy的新表,并把customers表的整个内容复制到新表中。
因为这里使用的时select *,所以将在custcopy表中创建(并填充)于customers表的每一列相同的列。

注意:

  • WHEREとGROUP BYを含むSELECT句と任意の選挙を使用することができ、
  • カップリングは、複数のテーブルからデータを挿入するために利用することができます
  • どんなにデータのみをテーブルに挿入することができ、からデータを取得する方法を多くのテーブル

おすすめ

転載: blog.csdn.net/qq_28285403/article/details/94735094