1、給news表和column表做一個外鍵關(guān)聯(lián),級聯(lián)刪除。就是說刪除column表中的一個id時,將會自動刪除news表中column_id值與column表中的一個id相同的記錄。
公司主營業(yè)務(wù):網(wǎng)站設(shè)計、成都網(wǎng)站設(shè)計、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊有機(jī)會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出源城免費(fèi)做網(wǎng)站回饋大家。
2、這樣可以用一條sql語句來刪除,$sql = delete test1,test2 from test1 left join test2 on testname=testname where testpass=testpassmysql_query($sql);表明換成你的數(shù)據(jù)表名,試試看。
3、有兩個辦法:連續(xù)寫兩條sql語句,將兩條相關(guān)記錄同時刪除。寫一個觸發(fā)器,當(dāng)?shù)谝粋€表相關(guān)的記錄刪除時,同時調(diào)用觸發(fā)器刪除第二個表的相關(guān)記錄。
4、要想刪除數(shù)據(jù)必須先刪除關(guān)聯(lián)表的數(shù)據(jù)(在你建立了關(guān)聯(lián)主鍵的前提下),你可以這樣寫 delete from guanlianTable G,mainTable M where G.關(guān)聯(lián)主鍵=M.主鍵 ,然后delete from mainTable ,就這兩條語句就OK了。
5、看到你的追問。數(shù)據(jù)庫是20W級別的。如果用O(n^2)的更新是肯定超時的。計算次數(shù)是20W*20W*字符長度 我給你提個O(n)的思路,不過要用程序?qū)崿F(xiàn),SQL沒機(jī)會。HQL或許有,但是不會。首先是把A,B表中的都讀到內(nèi)存。
drop 命令格式:drop database 數(shù)據(jù)庫名例如:刪除名為 RUNOOB 的數(shù)據(jù)庫:mysql drop database RUNOOB;mysqladmin 刪除數(shù)據(jù)庫 使用 mysql mysqladmin 命令在終端來執(zhí)行刪除命令。
delete刪除一行:delete from student where id=1。delete刪除多行:delete from student where in (1,2,3)3。刪除表的所有數(shù)據(jù):delete from student,請使用不帶where子句的delete語句。
給news表和column表做一個外鍵關(guān)聯(lián),級聯(lián)刪除。就是說刪除column表中的一個id時,將會自動刪除news表中column_id值與column表中的一個id相同的記錄。
執(zhí)行刪除:DELETE FROM TEST_MAIN WHERE ID = 1;最后:SELECT * FROM TEST_MAIN;結(jié)果子表中就只有ID=2的記錄,也就說明級聯(lián)刪除成功。
給news表和column表做一個外鍵關(guān)聯(lián),級聯(lián)刪除。就是說刪除column表中的一個id時,將會自動刪除news表中column_id值與column表中的一個id相同的記錄。
如果是Hibernate的話,可以再hbm.xml文件里設(shè)置cascade=“delete”就可以進(jìn)行級聯(lián)操作了。如果不是Hibernate,而是用JdBC的話,且使用觸發(fā)器的話,就要按照MySQL的觸發(fā)器的編寫規(guī)范來寫了,你的這個觸發(fā)器像是Oracle的。
給news表和column表做一個外鍵關(guān)聯(lián),級聯(lián)刪除。就是說刪除column表中的一個id時,將會自動刪除news表中column_id值與column表中的一個id相同的記錄。
delete t1 from t1,t2 where 條件 4 delete t1,t2 from t1,t2 where 條件 前 3者是可行的,第4者不可行。
如果是Hibernate的話,可以再hbm.xml文件里設(shè)置cascade=“delete”就可以進(jìn)行級聯(lián)操作了。如果不是Hibernate,而是用JdBC的話,且使用觸發(fā)器的話,就要按照MySQL的觸發(fā)器的編寫規(guī)范來寫了,你的這個觸發(fā)器像是Oracle的。
請試試下面這段代碼, ON DELETE CASCADE是成功的。我推測,你可能把主動和被動表弄錯了。下面這個例子table_a 是主動表,table_b引用table_a中的username,并建立了級聯(lián)刪除。