php中添加、刪除、修改數(shù)據(jù)庫(kù)中的數(shù)據(jù)
在伊美等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專(zhuān)注、極致的服務(wù)理念,為客戶(hù)提供成都做網(wǎng)站、網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作定制制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),全網(wǎng)整合營(yíng)銷(xiāo)推廣,成都外貿(mào)網(wǎng)站建設(shè),伊美網(wǎng)站建設(shè)費(fèi)用合理。
?php $id=mysql_connect(’localhost’,'root’,'root’);
mysql_select_db(’test1′,$id);
?
?php
if($_POST['denglu']==”提交”){
$name=$_POST[name];
$pass=$_POST[pass];
$query=”select * from aa where user=’$name’ and pass=’$pass’”;
$result=mysql_query($query);
if(mysql_num_rows($result)0)
{echo “$_POST[name].已經(jīng)通過(guò)”;}
else
{echo “$_POST[pass].沒(méi)有通過(guò)”;}}
?
?php echo “—————————-”;?
?php
if($_POST['tianjia']==”添加”){
$name=$_POST[name];
$pass=$_POST[pass];
$ip=$_POST[ip];
$querys=”select * from aa”;
$results=mysql_query($querys);
if($name==$user)
{echo “$_POST[name]已經(jīng)存在”;}
else
{
$query1=”insert into aa (user,pass,ip) values(’$name’,'$pass’,'$ip’)”;
$result1=mysql_query($query1);
echo “添加成功”;
}
}
?
?php echo “—————————-”;?
?php if($_POST['delete']==”刪除”){
$name=$_POST[name];
$pass=$_POST[pass];
$ip=$_POST[ip];
$query2=”delete from aa where user=’$name’”;
$result2=mysql_query($query2);
echo “刪除成功”;
}
?
?php echo “—————————-”;?
?php $query=”select * from aa”;
$result=mysql_query($query);
while($myrow=mysql_fetch_array($result)){?
style type=”text/css”
main{ width:890px; margin:0px; text-align:left; cursor: help}
.left{width:300px; margin-left:20px; font-size:12px; font-style:normal; text-align:left}
/style
div id=”main”
div class=”left”
table border=”0″p
tr
td?php echo $myrow[id];?,
?php echo $myrow[user];?,
?php echo $myrow[pass];?,
?php echo $myrow[ip];?/td
/tr
/table
?php }?
/div
delete from 表名;
truncate table 表名;
不帶where參數(shù)的delete語(yǔ)句可以刪除mysql表中所有內(nèi)容,使用truncate table也可以清空mysql表中所有內(nèi)容。效率上truncate比delete快,但truncate刪除后不記錄mysql日志,不可以恢復(fù)數(shù)據(jù)。
delete的效果有點(diǎn)像將mysql表中所有記錄一條一條刪除到刪完,而truncate相當(dāng)于保留mysql表的結(jié)構(gòu),重新創(chuàng)建了這個(gè)表,所有的狀態(tài)都相當(dāng)于新表。
PHP
PHP,一個(gè)嵌套的縮寫(xiě)名稱(chēng),是英文超級(jí)文本預(yù)處理語(yǔ)言(PHP:Hypertext?Preprocessor)的縮寫(xiě)。PHP?是一種?HTML?內(nèi)嵌式的語(yǔ)言,PHP與微軟的ASP頗有幾分相似,都是一種在服務(wù)器端執(zhí)行的嵌入HTML文檔的腳本語(yǔ)言,語(yǔ)言的風(fēng)格有類(lèi)似于C語(yǔ)言,現(xiàn)在被很多的網(wǎng)站編程人員廣泛的運(yùn)用。
首先PHP連接MYSQL數(shù)據(jù)庫(kù)
然后編寫(xiě)SQL語(yǔ)句
delete from table where column = ?
如果你不加where條件會(huì)刪除整張表的數(shù)據(jù)
然后用mysql_query($sql)執(zhí)行語(yǔ)句即可
$delete = $_POST['delete']; // POST方式獲得復(fù)選框值
//單擊刪除按鈕時(shí)
if ($submitdel) // 按提交按鈕
{
//以,號(hào)組合成字符串,供mysql使用
$aryid=@implode(",",$delete);
$db-query("delete from `table` where id in($aryid)");
}
復(fù)選框的大致代碼:
input type="checkbox" name="delete[]" value="?php echo $id; ?"
原理:復(fù)選框的name屬性為delete[] 所以選擇如果個(gè)之后獲得的$delete值為一個(gè)數(shù)組,例如是$delete = array(0 = 1,1 = 2,2 = 3);
然后用implode函數(shù)將數(shù)組切割成字符串,$aryid=@implode(",",$delete);那么$aryid就是 $aryid = "1,2,3";
然后執(zhí)行sql語(yǔ)句。delete from `table` where id in($aryid)
SQL語(yǔ)句就是delete from `table` where id in(1,2,3);
這樣就很明白了吧
MySQL為我們提供了delete和truncate語(yǔ)句來(lái)刪除數(shù)據(jù)。
delete 語(yǔ)句的定義:
刪除數(shù)據(jù)的時(shí)候用的大多都是 delete 語(yǔ)句?,F(xiàn)在讓我們來(lái)看一下 delete語(yǔ)句的定義。
DELETE?[LOW_PRIORITY]?[QUICK]?[IGNORE]?FROM?tbl_name
[WHERE?where_definition]
[ORDER BY?...]
[LIMIT?row_count]
delete?from?friends?where?user_name?=?'simaopig';
delete 注意事項(xiàng):
從語(yǔ)法結(jié)構(gòu)中,我們就可以看出,和 update 語(yǔ)法一樣,我們是可以省略 where 子句的。不過(guò)這是一個(gè)很危險(xiǎn)的行為。因?yàn)槿绻恢付?where 子句,delete 將刪除表中所有的記錄,而且是立即刪除.
truncate 語(yǔ)句的簡(jiǎn)單說(shuō)明:
這個(gè)語(yǔ)句之前我也沒(méi)有接觸過(guò),也沒(méi)有使用過(guò)。因?yàn)橐话闱闆r下,刪除數(shù)據(jù)大家都在使用delete語(yǔ)句。其實(shí)這個(gè)truncate 命令很簡(jiǎn)單,它的意思是:刪除表的所有記錄。相當(dāng)于 delete 語(yǔ)句不寫(xiě) where 子句一樣。其語(yǔ)法結(jié)構(gòu)為:
TRUNCATE?[TABLE]?tbl_name
這里簡(jiǎn)單的給出個(gè)示例,我想刪除 friends 表中所有的記錄,可以使用如下語(yǔ)句:
truncate?table?friends;
truncate 和 delete的效率問(wèn)題:
如果想要?jiǎng)h除表的所有數(shù)據(jù),truncate語(yǔ)句要比 delete 語(yǔ)句快。因?yàn)?truncate 刪除了表,然后根據(jù)表結(jié)構(gòu)重新建立它,而 delete 刪除的是記錄,并沒(méi)有嘗試去修改表。這也是為什么當(dāng)向一個(gè)使用 delete 清空的表插入數(shù)據(jù)時(shí),MySQL 會(huì)記住前面產(chǎn)生的AUTOINCREMENT序列,并且繼續(xù)利用它對(duì)AUTOINCREMENT字段編號(hào)。而truncate刪除表后,表是從1開(kāi)始為autoincrement字段編號(hào)。
不過(guò)truncate命令快規(guī)快,卻不像delete命令那樣對(duì)事務(wù)處理是安全的。因此,如果我們想要執(zhí)行truncate刪除的表正在進(jìn)行事務(wù)處理,這個(gè)命令就會(huì)產(chǎn)生退出并產(chǎn)生錯(cuò)誤信息。
?php
delete($_POST[id]);
?
?php
delete("www");
?
把這東西放在delete函數(shù)下邊應(yīng)該就可以了