mysql如何刪除多資料表

2011-02-21 3:26 am
請問用PHP語法如何刪除mysql多資料表
例如 資料表有 a, b, c三個資料表 要刪除裡面有空白的欄位
謝謝

更新1:

資料表有 a, b, c三個資料表 刪除欄位名稱nameid裡面有空白部分

更新2:

請問如果是屬於DELETE FROM A WHERE NAMEID = '' 刪除三個資料表這樣對嗎 $sql="DELETE FROM A ,B,C WHERE NAMEID = ' ' AND tdate>='2008-01-08'";

更新3:

用$tables = array("A","B","C"); $sql = "DELETE FROM %s WHERE NAMEID = ' ' AND tdate>='2008-01-08'"; for($i=0; $i ='2008-01-08' at line 1

更新4:

錯誤訊息 syntax to use near '%s WHERE NAMEID = ' ' AND tdate>='2008-01-08' at line 1 DELETE FROM A WHERE NAMEID=' ' AND dte>='2008-01-08'

回答 (5)

2011-02-21 9:46 am
✔ 最佳答案
大大, 可以再更清楚的描述問題嗎?

2011-02-21 01:46:27 補充:
在 標準 SQL(ANSI SQL) 的指令中,對於資料的新增、修改、刪除等對應的指令分別為
新增:INSERT
修改:UPDATE
刪除:DELETE各指令語法如下
INSERT INTO 表格名稱(欄位名稱,...)
VALUES(資料,...)UPDATE 表格名稱
SET 欄位名稱1=資料1,
欄位名稱2=資料2
...
WHERE 條件子句DELETE 表格名稱
WHERE 條件子句其中,條件子句的格式為 欄位名稱=搜尋的條件註:上述那些指令一次只能對一個表格進行處理,無法同時處理多個表格。
對於大大要刪除ABC三個表格裡面有空白的欄位需求來說,本質上屬DELETE指令的範圍,
由於無法得知大大在表格內真正儲存的詳細資料,例出幾種可能執行指令供參考
(1) DELETE FROM A WHERE NAMEID IS NULL
(2) DELETE FROM A WHERE NAMEID = ''
(3) DELETE FROM A WHERE TRIM(NAMEID) = ''


2011-02-21 08:16:13 補充:
在資料庫中, 據我所知目前沒有一個資料庫可以在
DELETE指令裡一次指定多個表格,通常我們的處理會分成3次,
雖然如此的不便但也有應變之道-->使用 FOR 迴圈,
請參考下列範例

2011-02-21 08:16:47 補充:





";
}
/*
註:若實際儲存的資料是 NULL 時, 則 WHERE NAMEID = ' ' 是可以置換成
WHERE NAMEID IS NULL
*/
?>

2011-02-21 08:17:41 補充:
HTML亂了,重貼
$tables = array("A","B","C");
$sql = "DELETE FROM %s WHERE NAMEID = ' ' AND tdate>='2008-01-08'";
for($i=0; $i

";
//mysql_query($stmt);
}
註:若實際儲存的資料是 NULL 時, 則 WHERE NAMEID = ' ' 是可以置換成
WHERE NAMEID IS NULL

2011-02-21 08:18:39 補充:
HTML亂了,重貼
$tables = array("A","B","C");
$sql = "DELETE FROM %s WHERE NAMEID = ' ' AND tdate>='2008-01-08'";
for($i=0; $i<count($tables); $i++){
$stmt = sprintf($sql,$tables[$i]);
echo $stmt."<br>";
//mysql_query($stmt);
}
註:若實際儲存的資料是 NULL 時, 則 WHERE NAMEID = ' ' 是可以置換成
WHERE NAMEID IS NULL

2011-02-21 21:11:37 補充:
可以將 SQL 印出後檢查語法是否正確,
待無誤後再呼叫 mysql_query()
2015-04-18 5:05 pm
網上看了這家,因為我公司的硬碟故障,微軟的張經理都找過他們,把他們送去內湖救不出來的,都給救出來
http://www.datamaster.com.tw/
http://millerforyew1.pixnet.net/blog/
2013-10-03 5:55 pm
要買高仿的還是要去 http://aaashops。com 品質不錯,老婆很喜歡。
劝俔
2013-09-09 11:53 am
http://Lv333。com 這家不錯超3A品質,買幾次啦,跟真的一樣。
丿仌厜傍凛剎倚
2011-02-21 7:22 pm
如果a b c三個表之間有關連,則可以多表刪除


DELETE a FROM a,b,c WHERE a.nameid=b.nameid and b.grade=c.grade and c.grade='2-13';

2011-02-21 11:24:31 補充:
上面的語法會把
c表的2年13班的資料刪除
b表的2年13班的所有人也刪除
a表的2年13班裡的所有人的成績全部刪除

假設: a表是成績表,b表是人名表,c表是班級表


收錄日期: 2021-05-01 01:13:47
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20110220000015KK07795

檢視 Wayback Machine 備份