Ⅰ 使用php語言向SQL中的一個表update多條記錄,使用for循環語句只能更新最後一條信息,請問應該怎麼寫語句
你是想實現什麼?是要把指定的記錄更新成一樣的?還是更新的每天數據的值都不一樣?我這有集中解決思路:
a)建議你面向對象的方式寫,把更新的過程(語句)寫進了function里(也可以不用寫,直接執行sql語句),再在for循環內層調用,這樣就會相當於批量執行,這樣想更新數據,就要根據for循環的數組中的值而確定。如這樣:
$arr=array('desetang','d.n.sky','time');
for($i=0;$i<count($arr);$i++){
//update 語句或過程
$a=sqlupdate('表名';所選欄位';'條件','更新內容$arr[$i]');//這是我舉得例子
}
b)在調試過程中建議echo一下SQL語句,這樣會方便的找出是否是sql語句錯誤
c)檢查一下你的for循每次是不會在相同的數據中插入,付sql update
UPDATE`desetang`.`tags`SET`describe`='ui' WHERE`tags`.`id`=36;
Ⅱ PHP中sql語句limit怎麼寫 誰能寫出來個樣子
給你舉個例子:select * from table where id>100 limit 0,20;
limit意思就是去從第幾開始取多少條數據 0是開始 20是取的條數
Ⅲ php批量執行sql語句怎麼寫
php中利用數組用Mysql_query批量執行SQL語句。
參考示例如下:
思路:這里採用一個數組.用explode 函數,將$query語句按照」;」炸開,然後循環執行即可:
$query = 'delete from ecs_goods_attr where attr_id=11 and goods_id=22;
Insert into ecs_goods_attr (goods_attr_id,goods_id,attr_id,attr_value,attr_price)values(Null,33,138,"膽略",0);
update ecs_goods set goods_number=10,shop_price=55 where goods_id=33;'
$query_e = explode(';','$query');
foreach ($query_e as $k =>$v)
{
mysql_query($query_e[$k]);
}
這樣 $query語句就被批量的執行了。