我是SQL新手。我正在寻找创建一个数据库,其中一个表中的值是指向另一个“整个”表的指针(不仅仅是另一个表中的值......而是表本身)。如何实现这一点以及如何编写SQL语句来访问子表中的数据?我将用下表说明
项目:
ID Name Site Client Progress
------------------------------------------------------
1 Bronx 99-Beans Street Mr.Smith **1
2 Mandy 4-Apt Clinton Mrs. Cross **2
3 Ani 7-Magbo,Jos, NG FRN, 9ja **3
布朗克斯:
Task Description Start Finished Handler
-------------------------------------------------------------
1 Remove Top-Soil 07:50:33 12:10:05 Jack
2 Break Ground 13:00:20 15:33:52 Grader
3 Spray Fertilizer 15:55:30 17:15:23 Suzie
请注意,第二个表的名称来自Project @ id = 1的名称值。 Id仍然可以达到这个目的,在这种情况下,表格标题为'1' ... 这是相当奇怪的,但至少这解释了表应该有的关系。删除'Project'表中的记录还应删除关联的进度表(带有记录名称)*。如何创造&在SQL中查询具有此关系的表?
答案 0 :(得分:0)
在项目表中,您必须确保ID字段不仅是唯一的,而且还是名称字段。由于您希望使用名称字段在数据库中创建表,因此如果您有重复项,则会出现问题。接下来,我将从我的程序调用项目表,读取表名,然后将该名称传递给特定项目的另一个查询。例如,如果从项目表中删除特定表Bronx,则可以在项目表中编写一个触发器,该触发器将删除Row列中列出的项目特定表。底线只是您在SQL中可能发生的事情的一部分,而其余部分应该在您的程序中进行管理。