Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
[VB 2005] Creare relazioni trà tabelle SQL SERVER
lunedì 21 luglio 2008 - 15.46
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
enrico23
Profilo
| Newbie
6
messaggi | Data Invio:
lun 21 lug 2008 - 15:46
Buongiorno a tutti,
Il mio problema è che devo creare un database da codice
e fin qui tutto bene utilizzo la classe
microsoft.sqlserver.management.smo
il problema nasce quando devo creare delle relazioni trà le tabelle e non ho
trovato documentazione in riferimento se non qualche piccolo accenno alla
funzione check !
Qualcuno ha un pezzettino di codice da passarmi per capire come caricare le
relazioni tra le tabelle ?
Posto il mio esempio :
'*******************************
'***** PRIMA TABELLA
Dim TableClienti As New Table(db, "Clienti")
Dim IdCliente As Column = New Column(TableClienti, "IDCLIENTE")
IdCliente.DataType = DataType.Int
IdCliente.Nullable = False
IdCliente.Identity = True
IdCliente.IdentitySeed = 1
IdCliente.IdentityIncrement = 1
Dim CodiceCliente As Column = New Column(TableClienti, "Codice Cliente")
CodiceCliente.DataType = DataType.NVarChar(10)
CodiceCliente.Nullable = True
TableClienti.Columns.Add(IdCliente)
TableClienti.Columns.Add(CodiceCliente)
Dim index As Index = New Index(TableClienti, "PK_IDCLIENTE")
index.IndexKeyType = IndexKeyType.DriPrimaryKey
index.IndexedColumns.Add(New IndexedColumn(index, "IDCLIENTE"))
TableClienti.Indexes.Add(index)
TableClienti.Create()
'*******************************
'***** SECONDA TABELLA
Dim TableAttività As New Table(db, "Attività")
Dim IdAttività As Column = New Column(TableAttività, "IDATTIVITA")
IdAttività.DataType = DataType.Int
IdAttività.Nullable = False
IdAttività.Identity = True
IdAttività.IdentitySeed = 1
IdAttività.IdentityIncrement = 1
Dim IdCliente As Column = New Column(TableAttività, "IDCLIENTE")
IdCliente.DataType = DataType.Int
IdCliente.Nullable = False
TableAttività.Columns.Add(IdAttività)
TableAttività.Columns.Add(IdCliente)
Dim index As Index = New Index(TableAttività, "PK_IDATTIVITA")
index.IndexKeyType = IndexKeyType.DriPrimaryKey
index.IndexedColumns.Add(New IndexedColumn(index, "IDATTIVITA"))
TableAttività.Indexes.Add(index)
TableAttività.Create()
'*************************************
' Qui dovrei creare la relazione trà IDCLIENTE TABELLA1 E IDCLIENTE TABELLA 2
'*************************************
POSTO LA SOLUZIONE
'******************************
'Definisco la relazione.
Dim fk As ForeignKey = New ForeignKey()
fk.Name = "FK_Clienti_Attività"
fk.Parent = TableAttività
Dim fkc As ForeignKeyColumn
fkc = New ForeignKeyColumn(fk, "IDCLIENTE", "IDCLIENTE")
fk.Columns.Add(fkc)
fk.ReferencedTable = "Clienti"
fk.DeleteAction = ForeignKeyAction.Cascade
fk.Create()
'************************************
GRAZIE COMUNQUE
(Alle volte basta solo leggere bene i riferimenti della documentazione!
GRAZIE ANTICIPATAMENTE
--
La pazienza e la costanza sono la virtù dei forti ..... io sono l''eccezione
che conferma la regola
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !