2014-01-27 25 views
1

所以我被要求創建一個表,然後插入w /值。我不想找人爲我做這件事,只需要一些幫助。插入值?

所有的書都是這樣說的,用INSERT INTO .. VALUES選項將值插入表中。使用INSERT INTO .. VALUES的形式,要求您​​爲每列設置一個值;因此,如果您有客戶編號,地址,餘額,則必須使用INSERT INTO .. VALUES插入三個值。

CREATE TABLE Cust (Customer_Number CHAR(3), 
Adress CARCHAR(20), 
Balance SMALLMONEY) 

我有我的表,然後

INSERT INTO Cust (Customer_Number, Balance, Address) 
VALUES ('101', '200' 
'102', '700' 
'103', '1000' 
'104', '1500' 
'105', '2000') 

不知道如果有什麼我問或者我有什麼下來是對的,但任何幫助會幫助我很多,謝謝。

+7

哪些DBMS您使用的?甲骨文? Postgres的? –

回答

4

所以,指定的(你的情況Customer_NumberBalanceAddress)需要與值的陣列(101,200,102,等等)相匹配。在你的情況下,他們不。你想要更多的東西一樣:

INSERT INTO Cust (Customer_Number, Balance, Address) 
VALUES (101, 50.00, '123 Main Street'); 

這將創建一個單列與101 Customer_Number,50.00一Balance,並123大街Address。如果要插入多行,你需要指定行集在您INSERT聲明:

INSERT INTO Cust (Customer_Number, Balance, Address) 
VALUES (101, 50.00, '123 Main Street'), (102, 75.00, '123 Pine Ave'); 
+2

是否需要多個'insert'語句取決於DBMS。大多數DBMS允許'values'行構造函數創建多行。 –

+0

是的,我認爲有些數據庫允許類似'VALUES((1,2),(3,4),(5,6))',但這不是標準。我想保持我的答案標準,因爲沒有提到具體的RDMS。 –

+0

使用行構造函數('values((1,2),(2,3),...)* *是在SQL標準中定義的'''可以是來自構造函數的< >',這可以是一個''<上下文類型表值構造器>',它是'values'子句創建多行(它被定義爲'特性F641,「行和表構造器'') –