導航:首頁 > 編程語言 > php清空資料庫

php清空資料庫

發布時間:2024-09-16 16:52:32

⑴ 求:哪位高手幫寫個php + Sqlite3 增 改 刪 資料庫實例 不剩感激

php中操作sqlite3資料庫的類文件。
一般用法:

$filepath="/apps/www/htdocs/databasename";
$db=new SPSQLite3($filepath); //打開此路徑資料庫文件
$sql="select * from tablename"; //查詢記錄
$sql2="delete from tablename"; //刪除表內所有記錄
$db->exec_sql($sql); //執行查詢語句
$db->struct_sql($sql2); //執行刪除
$result=$db->get_all_data(); //返回操作記錄集合
$numbers=count($result); //得到有效記錄數
$fields=$result[0]["field"]; //取欄位內容
$db->close(); //關閉

?>
需要在裝入的頭文件中加入:@dl('sqlite3.so');調用動態鏈接庫(linux中)

[@more@]

class SPSQLite3
{
var $db_name; //連接的sqlite資料庫伺服器的用戶密碼
var $db_link; //資料庫連接的句柄
var $result; //執行sqlite語句的資源句柄
var $insert_autoid = 0; //增加記錄時自動編號的最後一個ID號
var $get_data = array(); //獲取記錄內容
var $get_all_data = array(); //獲取所有記錄內容
var $num_rows = 0; //執行SELECT語句時獲取了多少條記錄
var $affected_rows = 0; //執行除SELECT語句所影響的記錄行數
var $error = "";
function SPSQLite3($db_name = "sqlite")
{
$this->db_name = $db_name;
$this->open_db($db_name); //打開資料庫
}

//構造函數
function __destruct()
{
$this->free();
$this->close();
}

//釋放查詢值
function free()
{
if ($this->result)
{
unset($this->result);
}
}
//關閉資料庫連接
function close()
{
if ($this->db_link)
{
$this->free();
return @sqlite3_close($this->db_link);
}
}
//嚴重錯誤時停執行
function halt($msg)
{
$this->free();
$this->close();
//調試函數
print("

程序遇到一個嚴重而至命的錯誤,以至停止執行!
錯誤描述:{$msg}

");
exit(1);
}

//打開數據連接,並選擇資料庫
function open_db($db_name = "sqlite")
{
if ($db_name == "")
{
$db_name = $this->db_name;
}
if ($db_name == "")
{
$this->halt("未能找到指定要操作的資料庫名:{$db_name}!");
}
$this->db_link = @sqlite3_open($db_name) or die ("資料庫連接失敗");
if ($this->db_link)
{
return $this->db_link;
}else{
$this->halt("您所要操作的文件不能寫,許可權不足!");
}
}
//返回sqlite連接句柄
function db_link()
{
return $this->db_link;
}
//執行對數據查詢操作的SQL語句
function exec_sql($sql_cmd)
{
$this->result = @sqlite3_query($this->db_link, $sql_cmd);
return $this->result;
}
//執對資料庫操作(create,update,delete,insert)的SQL語句
function struct_sql($sql_cmd)
{
$this->result = @sqlite3_exec($this->db_link, $sql_cmd);
return $this->result;
}

//獲取所有數據內容存入數組中
function get_data()
{
if (!$this->result)
{
//$this->halt("沒有記錄可獲取!");
return false;
}
$this->get_data = @sqlite3_fetch_array($this->result);
if (!is_array($this->get_data))
{
$this->get_data = null;
}
return $this->get_data;
}

//獲取所有數據內容存入數組中
function get_all_data()
{
if (!$this->result)
{
//$this->halt("沒有記錄可獲取!");
return false;
}
$this->get_all_data = array();
while ($row = @sqlite3_fetch_array($this->result))
{
$this->get_all_data[] = $row;
}
return $this->get_all_data;
}

//記錄操作返回數
function num_rows()
{
if (!$this->result)
{
//$this->halt("沒有記錄可獲取!");
return false;
}
//禁用num_rows函數..
//$this->num_rows = sqlite3_changes($this->result);
$this->num_rows = 0;
return $this->num_rows;
}

//seek函數
function seek($nu)
{
if (!$this->result)
{
//$this->halt("沒有記錄可獲取!");
return false;
}
$seek_result = @sqlite_seek(!$this->result, $nu);
if ($seek_result)
{
return $seek_result;
}else{
$this->halt("數據記錄移動范圍超出了記錄!");
}
}
//獲取最後增加記錄的自動編號
function insert_autoid()
{
$this->insert_autoid = @sqlite3_last_insert_rowid($this->db_link);
return $this->insert_autoid;
}
//執行除SELECT語句所影響的記錄行數
function affected_rows()
{
$this->affected_rows = sqlite3_changes($this->db_link);
return $this->affected_rows;
}

//創建資料庫函數
function create_db($db_name)
{
if ($db_name == "")
{
return false;
}
$str = "~!@#$$%^&*(_+=|[{:;"'?/.,<>}])";
for ($i = 0; $i < strlen($str); $i++)
{
if (eregi($str{$i}, $db_name))
{
return false;
}
}
return ($this->struct_sql("CREATE DATABASE {$db_name} ;")) ? true : false;
}

//刪除資料庫
function drop_db($db_name)
{
if ($db_name == "")
{
return false;
}
$str = "~!@#$$%^&*(_+=|[{:;"'?/.,<>}])";
for ($i = 0; $i < strlen($str); $i++)
{
if (eregi($str{$i}, $db_name))
{
return false;
}
}
return ($this->struct_sql("DROP DATABASE {$db_name} ;")) ? true : false;
}

//清空數據表
function truncate_table($t_name)
{
if ($t_name == "")
{
return false;
}
$str = "~!@#$$%^&*(_+=|[{:;"'?/.,<>}])";
for ($i = 0; $i < strlen($str); $i++)
{
if (eregi($str{$i}, $t_name))
{
return false;
}
}
return ($this->struct_sql("DELETE FROM {$t_name} ;")) ? true : false;
}

//獲取最後資料庫出錯信息
function get_last_error()
{
$error = array();
$error["number"] = sqlite3_error($this->db_link);
$error[0] = $error["number"];
$error["string"] = sqlite3_error($error[0]);
$error[1] = $error["string"];
return $error;
}
}
?>

⑵ 如何用PHP寫一段刪除資料庫表中的一條記錄急求啊

//刪除是記錄是用sql語句,比如 delete from xxx(table) where id=1 刪除 id=1的雀腔記錄
//數碧賀據庫操作後,手動關閉是頃慧衫好得習慣,不手動關閉,php程序也會最後自動關閉

⑶ php刪除sql資料庫的語句

MySQL為我們提供了delete和truncate語句來刪除數據。

delete 語句的定義:

刪除數據的時候用的大多都是 delete 語句。現在讓我們來看一下 delete語句的定義。

DELETE[LOW_PRIORITY][QUICK][IGNORE]FROMtbl_name
[WHEREwhere_definition]
[ORDER BY...]
[LIMITrow_count]

deletefromfriendswhereuser_name='simaopig';

delete 注意事項:

從語法結構中,我們就可以看出,和 update 語法一樣,我們是可以省略 where 子句的。不過這是一個很危險的行為。因為如果不指定 where 子句,delete 將手猜刪除表中所有的記錄,而且是立即刪除.

truncate 語句的簡單說明:

這個語句之前我也沒有接觸過,也沒有使用過歲廳。因為一般情況下,刪除數據大家都在使用delete語句。其實這個truncate 命令很簡單,它的意思是:刪除表的所有記錄。相當於 delete 語句不寫 where 子句一樣。其語法結構為:

TRUNCATE[TABLE]tbl_name

這里簡單的給出個示例,我想刪除 friends 表中所有的記錄,可以使用如下語句:

truncatetablefriends;

truncate 和 delete的效率問題:

如果想要刪除表的所有數據,truncate語句要比 delete 語句快。因為 truncate 刪除了表,然後根據表結構重新建立它,而 delete 刪除的是記錄,並沒有嘗試乎薯隱去修改表。這也是為什麼當向一個使用 delete 清空的表插入數據時,MySQL 會記住前面產生的AUTOINCREMENT序列,並且繼續利用它對AUTOINCREMENT欄位編號。而truncate刪除表後,表是從1開始為autoincrement欄位編號。

不過truncate命令快規快,卻不像delete命令那樣對事務處理是安全的。因此,如果我們想要執行truncate刪除的表正在進行事務處理,這個命令就會產生退出並產生錯誤信息。

⑷ PHP怎麼寫可以清空MYSQL資料庫中一個表裡面的值!

參考方法:
delete from 表名;
truncate table 表名;
不帶where參數的delete語句可以刪除mysql表中所有內容,使用truncate table也可以清空mysql表中所有內容。效率上truncate比delete快,但truncate刪除後不記錄mysql日誌,不可以恢復數據。
delete的效果有點像將mysql表中所有記錄一條一條刪除到刪完,而truncate相當於保留mysql表的結構,重新創建了這個表,所有的狀態都相當於新表。

⑸ PHP操作MySQL,刪除一行資料庫,怎麼寫

刪除一條記錄簡單方法,應該說是最簡單的入門級的了.
mysql>delete from 表名 where id=1;
query ok,
這樣就可以刪除了,
如果你和php教程 mysql配置只要利用php連接到資料庫教程再用php mysql_query("delete from 表名 where id=1");就可以刪除了。
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('could not connect: ' . mysql_error());
}
mysql_select_db("my_db", $con);
mysql_query("delete from person where lastname='griffin'");
mysql_close($con);
?>
下面看一下關於mysql delete語法.
刪除資料庫中的數據
delete from 語句用於從資料庫表中刪除記錄。
語法
delete from table_name
where column_name = some_value
注釋:sql 對大小寫不敏感。delete from 與 delete from 等效。
為了讓 php 執行上面的語句,我們必須使用 mysql_query( 函數。該函數用於向 sql 連接發送查詢和命令

閱讀全文

與php清空資料庫相關的資料

熱點內容
編程拖放 瀏覽:40
linux卸載tomcat 瀏覽:875
手機時間如何校正到伺服器 瀏覽:81
創造與魔法瞬移源碼百度 瀏覽:882
反射優化java 瀏覽:874
硬體加密播放盒子 瀏覽:923
xp點擊文件夾選項沒反應 瀏覽:537
蘋果不顯示桌面的app怎麼刪除 瀏覽:864
安卓手機怎麼換國際服 瀏覽:415
神獸領域安卓怎麼下載 瀏覽:250
單片機交通燈ad原理圖 瀏覽:413
多功能解壓磁鐵筆 瀏覽:80
少兒編程火箭升空 瀏覽:401
蘭斯10游戲解壓碼 瀏覽:42
手機proxy伺服器地址 瀏覽:449
吉他清音壓縮 瀏覽:301
簡歷模板程序員 瀏覽:882
螺桿壓縮機虛標型號 瀏覽:953
idea開發項目伺服器ip地址 瀏覽:125
串口伺服器出現亂碼怎麼解決 瀏覽:950