webForumDet fria alternativet

Counter och primary key i CREATE TABLE

Databaser & SQLur Databashanterare & SQL

6 svar · 556 visningar · startad av m_soderlund

Medlem sedan sep. 20026 425 inlägg
Frågan#1

Jag undrar varför denna kod ej fungerar? Jag använder SQL Server 2000.
Enligt detta inlägg, samt detta inlägg så ska det fungera med counter? Jag får samme felmeddelande även om jag tar bort counter. :(

Cn.Execute("CREATE TABLE " & tbl_name & "(" &_
           [b][red]"id counter primary key," & _[/red][/b]
           "agentid int," & _
           "dt datetime," & _
           "ccallback int," & _
           "pcallback int," & _
           "fallout int," & _
           "negative int," & _
           "positive int," & _
           "nopickup int)")

Jag får följande felmeddelnde:

Cannot find data type counter

Jag kom dessutom precis på att id int counter primary key kanske fungerar, även om det verkar ovettigt?

Mycket tacksam för hjälp. :D

Medlem sedan juni 200032 969 inlägg
#2

Det finns inget som heter counter. I SQL Server används egenskapen identity för dylika integerfält.

Red: fältet skall alltså vara av typen int.

Mvh

Medlem sedan sep. 20026 425 inlägg
#3

Så koden är egentligen rätt?? Men en ny post i tabellen får ju inte ett nytt id-värde trots att jag använt id int primary key. :(

Medlem sedan juni 200032 969 inlägg
#4

Nej, den är inte rätt, det finns inget som heter counter.

Borde det inte stå id int identity primary key eller liknande?

Jag använder dock inte SQL-frågor för att skapa tabeller, utan vettigare verktyg, så jag är inte säker på syntaxen.

Medlem sedan sep. 20026 425 inlägg
#5
id int identity(1,1) primary key

verkar fungera. Tack!

Medlem sedan juni 200032 969 inlägg
#6

Ah, just det, man bör ange seed och increment också. :bire

Mvh

Medlem sedan sep. 20026 425 inlägg
#7

Weeee. :bire

135 ms totalt · 3 externa anrop · v20260731065814-full.25f56b17
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)