In the context of relational database normalization, which of the following
statements is/are true?
Step 1: Recall dependency preservation results for normal forms. A decomposition preserves dependencies if the union of the functional dependencies projected onto the sub-relations is equivalent to the original set of functional dependencies (no dependency is lost across the decomposition).
Step 2: For 3NF - the 3NF synthesis algorithm, built from a minimal cover of the functional dependencies, always produces a decomposition that is both lossless and dependency-preserving. So statement 1 is TRUE.
Step 3: For 1NF - 1NF only requires that every attribute hold atomic values; it places no restriction linked to functional dependency splitting. So we can always simply keep the relation as a single 1NF relation without decomposing it at all, which trivially preserves every functional dependency. So statement 2 is TRUE.
Step 4: For BCNF - it is a well known limitation of BCNF that enforcing it can force a split where no single sub-relation contains all the attributes of some non-trivial functional dependency, so that dependency can then only be verified by joining relations back together. Hence a dependency-preserving BCNF decomposition is not always possible. So statement 3 is TRUE.
Step 5: For 2NF - since every 3NF relation is automatically also in 2NF, and Step 2 shows a dependency-preserving 3NF decomposition always exists, that very same decomposition also satisfies 2NF while preserving dependencies. So a dependency-preserving 2NF decomposition is always possible, making statement 4 FALSE.
Final Answer: Statements 1, 2 and 3 are true. \[\boxed{\text{Options A, B, C are correct}}\]
A schedule of three database transactions \(T_1\), \(T_2\), and \(T_3\) is shown. \(R_i(A)\) and \(W_i(A)\) denote read and write of data item A by transaction \(T_i\), \(i = 1, 2, 3\). The transaction \(T_1\) aborts at the end. Which other transaction(s) will be required to be rolled back?
