webForumDet fria alternativet
Logga in / Bli medlem

Unique Identifier

Databaser & SQL

9 svar · 181 visningar · startad av erka

Medlem sedan dec. 19996 522 inlägg
Frågan#1

Kort fråga
Om jag skapar flera tabellen i en mssql2000 db med ett fält i varje tabell som är en uniqueidentifier, då kommer ALDRIG 2 id med samma uniqueidentifier upp i databasen.

Medlem sedan dec. 19996 522 inlägg
#2

------------------
Real mad hiphop flavaz kickin' it right from tha street without no FEAR, Yo !

[Redigerat av erka den 04 okt 2001]

Medlem sedan dec. 200012 464 inlägg
#3

Det har inget med datatypen att göra. Det är funktionen NEWID() som genererar globalt unika värden.

Medlem sedan dec. 19996 522 inlägg
#4

RowGuid, vad är det för något, måste det vara yes om man ska ha det som ett unikt värde ? För i enterprisemanager när man markerade rowguid = yes så ploppade det upp NEWID() som defautl värde

Sen har jag en fråga till
Jag ska ha en tabell som heter AttachedFiles och Ifrån tabellen Topics ska fältet AttachedID relatera (1 to many) till fältet AttachedID i tabellen AttachedFiles. Vad ska fältet i attachedfiles tabellen vara av för format för att kunna relateras till det unika värdet i tabellens Topics's kolumn AttachedID ?

Medlem sedan dec. 200012 464 inlägg
#5

Samma. Om attachid i topics är uniqueidentifier så måste attachid i attachedFiles också vara det för att di skall kunna ha en foreign key mellan dem.

Medlem sedan dec. 19996 522 inlägg
#6

Hmm något är fel
Jag har i tabellen topics en uniqueide. som inte är någon primärnyckel sen i attachedfiles har jag en uniqueide. som inte heller är primärnyckel när jag försöker göra en relation mellan dem kommer "The columns in table "topics" do not match an existing primary key or Unique constraint."

Vad är det som är galet , bergis att larsg vet svaret ;) Om jag gör unique ide. i topics till primärnyckel så går det men det skulle jag helst vilja slippa, vill ha en vanlig counter som primärnyckel i den.

Hur gör man en relation mellan 2 fält som inte är primärnycklar i 2 tabeller..det måste ju gå

Medlem sedan dec. 200012 464 inlägg
#7

Du får definiera ett unique constraint på kolumnen i topics.

Medlem sedan dec. 19996 522 inlägg
#8

Tack lars G

Medlem sedan dec. 19996 522 inlägg
#9

Har stött på ett litet problem. Jag hade tänkt att använda en unique ident. som ett värde relaterat från 2 tabeller till en. Men vad jag förstår så får inte en unique identifier finnas på mer än ett ställe i hela db:n. Då kan man inte använda det värdet för att relatera till någon annan post. Jag skulle ju kunna lösa det genom att göra om den till en nvarchar (i tabellen de ska länkas i, attachedfiles) och sedan skrota relationen och göra relationen i själva asp:n och sätta in unique iden. värdet + filnamnet på filen i fältet jag gjort om till nvarchar. Plocka ut de första 16 tecken så har jag ju nummret.

Men det verkar inte smidigt, måste finnas något bättre sätt att göra det redan i db:n Någon som kan hjälpa med synpunkter och tipps?

Medlem sedan dec. 200012 464 inlägg
#10

Rent modelleringsmässigt så behöver du väl två olika tabeller för attachments och i så fall skulle du kunna skippa guidarna och använda vanliga heltal.

258 ms totalt · 4 externa anrop · v20260731065814-full.5386d3bf
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)