TAILIEUCHUNG - SQL Antipatterns- P3

Tham khảo tài liệu 'sql antipatterns- p3', công nghệ thông tin, cơ sở dữ liệu phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả | Solution Simplify the Relationship 101 CREATE TABLE Comments comment_id SERIAL PRIMARY KEY issue_id BIGINT UNSIGNED NOT NULL author BIGINT UNSIGNED NOT NULL comment_date DATETIME comment TEXT FOREIGN KEY issue_id REFERENCES Issues issue_id FOREIGN KEY author REFERENCES Accounts account_id Note that the primary keys of Bugs and FeatureRequests are also foreign keys. They reference the surrogate key value generated in the Issues table instead of generating a new value for themselves. Given a specific comment you can retrieve the referenced bug or feature request using a relatively simple query. You don t have to include the Issues table in that query at all unless you defined attribute columns in that table. Also since the primary key value of the Bugs table and its ancestor Issues table are the same you can join Bugs directly to Comments. You can join two tables even if there is no foreign key constraint linking them directly as long as you use columns that represent comparable information in your database. Download Polymorphic soln SELECT FROM Comments AS c LEFT OUTER JOIN Bugs AS b USING issue_id LEFT OUTER JOIN FeatureRequests AS f USING issue_id WHERE 9876 Given a specific bug you can retrieve its comments just as easily. Download Polymorphic soln SELECT FROM Bugs AS b JOIN Comments AS c USING issue_id WHERE 1234 The point is that if you use an ancestor table like Issues you can rely on the enforcement of your database s data integrity by foreign keys. In every table relationship there is one referencing table and one referenced table. Repor erratum this copy is printing May 2010 The sublime and the ridiculous are often so nearly related that it is difficult to class them separately. Thomas Paine Chapter 8 Multicolumn Attributes I can t count the number of times I have created a table to store people s contact information. Always this kind of table has commonplace columns such as the person s name .

TỪ KHÓA LIÊN QUAN
TAILIEUCHUNG - Chia sẻ tài liệu không giới hạn
Địa chỉ : 444 Hoang Hoa Tham, Hanoi, Viet Nam
Website : tailieuchung.com
Email : tailieuchung20@gmail.com
Tailieuchung.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi hàng triệu tài liệu như luận văn đồ án, sách, giáo trình, đề thi.
Chúng tôi không chịu trách nhiệm liên quan đến các vấn đề bản quyền nội dung tài liệu được thành viên tự nguyện đăng tải lên, nếu phát hiện thấy tài liệu xấu hoặc tài liệu có bản quyền xin hãy email cho chúng tôi.
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.