Ⅰ 求sql怎麼一次用insert 添加多條數據
可以一次加入多條記錄。
在SQL
SERVER里邊,多個INSERT
語句之間,用分號(;)或者空格,隔開,這樣資料庫就認為你是在進行多條SQL語句的插入操作。就可以插入多條了。
Ⅱ SQL的INSERT怎麼可以一次插入多項數據
使用 INSERT 添加行
INSERT 語句可給表添加一個或多個新行。INSERT 語句在簡單的情況下有如下形式:
INSERT [INTO] table_or_view [(column_list)] data_values
此語句將使 data_values 作為一行或者多行插入已命名的表或視圖中。column_list 是由逗號分隔的列名列表,用來指定為其提供數據的列。如果沒有指定 column_list,表或者視圖中的所有列都將接收數據。
如果 column_list 沒有為表或視圖中的所有列命名,將在列表中沒有命名的任何列中插入一個 NULL 值(或者在默認情況下為這些列定義的默認值)。在列的列表中沒有指定的所有列都必須允許 null 值或者指定的默認值。
由於 Microsoft® SQL Server™ 為以下類型的列生成值,INSERT 語句將不為這些類型的列指定值:
具有 IDENTITY 屬性的列,該屬性為列生成值。
有默認值的列,該列用 NEWID 函數生成一個唯一的 GUID 值。
計算列。
這些是虛擬列,被定義為 CREATE TABLE 語句中從另外一列或多列計算的表達式,例如:
CREATE TABLE TestTable
(ColA INT PRIMARY KEY,
ColB INT NOT NULL,
ColC AS (ColA + ColB) * 2)
所提供的數據值必須與列的列表匹配。數據值的數目必須與列數相同,每個數據值的數據類型、精度和小數位數也必須與相應的列匹配。有兩種方法指定數據值:
用 VALUES 子句為一行指定數據值:
INSERT INTO MyTable (PriKey, Description)
VALUES (123, 'A description of part 123.')
用 SELECT 子查詢為一行或多行指定數據值。
INSERT INTO MyTable (PriKey, Description)
SELECT ForeignKey, Description
FROM SomeView
Ⅲ 怎樣用SQL插入多項數據
方法1、如果數據不是很多,可以寫多條sql語句。insert Employee values ('011112','羅林','1973-5-3',1,'解放路100號',210002,4055663,NULL,5) ;
insert Employee values ('000001','王林','1956-1-23',1,'中山路100-2號',210003,3355668,null,2) ;
insert Employee values ('010008','五融化','1966-3-28',0,'北京東路',210001,3321321,null,1) ;
insert Employee values ('020010','王相溶','1972-12-9',1,'四牌樓10-10-108',210006,3792361,null,1);
方法2、如果數據比較多,可以先把數據保存到文本中,寫一個程序來分析他,然後自動生成sql語句入庫。
方法3、可以把數據保存為資料庫支持的格式,然後用資料庫自身提供的工具來導入。
Ⅳ plsql怎麼往表裡插入多條數據
1、採用insert into values 語句插入一條,寫很多條語句即可多條數據,這種主要針對於離散值以及一些基礎信息的錄入,如:insert into test(xh,mc) values('123','測試');
如果插入的數據有規律,可利用for、loop循環插入,主要用於批量生成測試數據
begin
for i in 1 .. 100 loop
insert into test(xh,mc) values(i||'','測試');
end loop;
end ;。
2、採用insert into selct from 語句來一次性插入一個集合,這種主要依據於要插入的數據源已經存儲於資料庫對象中,或者利用al虛表來構造數據,經過加工後寫入一個集合。
insert into test (xh,mx) select '123','測試' from al;
3、採用plsql等工具、或者oracle的imp、impdp命令來導入,這種主要用資料庫與資料庫之間的大批量數據導入,導入的數據格式為plsql的pde、oracle的dmp等。dmp文件可使用
table_exists_action參數控制導入動作:replace替換原表,truncate清除原表數據再導入,append增量導入數據,當然impdp數據泵的導入要依賴於directory路徑。
impdp 用戶名/密碼 mpfile=123.dmp logfile=123.log directory=imp_dir tables=test table_exists_action=append
4、使用excel文件直接拷貝。這種主要用於要寫入的數據已是excel文件或者行列分明的其它格式文件,每一列的值和表結構相對應,可直接打開表的行級鎖,把數據拷貝進入。
打開行級鎖方法:
select t.*,rowid from 表名 t where 1=2;
select * from 表名 where 1=2 for update;
直接把excel數據拷貝到表裡
Ⅳ 如何使用一條SQL語句,插入多條記錄
無可能 除非寫存儲過程 做一個循環 這個 你要想一下 你用的應該是關系型資料庫吧 那麼關系型資料庫就必須要求表裡面有主鍵約束以保證每條記錄不會重復 當然也有些表是沒主鍵的 這樣的設計我覺得不能納入討論范圍 然後"一個查詢語句插入多條記錄" 這個命題得出一個推論 就是你不能設變數 就算可以設變數 但是只有一條語句 變數還是不能賦不同的值 那麼得出你插入的多條數據都是重復的 這就違反了主鍵約束 也違反了第一範式的要求了。。。我覺得三大範式 你可以不用太苛刻的遵守 但是第一範式我認為是底線了 因為如果連第一範式都不遵守的話 那麼就已經顛覆了關系型資料庫的數學模型了。。。
其實這個問題我曾經也考慮過 因此看些書 結合平時的工作 最後就是按照上面這樣說服了自己。。。。
Ⅵ sql資料庫中怎麼插入多個表中的數據
你是要用SQL語句插入數據嗎?如果是的話你就用這個試下
create table MyDB
(
ID int primary key identity(1,1),
Name nvarchar(50) not null,
Salary int not null,
Age int not null
)
insert into MyDB(Name,salary,age) values('小明',5000,20)
insert into MyDB(Name,salary,age) values('王二虎',3580,22)
insert into MyDB(Name,salary,age) values('王中出',4122,19)
insert into MyDB(Name,salary,age) values('方為',5122,28)
select name as 姓名,salary as 工資,age as 年齡 from mydb
建表,插入,查詢語句都有。同時執行分段執行都可以。。
insert是插入數據,select是查詢數據。
create table 是建表語句!
Ⅶ SQL資料庫批量添加數據
1、創建測試表,create table test_batch(id number, v_date date);