簡體   English   中英

如何設置外鍵並從多個表中檢索或刪除數據?

[英]How to set a foreign key and retrieve or delete data from multiple tables?

我是php和mysql的新手。 我創建了一個名為“ students”的數據庫,其中包含兩個表作為“ student_details”,其中包含“ ID,姓名,年齡,電話號碼,地址”等字段,而另一個表則是“ fee_details”,其中包含諸如“ ID(student_details table ID)”等字段,編號,日期,收據編號”。

我想設置一個外鍵,並在學生支付費用時從兩個表中檢索數據,並且如果學生過世或輟學,我希望有一個刪除選項,以從表中刪除其所有記錄。 因此,請幫助我通過PHP代碼解決此問題,並在使用搜索表單的同時將其顯示為HTML。

您可以嘗試mysql_query()mysql_assoc_array()

在數據庫級別加強引用完整性是必須的。 我相信,當您說要刪除“從我的表中刪除他的所有記錄”時,您的意思是刪除該行及其所有子記錄。 您可以通過使用外鍵和ON DELETE CASCADE

CREATE TABLE students 
(   
    student_id INT NOT NULL,
    name VARCHAR(30) NOT NULL,
    PRIMARY KEY (student_id)
) ENGINE=INNODB;


CREATE TABLE fee_details
(
    id INT, 
    date TIMESTAMP,
    student_id INT,

    FOREIGN KEY (student_id) REFERENCES students(student_id)
        ON DELETE CASCADE
) ENGINE=INNODB;

這樣,當從students表中刪除students ,所有與之相關的記錄都將從fee_details刪除。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM