126 messaggi dal 05 agosto 2013
Data.Text = DateTime.Now.Date.ToString("dd/MM/yyyy")
Dim DataGiorno As Date = Date.ParseExact(Data.Text, "dd/MM/yyyy", Nothing)
Dim cn As New SqlConnection("Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\aspnet-RFxxxx-20190121034205.mdf;Initial Catalog=aspnet-RFApricena-20190121034205;Integrated Security=True")
cn.Open()
Dim cm1 As New SqlCommand("SELECT giorno,ora,durata,giocatore1,giocatore2,giocatore3,giocatore4 FROM Prenotazioni where giorno=@v1 order by ora asc", cn)
cm1.Parameters.Add("@v1", sqlDbType:=System.Data.SqlDbType.Date).Value = DataGiorno
Dim rs1 As Object = cm1.ExecuteReader
Dim giorno = rs1("giorno").ToString

Perché la variabile giorno ha nothing come valore, quando in realtà dovrebbe contenere un valore?
Preciso che il campo giorno della tabella contiene solo la data senza ore e minuti.

Modificato da f.amedeo il 18 febbraio 2019 16:17 -
Modificato da f.amedeo il 18 febbraio 2019 16:49 -
333 messaggi dal 05 novembre 2012
Nel post messaggio 422355 ti ho appena segnalato questa pagina

Hai letto?

SqlParameter parameter = new SqlParameter();  
parameter.ParameterName = "@Date";  
parameter.SqlDbType = SqlDbType.Date;  
parameter.Value = "2007/12/1";


Vedi qualche differenza?

Alessio
126 messaggi dal 05 agosto 2013
scioCoder ha scritto:
Nel post messaggio 422355 ti ho appena segnalato questa pagina

Hai letto?

SqlParameter parameter = new SqlParameter();  
parameter.ParameterName = "@Date";  
parameter.SqlDbType = SqlDbType.Date;  
parameter.Value = "2007/12/1";


Vedi qualche differenza?

Premesso che uso vb, non ho capito come devo intervenire sulla parametrizzazione
126 messaggi dal 05 agosto 2013
f.amedeo ha scritto:
scioCoder ha scritto:
Nel post messaggio 422355 ti ho appena segnalato questa pagina

Hai letto?

SqlParameter parameter = new SqlParameter();  
parameter.ParameterName = "@Date";  
parameter.SqlDbType = SqlDbType.Date;  
parameter.Value = "2007/12/1";


Vedi qualche differenza?

Premesso che uso vb, non ho capito come devo intervenire sulla parametrizzazione.
Nel codice ho messo:
cm1 = New SqlCommand("SELECT giorno,ora,durata,giocatore1,giocatore2,giocatore3,giocatore4 FROM Prenotazioni where giorno=@v1 order by ora asc", cn)
cm1.Parameters.Add("@v1", sqlDbType:=System.Data.SqlDbType.Date).Value = DataGiorno
il problema è che il campo giorno della tabella contiene solo la data, mentre la variabile datagiorno contiene data ed ora e minuti. quindi la clausola where del select non viene mai verificata
333 messaggi dal 05 novembre 2012
Premesso che uso vb, non ho capito come devo intervenire sulla parametrizzazione


Non è un problema di linguaggio, è un problema di concetto!

cm1.Parameters.Add("@v1", sqlDbType:=System.Data.SqlDbType.Date).Value = DataGiorno.ToString("yyyy/MM/dd")

Modificato da scioCoder il 18 febbraio 2019 17:46 -

Alessio
126 messaggi dal 05 agosto 2013
scioCoder ha scritto:
Premesso che uso vb, non ho capito come devo intervenire sulla parametrizzazione


Non è un problema di linguaggio, è un problema di concetto!

cm1.Parameters.Add("@v1", sqlDbType:=System.Data.SqlDbType.Date).Value = DataGiorno.ToString("yyyy/MM/dd")

Modificato da scioCoder il 18 febbraio 2019 17:46 -

Non so come ma ora funziona senza aver modificato
cm1.Parameters.Add("@v1", sqlDbType:=System.Data.SqlDbType.Date).Value = DataGiorno
La tua osservazione è logica ma funziona anche senza specificare il formato di datagiorno. Ripeto non so come però!!!
333 messaggi dal 05 novembre 2012
SQL Server DATE == .NET DateTime == SqlDbType.Date


Questa è la spiegazione a perchè funziona.

/Ciao

Alessio

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.