Problemi con MissingSchemaAction.AddWithKey

venerdì 08 settembre 2006 - 09.31

birulo Profilo | Newbie

Salve.Ho scritto un metodo che riempe un dataset ma ho riscontrato problemi in alcuni casi.Il codice è grosso modo il seguente:

Dim oconn As New Odbc.OdbcConnection(sConn)
oconn.Open()

Dim oAdapter As New Odbc.OdbcDataAdapter(query, oconn)

oAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey
oAdapter.SelectCommand.CommandTimeout = m_iQueryTimeout
oAdapter.Fill(myds)
oconn.Close()
oconn.Dispose()
oconn = Nothing

Per la precisione l'errore sollevato sull'istruzione Fill è il seguente:

Impossibile attivare i vincoli. Una o più righe contengono valori che violano il vincolo non-null, unique o foreign-key.

Facendo un pò di prove ho notato che togliendo l'istruzione che aggiunge le informazioni sulle chiavi l'errore non viene sollevato.Io uso come DB, IBM DB2. La query che eseguo è una semplice select da una tabella che non ha chiavi esterne o indici. Qualcuno può darmi una mano? Ho cercato ovunque ma non trovo nulla.

Ciao!!!

mirio Profilo | Newbie

>>oAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey
>oAdapter.SelectCommand.CommandTimeout = m_iQueryTimeout
>oAdapter.Fill(myds)
>oconn.Close()
>>oconn.Dispose()
>>oconn = Nothing

Sei un po esagerato nel usare dispose e nothing che te ne fai ? quando esci da una funzione viene chiamato dispose
Va be veniamo al problema

Credo che tu abbia un datagrid e che usi un dataset e che hai un campo boolean e che quindi a tre fasi non solo true e false.

Se e' come penso io prova manualmente ad andare sul dataset nella tabella che usi come datasource del datagrid
per i campi boleani nelle propietà metti: NullValue = false, default = valore che interessa x il nuovo record, e in nillable false.

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 !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5