PDA

View Full Version : آیا AllowNull با اصول طراحی دیتابیس مشکل دارد ؟



manager
چهارشنبه 22 شهریور 1385, 14:12 عصر
با عرض سلام و خسته نباشید به اساتید محترم

آیا AllowNull با اصل طراحی صحیح و استاندارد دیتابیس مشکل دارد ؟ آیا AllowNull سربار بیشتری برای گزارش گیری ایجاد می کند یا قرار دادن مقدار Default برای یک فیلد ؟

سوالات بالا یکی از مهیج ترین سوالات برای شخص خودم هست. از اساتید خواهشمندم لطفا مطالبشون رو در صورت امکان با رفرنس های معتبر تائید کنند ...

reza_rad
چهارشنبه 22 شهریور 1385, 15:38 عصر
http://databases.aspfaq.com/general/why-should-i-avoid-nulls-in-my-database.html




they are interpreted differently depending on compatibility level and ANSI settings;


For example, let's consider two values, x and y, that are both NULL. Since the definition of NULL is unknown, then you can't say x = y. However, with the ANSI setting ANSI_NULLs, this can be different. When this setting is FALSE, x = y ... however, when TRUE, x <> y. Confusing, no?


the storage engine has to do extra processing for each row to determine if the NULLable column is in fact NULL -- this extra bit can have performance implications;
they produce weird results when using calculations, comparisons, sorting and grouping;
they create problems with aggregates and joins, such as different answers for COUNT(*) vs. COUNT(column_name);
they produce unpredictable results in statistics computations, particularly WITH ROLLUP and WITH CUBE;
applications must add extra logic to handle inserting and retrieving results, which may or may not include NULL values;
they cause unpredictable results with NOT EXISTS and NOT IN subqueries (working backwards, SQL determines that NULL columns belong or do not belong to the result set, usually for the wrong reasons);
no language that supports embedded SQL has native support for NULL SQL values.