爲什麼Netezza雖然具有外鍵的概念,但並不「強制」外鍵約束?不執行限制有什麼好處?Netezza外鍵約束
1
A
回答
4
Foreign Keys
仍然被查詢優化器用來幫助構建最有效的查詢計劃,同時估計查詢的成本。使用Foreign/Primary Keys
來利用許多數據庫可視化工具(包括Microsoft Visio)也很重要。不強制約束的優點是速度。 Netezza能夠通過不保留此功能來擠壓額外的性能。
0
測試的Netezza SQL:FOREIGN KEY子句
------------------------------------------------------------------
/*
NOTICE: foreign key constraints not enforced <-- Netezza SQL Parser complains here
*/
/* Start time 4/25/2013 6:21:32 PM, end time 4/25/2013 6:21:32 PM. */
/* Duration 0.078125 sec. */
CREATE TABLE table2ref
(
col1 smallint NOT NULL
,colref2 smallint
,col3 varchar(30)
,CONSTRAINT fk_column_colref2 <-- THIS IS REF CONSTRAINT
FOREIGN KEY (colref2)
REFERENCES test2delete (col1) <-- the ref table must already be created
);
/* Start time 4/25/2013 6:21:32 PM, end time 4/25/2013 6:21:37 PM. */
/* Duration 4.53125 sec. */ <-- Observe how long the INSERT takes
/* Records Affected: 1. */
insert into table2ref values (3,12345,'reftabstring'); <-- THIS IS NON-EXISTING KEY "12345"
/* Start time 4/25/2013 6:21:37 PM, end time 4/25/2013 6:21:39 PM. */
/* Duration 2.65625 sec. */ <-- Observe how long the INSERT takes
/* Records Affected: 1. */
insert into table2ref values (3,12345,'reftabstring');
相關問題
- 1. 外鍵約束
- 2. 外鍵約束
- 3. 外鍵約束
- 4. 外鍵:與外鍵約束
- 5. CakePHP&外鍵約束
- 6. SQL約束:外鍵
- 7. MySQL外鍵約束
- 8. 與外鍵約束
- 9. 與外鍵約束
- 10. 從外鍵約束
- 11. 外鍵約束 - Pentaho
- 12. SqlAlchemy外鍵約束
- 13. mysql外鍵約束
- 14. 外鍵約束5
- 15. 外鍵約束SQL
- 16. SQLite外鍵約束
- 17. Sql外鍵約束
- 18. Netezza改變列約束
- 19. 添加外鍵外鍵約束表
- 20. innodb和外鍵 - 外鍵約束失敗
- 21. 種子外鍵約束
- 22. Laravel改變外鍵約束
- 23. 外鍵約束語法
- 24. Rails 3外鍵約束
- 25. 數據庫外鍵約束
- 26. 檢查外鍵約束MySQL
- 27. Oracle外鍵約束問題
- 28. 可空的外鍵約束
- 29. Postgres:違反外鍵約束
- 30. 添加外鍵約束