重慶分公司,新征程啟航
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
1、首先在視圖頁面找到要刪除的id:
成都網(wǎng)站設(shè)計、網(wǎng)站建設(shè),成都做網(wǎng)站公司-成都創(chuàng)新互聯(lián)已向千余家企業(yè)提供了,網(wǎng)站設(shè)計,網(wǎng)站制作,網(wǎng)絡(luò)營銷等服務(wù)!設(shè)計與技術(shù)結(jié)合,多年網(wǎng)站推廣經(jīng)驗,合理的價格為您打造企業(yè)品質(zhì)網(wǎng)站。
?php
$link=mysql_connect("localhost","root","管理員密碼");
mysql_select_db("infosystem", $link);
$q = "SELECT * FROM info";
mysql_query("SET NAMES GB2312");
$rs = mysql_query($q, $link);
echo "table";
echo "trtd部門名稱/tdtd員工姓名/tdtdPC名稱/td/tr";
while($row = mysql_fetch_object($rs)) echo "trtda href='dodel.php?id=$row-id'del/a/tdtd$row-depart/tdtd$row-ename/td/tr";
echo "/table";
?
2、寫一個delete.php頁面,代碼如下:
?php
$link =mysql_connect("localhost","root","管理員密碼");
mysql_select_db("infosystem", $link);
$del_id=$_GET["id"];
$exec="delete from info where id=$del_id";
mysql_query($exec, $link);
echo "刪除成功!";
mysql_close($link);
?
說明:用于MySQL數(shù)據(jù)刪除的SQL語句為:
delete from 表名 where 條件=值
這里的值通過$del_id=$_GET["id"]來接收,并傳遞給SQL語句,最后通過mysql_query來執(zhí)行這句SQL語句刪除的。
php數(shù)據(jù)庫刪除表的時候怎么點都可以刪除成功是查詢執(zhí)行成功并影響到未返回任何行導(dǎo)致。根據(jù)查詢相關(guān)信息顯示對于其它類型的SQL語句,mysql,query()在執(zhí)行成功時返回TRUE,出錯時返回FALSE。非FALSE的返回值意味著查詢是合法的并能夠被服務(wù)器執(zhí)行。導(dǎo)致php數(shù)據(jù)庫刪除表的時候任意點擊都可以刪除成功。
sample?code:
?php?
if($del_id!=""){?
$del_num=count($del_id);?
for($i=0;$i$del_num;$i++){?
mysql_query("Delete?from?news?where?id='$del_id[$i]'");?
}??
echo("script?type='text/javascript'alert('刪除成功!');history.back();/script");?
}else{?
echo("script?type='text/javascript'alert('請先選擇項目!');history.back();/script");?
}?
?
MySQL為我們提供了delete和truncate語句來刪除數(shù)據(jù)。
delete 語句的定義:
刪除數(shù)據(jù)的時候用的大多都是 delete 語句。現(xiàn)在讓我們來看一下 delete語句的定義。
DELETE?[LOW_PRIORITY]?[QUICK]?[IGNORE]?FROM?tbl_name
[WHERE?where_definition]
[ORDER BY?...]
[LIMIT?row_count]
delete?from?friends?where?user_name?=?'simaopig';
delete 注意事項:
從語法結(jié)構(gòu)中,我們就可以看出,和 update 語法一樣,我們是可以省略 where 子句的。不過這是一個很危險的行為。因為如果不指定 where 子句,delete 將刪除表中所有的記錄,而且是立即刪除.
truncate 語句的簡單說明:
這個語句之前我也沒有接觸過,也沒有使用過。因為一般情況下,刪除數(shù)據(jù)大家都在使用delete語句。其實這個truncate 命令很簡單,它的意思是:刪除表的所有記錄。相當(dāng)于 delete 語句不寫 where 子句一樣。其語法結(jié)構(gòu)為:
TRUNCATE?[TABLE]?tbl_name
這里簡單的給出個示例,我想刪除 friends 表中所有的記錄,可以使用如下語句:
truncate?table?friends;
truncate 和 delete的效率問題:
如果想要刪除表的所有數(shù)據(jù),truncate語句要比 delete 語句快。因為 truncate 刪除了表,然后根據(jù)表結(jié)構(gòu)重新建立它,而 delete 刪除的是記錄,并沒有嘗試去修改表。這也是為什么當(dāng)向一個使用 delete 清空的表插入數(shù)據(jù)時,MySQL 會記住前面產(chǎn)生的AUTOINCREMENT序列,并且繼續(xù)利用它對AUTOINCREMENT字段編號。而truncate刪除表后,表是從1開始為autoincrement字段編號。
不過truncate命令快規(guī)快,卻不像delete命令那樣對事務(wù)處理是安全的。因此,如果我們想要執(zhí)行truncate刪除的表正在進(jìn)行事務(wù)處理,這個命令就會產(chǎn)生退出并產(chǎn)生錯誤信息。
//刪除是記錄是用sql語句,比如 delete from xxx(table) where id=1 刪除 id=1的記錄
//數(shù)據(jù)庫操作后,手動關(guān)閉是好得習(xí)慣,不手動關(guān)閉,php程序也會最后自動關(guān)閉
?php
delete($_POST[id]);
?
?php
delete("www");
?
把這東西放在delete函數(shù)下邊應(yīng)該就可以了