❶ 我想用for循環一個sql語句並且限制循環數量怎麼實現,請高手幫忙
for($i=0;$i<10;$i++){
$row=mysql_query("select * from level1");
}
這樣就是循環10次了。如果要其他 數修改$i<多少就行了。不過不建議使用循環sql。效率不好。如果是正式網站,容易卡死
❷ 在循環里寫sql語句能對資料庫造成壓力么老師說盡量不要把SQL語句寫在循環里,我想知道為什麼
沒有問題的,這個要根據具體的需要,
有時候 功能就是需要循環寫入資料庫的,那肯定得循環寫了。
老師那樣說只是一種說法,因為所有老師都是那樣教的,老師也只是說說,不要太當真,也不要太認真,根據你程序需要該怎麼寫就怎麼寫。
❸ 如何使用for循環更新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為該存儲過程的參數,如果有多個參數,使用「,」分開就可以了,這也是存儲過程調用另一個存儲過程的一種方法。
❹ 用for循環執行多條sql語句時報ExecuteNonQuery: CommandText 屬性尚未初始化" 異常
一般出絕圓告現那種情況就是程序運行到CommandText的地方執行SQL語句的並明時候,sql語句不能執
行腔基通過就會報介樣的錯誤...
❺ mysql sql中流程式控制制有for循環嗎
MySQL不支持FOR loops循環。
只有LOOP循環:
[begin_label:] LOOP
statement_list
END LOOP [end_label]
CREATE PROCEDURE doiterate(p1 INT)
BEGIN
label1: LOOP
SET p1 = p1 + 1;
IF p1 < 10 THEN
ITERATE label1;
END IF;
LEAVE label1;
END LOOP label1;
SET @x = p1;
END;
LOOP實現了一個簡單的循環結構,允許重復執行語句列表,該列表由一個或多個語句組成,每個語句以分號(;)分隔符結束。 循環中的語句將重復執行,直到循環終止。 一般情況,通過LEAVE終止循環。 在函數中,也可以使用RETURN,它完全退出函數,也同時終止循環。
(5)for循環裡面不能寫sql擴展閱讀
mysql流程式控制制結構:
順序結構:程序從上往下依次執行,
分支結構:程序從兩條或多條路徑中選中一條去執行,
循環結構:程序在滿足一定條件的基礎上,重復執行一段代碼。
分支結構
1、if函數
功能:實現簡單的雙分支
語法:
if(表達式1,表達式2,表達式3)
執行順序:
如果表達式1成立,則if函數返回表達式2的值,否則返回表達式3的值
應用:任何地方(在begin end中或外面都可以)
2、case結構
情況1:類似於java中的switch語句,一般用於實現等值判斷
語法:
CASE 變數|表達式|欄位
WHEN 要判斷的值 THEN 返回的值1或語句1;
WHEN 要判斷的值 THEN 返回的值2或語句2;
...
ELSE 要返回的值n或語句n;
END CASE;
情況2:類似於java中的多重IF語句,一般用於實現區間判斷
語法;
CASE
WHEN 要判斷的條件1 THEN 返回的值1或語句1;
WHEN 要判斷的條件2 THEN 返回的值2或語句2;
...
ELSE 要返回的值n或語句n;
END CASE;
❻ 如何用for循環在qt中實現sql資料庫的多行插入
debug時把sql語句復制出來,在資料庫鏈接工具中(如plsql,navicat等)執行一次,可能是你的value中設置了非空欄位,也有可能是你的資料庫策略不允許插入空.
❼ 對SQL 插入語句進行for循環 可以嗎
理論上應該能成功。檢查一下:循環插入是否違反約束(比如主攔遲鍵列之類);在循環開始前Open,結束後Close比較好,節省時間;試試把一次執行改成單獨完整的Sub子程序,再for循環調用;試試一次性則衡裂拼接多個sql語句,分號隔孫閉開。
❽ python 執行sql語句,在for循環裡面 寫sql語句,出錯了
數據長不是py的數據長,是資料庫報錯,表的欄位超長了。
❾ 批處理for循環中不能使用sqlcmd命令
在for循環中,需要開爛慶啟環境變數延遲命令。然後櫻正變數飢頌握名調用不再使用百分號,而是感嘆號。這樣才能正常調用
setlocal enabledelayedexpansion
for %%a in (db1 db2) do (
set db_name=%%a
sqlcmd -U sa -P %db_passwd% -S ^(local^) -Q "use !db_name!"
)
❿ for 循環中 jdbc executeQuery(sql);出錯
參數是string類型,返回類型是DataTable即數據表類型
public DataTable ExecuteQuery(string sql)
{
//實例化一個SqlDataAdapter對象,構造函數的參數是string類型的sql和資料庫連接對象con;SqlDataAdapter對象用來從資料庫獲取數據填充數據容器DataSet/DataTable
SqlDataAdapter dataAdapter = new SqlDataAdapter(sql, con);
//初始化一個數據表對象,將被dataAdapter填充數據
DataTable dataTable = new DataTable();
//try...catch語句用來撲捉程序執行過程中發生的異常
try
{
//調用dataAdapter的Fill方法填充dataTable
dataAdapter.Fill(dataTable);
}
catch (Exception e)
{
//將異常信息輸出到控制台
Console.WriteLine(e.Message);
Console.WriteLine(sql);
}
//dataTable是此方法返回的對象,包含了得到的數據
return dataTable;
}
另外,團IDC網上有許多產品團購,便宜有口碑