Scusate se continuo a rompere ma le lacune sono molte.
Sono costretto a usare ODBC perché è l'unico modo che mi da il provider per accedere ad un file mysql.
Quindi per ottenere un equivalente del recordset -> data.datatable uso il seguente codice.
(Attualmente le prove sono con un DataBase di Access).
Ho letto che OdbcDataAdapter restituisce tutti i record?Codice PHP:Imports Microsoft.VisualBasic
Imports System
Imports System.Web
Public Class DataBase
Function FindRecord(ByVal Table As String, ByVal Sql As String) As Data.DataTable
Err.Clear()
Dim Contesto As HttpContext = HttpContext.Current
Dim ObjCo As New Data.Odbc.OdbcConnection
ObjCo.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("connString")
If Err.Number <> 0 Then Contesto.Response.Redirect("~/errore.htm?P=FR001")
Dim DataAD As Data.Odbc.OdbcDataAdapter
DataAD = New Data.Odbc.OdbcDataAdapter(Sql, ObjCo)
If Err.Number <> 0 Then Contesto.Response.Redirect("~/errore.htm?P=FR002")
Dim Rs As New Data.DataTable
Dim returnValue As Integer = DataAD.Fill(Rs)
If Err.Number <> 0 Then Contesto.Response.Redirect("~/errore.htm?P=FR003")
FindRecord = Rs
ObjCo.Close()
End Function
End Class
Quello che non ho capito è restituisce tutti i record previsti dalla Sql. I record saranno molti, se mai finirò il tutto, e l'idea che carichi 30.000 record per selezionarne uno mi sembra una follia.
Le Sql che uso generalmente selezionano un solo record "ID=Valore" quindi di solito uso
Data.DataTable.Rows(0)("Campo")
è corretto il modo di procedere? Ci sono altre soluzioni?
Un grazie anticipato, e buon Natale a tutti.
Tomas

Rispondi quotando