brug float eller rigtig datatyper kun hvis præcisionen angivet af decimal (op til 38 cifre) er utilstrækkelig
-
Tilnærmede numeriske datatyper (se tabel 3.3) gemmer ikke de nøjagtige værdier, der er angivet for mange tal; de gemmer en ekstremt tæt tilnærmelse af værdien.(Technet)
-
Undgå at bruge float eller reelle kolonner i WHERE-sætningssøgebetingelser, især =og <> operatorerne. Det er bedst at begrænse float og reelle kolonner til> eller
så generelt at vælge Decimal som din datatype er det bedste bud, hvis
- dit nummer kan passe ind. Decimalpræcision er 10E38[~ 38 cifre]
- mindre lagerplads (og måske beregningshastighed) af Float er ikke vigtigt for dig
- nøjagtig numerisk adfærd er påkrævet, såsom i finansielle applikationer, i operationer, der involverer afrunding, eller i lighedstjek. (Technet)
- Nøjagtig Numeriske datatyper decimal og numerisk - MSDN
- numerisk =decimal (5 til 17 bytes)
- tilknytning til decimal i .NET
- begge har (18, 0) som standard (præcision, skala) parametre i SQL server
- skala =maksimalt antal decimalcifre, der kan gemmes til højre for decimaltegnet.
- money(8 byte) og smallmoney(4 byte) er også Exact Data Type og vil tilknyttes decimal i .NET og har 4 decimaler (MSDN)
- Omtrentlig Numerisk datatype flydende og ægte - MSDN
- ægte (4 byte)
- tilknytning til Single i .NET
- ISO-synonymet for ægte er float(24)
- float (8 byte)
- tilknyttes til Double i .NET
- Alle præcis numeriske typer giver altid det samme resultat, uanset hvilken slags processorarkitektur der bruges eller størrelsen af tallene
- Parameteren, der leveres til flydende datatypen, definerer antallet af bits, der bruges til at gemme mantissen af flydende kommanummer .
- Omtrentlig numerisk datatype bruger normalt mindre lagerplads og har bedre hastighed (op til 20x), og du bør også overveje, hvornår de blev konverteret i .NET
- Hvad er forskellen mellem Decimal, Float og Double i C#
- Decimal vs dobbelt hastighed
- SQL Server - .NET Data Type Mappings (fra MSDN)
hovedkilde :MCTS træningssæt i eget tempo (eksamen 70-433):Microsoft® SQL Server® 2008 Databaseudvikling - Kapitel 3 - Tabeller, datatyper og deklarativ dataintegritet Lektion 1 - Valg af datatyper (retningslinjer) - Side 93