---
title: "Datafält i MS SQL"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/21379-datafält-i-ms-sql"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Jymdis"
published: "2001-03-02T14:35:00.000Z"
updated: "2001-03-03T17:49:00.000Z"
replies: 8
views: 521
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/21379-datafält-i-ms-sql"
---

# Datafält i MS SQL

## #1 — Jymdis, 2001-03-02T14:35Z

datafält i SQL server.. 
när jag vill använda ett litet tal så har jag ju int.. men om jag vill ha ett tal som ska klara av låt oss säga miljontals siffror.. Vad ska jag ha för datatyp då? (den behöver inte ha decimaler)..

Permalänk: https://www.webforum.nu/p/21379

## #2 — emission, 2001-03-02T15:43Z

Ett tal som är miljontals siffror långt kan knappast vara intressant att behandla som ett tal (och det går heller inte). Datatyperna text och image kan vara ett alternativ.

Permalänk: https://www.webforum.nu/p/351780

## #3 — Jymdis, 2001-03-02T15:49Z

Om vi säger såhär då:
Jag har ett fält med Unikt ID som ökar ett hela tiden och jag ska kunna ha 1 miljon sådana fält. Vad använder jag för datatyp då?

Permalänk: https://www.webforum.nu/p/351781

## #4 — LarsG, 2001-03-02T16:52Z

I ett fält som är av datatypen integer så kan man lagra värden som ligger mellan -2147483648 och 2147483647 vilket torde räcka gott och väl för dina behov.

Permalänk: https://www.webforum.nu/p/351782

## #5 — Peter_B, 2001-03-03T04:39Z

Prova annars med en UNSIGNED INT, eftersom du ju bara behöver positiva heltal. du får då dubbelt så många platser som med en vanlig INT.

inte för att det kommer att spela någon roll, men ändå.. :)

Permalänk: https://www.webforum.nu/p/351783

## #6 — Jymdis, 2001-03-03T15:48Z

Alltså.. 
Dom datatyperna ni pratar om finns inte på servern?
Okej. Jag är ganska "newbie" när det gäller MS SQL Server (den versionen jag arbertar mot är 7.0). 
Dom här valen kan jag välja i datatyp:
Binary, bit, char, datetime, decimal, float, image, int, money, nchar, ntext, numeric, nvarchar, smalldatetime, smallint, smallmoney, text, timestemp, tinyint, uniqueident, varbinary, varchar.. 

När jag ska ha ett fält med mycket text tar jag varchar, men vilket fält ska jag ta om jag behöver ett långt nummer? (inget av det ni har sagt innan finns här och jag tycker jag har provat alla för att se om man kan få långa nummer).. 

Jag har ju uppenbarligen missat nåt.. Men vad?

Permalänk: https://www.webforum.nu/p/351784

## #7 — LarsG, 2001-03-03T17:00Z

Int och integer är synonymer, så använd int. T.ex. så här

CREATE TABLE members
(   memberId  int      IDENTITY(1,1)
      PRIMARY KEY CLUSTERED,
   memberName varchar(50)     NOT NULL
      DEFAULT 'Nisse tuta')

Det blir en tabell med en identitykolumn, som alltså får unika värden automatiskt. Första värdet blit 1 och nästa 2 et.c. och maxvärdet är alltså dryga 2 miljarder.

Permalänk: https://www.webforum.nu/p/351785

## #8 — Jymdis, 2001-03-03T17:30Z

Okej.. 
Nu använder jag Enterprise Manager och får då upp ett fönster.. där d står
datatyp längd precision skala
jag har förstått att jag ska ställa in datatyp till int, men när jag gör det kan jag inte ställa in längre längd än 4?

Permalänk: https://www.webforum.nu/p/351786

## #9 — @nders, 2001-03-03T17:49Z

nä, det ska du inte heller. men det betyder inte för den sakens skull att det är fyra siffror som gäller.

integers vill ha 4 bytes att lagras i, och kan lagra enligt larsgs input ovan. ställ alltså din räknarkolumn till integer och nöj dig där. jag lovar, det räcker.

Permalänk: https://www.webforum.nu/p/351787

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/21379-datafält-i-ms-sql
