在 RDBMS 中,如何确保一个属性对具有该属性的所有记录呈现相同的某些其他属性

In RDBMS, how to ensure that an attribute renders certain other attributes same for all records having that attribute

Table :

SOFTWARE
----------------
PNAME (VARCHAR), 
TITLE (VARCHAR), 
DEVIN (VARCHAR), 
SCOST (NUMBER),
DCOST (NUMBER), 
SOLD (NUMBER)

如何确保每当我将值插入 table 时,TITLECOSTSSOLD 列在用作集合时都具有相同的值?即,每当列 TITLE 具有值 x 时,列 SCOSTDCOSTSOLD 具有相同的值 a , bc对于 TITLEx 的所有记录,PNAME and/or DEVIN 可能会有所不同。

"In RDBMS, how to ensure that an attribute renders certain other attributes same for all records having that attribute"

通过规范化您的数据结构。 TITLESCOSTDCOSTSOLD 需要单独的 table。主键大概 TITLE.

您现有的 table 有一个引用这个新 table 的外键。

按照 的建议,规范化您的表格。像这样:

CREATE TABLE software_titles (
  title VARCHAR2(200)
        CONSTRAINT software_titles__title__pk PRIMARY KEY,
  scost NUMBER,
  dcost NUMBER,
  sold  NUMBER
);

CREATE TABLE software_development (
  title VARCHAR2(200)
        CONSTRAINT software_dev__title__nn NOT NULL
        CONSTRAINT software_dev__title__fk REFERENCES software_titles ( title ),
  pname VARCHAR2(200),
  devin VARCHAR2(200)
);

CREATE VIEW software IS
  SELECT t.*,
         d.pname,
         d.devin
  FROM   software_titles t
         INNER JOIN
         software_development d
         ON ( t.title = d.title );