salve a tutti
Mi hanno chiesto di migrare un progetto asp.net che utilizza access su SqlServer,
i dubbi sono 2:
-Oledb è compatibile con sqlServer?
-i parametri posso dargli un nome? ricordo il mio ultimo progetto gli davo il "?" come punto
-SELECT@@IDENTITY lo gestisce anche sqlSerer? il codice lo usa per avere il contatore per l'ultima connessione per i campi autonumber
qui sotto una piccola routine del programma:
si intravede bene che utilizza i driver Oledb, si nota come ritorna il contatore con @@Identity ed i vari parametri del command
ecco le domande
-Secondo voi è tutto da rifare da zero?
-me la cavo con poche modifiche?
-va bene cosi ed è riusabile?
grazie
codice:
Public Function Inserisci(Optional ByVal UseTransaction As Boolean = False) As Integer
strSql = "INSERT INTO RigheOrdineFornitore ( Descrizione,RcodOrdine,RcodArticolo,quantita,peso,iva,RcodTipologia) " &
" VALUES (@Descrizione,@RcodOrdine,@RcodArticolo,@quantita,@Peso,@Iva,@RcodTipologia)"
CMD = New OleDbCommand(strSql, Conn)
With CMD
.Parameters.Add("@Descrizione", OleDbType.VarChar).Value = Descrizione & ""
.Parameters.Add("@RcodOrdine", OleDbType.Integer).Value = RcodOrdine
.Parameters.Add("@RcodArticolo", OleDbType.Integer).Value = RcodArticolo
.Parameters.Add("@Quantita", OleDbType.Double).Value = Quantita
.Parameters.Add("@Peso", OleDbType.VarChar).Value = Peso & ""
.Parameters.Add("@Iva", OleDbType.Double).Value = Iva & ""
.Parameters.Add("@RcodTipologia", OleDbType.Integer).Value = IIf(RcodTipologia = 0, DBNull.Value, RcodTipologia)
If UseTransaction Then .Transaction = mvTrans
.ExecuteNonQuery()
End With
CMD = Nothing
Dim COntatore As Long
Dim cmdC As OleDbCommand = New OleDbCommand("SELECT@@IDENTITY", Conn)
COntatore = CType(cmdC.ExecuteScalar, Integer)
Return COntatore
End Function