sql循環插入
① sql語句中怎樣循環插入規律數據啊
可以使用循環語句
while 條件
begin
執行操作
set @i=@i+1
endWHILE
設置重復執行 SQL 語句或語句塊的條件。只要指定的條件為真,就重復執行語句。可以使用 BREAK 和 CONTINUE 關鍵字在循環內部控制 WHILE 循環中語句的執行。
② SQL如何將一個數據循環插入到表中
SQL里這事兒就沒必要寫循環了。
insert?into?b?(ordID,txt)
select?id,'到期自動取消'?from?order?where?isLock='0';
update?order?set?isLock='1'?where?isLock='0';
③ sql 資料庫循環插入100條記錄! 怎麼實現 是不是得用存儲過程啊
1、創建測試表,
create table test_loop(id varchar2(20),remark varchar2(20));
④ SQL利用循環語句插入數據
CREAT PROCEDURE tester
AS
BEGIN
SET NOCOUNT ON;
DECLARE @userId varchar(50)
DECLARE @count int
SET @count = 0
SELECT @count = count(*) FROM UserService_User WHERE Account like '%111%'
WHILE @count > 0
BEGIN
SELECT @userId = Id FROM UserService_User WHERE Account like '%111%'
exec UserService_RemoveUserByUserId @userId
SET @count = @count -1
END
END
說明:
1、此存儲過程在SQL SERVER 2005上測試通過,值得注意的是,循環體中,語句是使用BEGIN……END包括的,而不是網路上常說的WHILE ……END WHILE結構,其他的循環語句,如LOOP ……UNTIL……END LOOP也不能通過編譯,也許是版本的問題,但在SQL SERVER2005中,循環體使用BEGIN……END就可以,而不能使用網路上常說的WHILE ……END WHILE結構。
2、循環體中 UserService_RemoveUserByUserId 是一個存儲過程的名稱,@userId為該存儲過程的參數,如果有多個參數,使用「,」分開就可以了,這也是存儲過程調用另一個存儲過程的一種方法。
⑤ SQL中用循環批量插入數據如何實現
--
create
table
CREATE
TABLE
test(col
NUMERIC)
--
insert
WITH
t1
AS
(SELECT
1
rn),
t2
AS
(SELECT
rn
FROM
t1
UNION
ALL
SELECT
t2.rn
+
t1.rn
FROM
t2,
t1
WHERE
t2.rn
<
200
)
--
200
修改為你想插入的條數
INSERT
INTO
test
SELECT
*
FROM
t2
OPTION
(MAXRECURSION
0)
⑥ SQL循環插入值該怎麼寫
我看你分析的不夠,比如你說的「只有前兩個欄位的值不一樣」是不是指id和name_name?
按理來說id這個值你在設置表結構的時候讓這個值默認自增。不就是值不一樣嗎?
再有就是name_name.這個欄位我想應該是名字之類的,那你在插入之前一定已經得到這些名字了。這樣的話,你把這些名字放入一個數組變數ME[n]里,
循環執行:insert into topolink(name_name,.....)values (ME[i].....)
因為i在循環中自增,這樣就歷遍了數組,name_name不就一一對應了,因為id會自動自增,值當然也不同了~!這樣的話問題不就解決了!
⑦ sql 中怎樣利用循環將一個表中的數據按行依次插入到另一個表中
前面先申明變數1,2這種,和數據表欄位類型一樣
DECLARE @mycur CURSOR FOR SELECT 欄位1,欄位2,欄位3,... FROM 表名 WHERE ...
OPEN @mycur
FETCH NEXT FROM @mycur INTO 變數名1,變數名2,變數名3,...
WHILE @@FETCH_STATUS=0
BEGIN
SQL語句執行過程... ...
判斷是否符合條件
FETCH NEXT FROM @mycur INTO 變數名1,變數名2,變數名3,...
END
CLOSE @mycur
DEALLOCATE @mycur (刪除游標)
⑧ sql怎麼用循環插入數據
using (SqlConnection conn = new SqlConnection())
{
SqlCommand comm= new SqlCommand();
conn.ConnectionString ="資料庫連接串";
comm.CommandType =CommandType .Text ;
conn.Open();
foreach (DataRow item in hr)
{
string sql= 取得欄位並拼接為sql語句;
comm.CommandText =sql;
command.ExecuteNoQuery();
}
conn.Close ();
}
⑨ Oracle中使用PL/SQL怎樣用循環插入多條數據
使用loop循環,比如:
for item in (select a,b,c from table_a where 條件) loop
insert into table_b(a,b,c) values (item.a,item.b,item.c);
end loop;
也可以使用索引表循環,以上只是一個簡單的例子,需要根據你的具體情況選擇循環方式。