sql >> Databáze >  >> RDS >> Sqlserver

Microsoft SQL Server:Nějaký způsob, jak zjistit, kdy byl záznam vytvořen?

Ne.

K tomu musíte mít sloupec.

Představte si, jak velká by byla metadata, kdybyste pro vytvoření potřebovali uchovávat záznam pro každý záznam! Chtěli byste také uchovat metadata ve svých metadatech, abyste věděli, kdy byla metadata aktualizována? Využití prostoru může rychle eskalovat.

SQL Server uchovává některé statistiky, ale něco tohoto specifického bude muset pocházet z uživatelem definovaného pole.

Jako vedlejší poznámku můžete ztížit manipulaci s datem ve vytvořeném poli, pokud použijete vyhledávací tabulku. Vytvořte tabulku "TableName_CreateDate" a použijte PK z vaší skutečné tabulky a hodnotu data. Vaše datum je na jiném místě a je méně pravděpodobné, že bude upraveno, ale stále se můžete JOIN na něj, abyste dostali svou objednávku. Budete muset vytvořit spouštěč, abyste jej aktualizovali novými hodnotami.

Pokud chcete pouze DATUM a nepotřebujete hodnotu datetime, můžete jít o krok dále a mít pouze tabulku dat a vyhledávací tabulku, která se k ní připojí. T.j.:

Table->Table.PK + Date.Pk -> DateTable

To by ušetřilo spoustu místa na disku, pokud máte hodně řádků (myslím, že 4 bajty na řádek).



  1. Vícenásobné vložení SQL Oracle

  2. Dva automatické přírůstky nebo automatické přírůstky a stejná hodnota v druhém sloupci

  3. Synchronizace databáze Mysql mezi dvěma databázemi

  4. Jak používat ST_Intersects v klauzuli WHERE