Campo date in sql server 2005 null

lunedì 21 dicembre 2009 - 09.43

basicdany Profilo | Expert

Ciao, a tutti, in una query parametrica, sono presenti 3 campi data, essi possono essere null, se sono null, quindi nelle txt non ci sono date la query mi restituisce un eccezione, questo come si puo evitare in modo che se ci sono campi null non dia errore la query

grazie a tutti.

Teech Profilo | Expert

Linguaggio di programmazione?
A quale scopo fai la query?
Su quale DBMS?
Che errore restituisce?
Dove restituisce l'errore?

Senza ueste risposte è difficile rispondere...
--------------
Maurizio Brini
--------------
Nessuna impresa è mai stata compiuta da un uomo ragionevole

basicdany Profilo | Expert

ciao:

Linguaggio di programmazione? vb.2008
A quale scopo fai la query? query "insert into ecc ecc" parametrica (salvataggio dati)
Su quale DBMS? sql server 2005
Che errore restituisce? deve avere valore compreso da 12.00 01/02/2008 a 12.00 ecc


Quindi per intenderci l'utente non inserisce sempre i campi data.

Aspetto risposta grazie

Teech Profilo | Expert

Immagino che usando SQL utilizzi i parametri nei Command... Se è così è sufficiente che imposti il parametro sul valore System.DBNull.Value.
--------------
Maurizio Brini
--------------
Nessuna impresa è mai stata compiuta da un uomo ragionevole

basicdany Profilo | Expert

quindi per intenderci:

SQLQuery = "INSERT INTO Immobili (IdAgenzia,IsTrattativa,DataTrattativa,IdProvincia)
"VALUES (@IdAgenzia, @IsTrattativa, @DataTrattativa, @IdProvincia


Cmd.Parameters.AddWithValue("@IdAgenzia", IdAgenzia)
Cmd.Parameters.AddWithValue("@IsTrattativa", IsTrattativa)
Cmd.Parameters.AddWithValue("@DataTrattativa", DataTrattativa)
Cmd.Parameters.AddWithValue("@IdProvincia", IdProvincia)

If Cn.State = ConnectionState.Closed Then Cn.ConnectionString = ConnectionString
If Cn.State = ConnectionState.Closed Then Cn.Open()

Cmd.Connection = Cn
Cmd.CommandText = SQLQuery
Cmd.ExecuteScalar()

Cn.Close()

Dove metto system.dbnull.value?

Teech Profilo | Expert

Prova così:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Piccolo consiglio: invece di ExcecuteSclar usa il metodo ExecuteNonQuery
--------------
Maurizio Brini
--------------
Nessuna impresa è mai stata compiuta da un uomo ragionevole
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