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
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Problemi con MissingSchemaAction.AddWithKey
venerdì 08 settembre 2006 - 09.31
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
birulo
Profilo
| Newbie
6
messaggi | Data Invio:
ven 8 set 2006 - 09:31
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
38
messaggi | Data Invio:
gio 14 set 2006 - 23:59
>>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.
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 !