2012-06-01 17 views
5

Obtengo un conjunto de datos por DataReader y lo asigno a una cadena. Ahora necesito completar las columnas DataTable con los campos de consulta. El DataTable está conectado a una cuadrícula para mostrar los datos rellenos.Leer de la base de datos y rellenar DataTable

consulta es:

strSQL = "SELECT EmpCode,EmpID,EmpName FROM dbo.Employee 

DataTable columnas son EmpCode, EmpID, EmpName.

Necesito leer la consulta y asignar a las columnas de DataTable y llenar la tabla. Lo he intentado a continuación pero no obtengo la salida correcta,

Me.DtShifts.Tables("NonAllocated").Clear() 
Me.DtShifts.Tables("NonAllocated").Load(dr) 
+0

¿Puede simplemente leer los datos como una tabla de datos en primer lugar y eliminar el DR? –

+0

Tengo 110 registros y todos los datos se rellenan como ceros en la tabla en 110 filas .. – Bramenath

+0

¿Ha comprobado el valor en su dr? y ¿cómo llenas tu dr de un lector de datos? – Nick

Respuesta

20

El objeto de conexión es solo ilustrativo. El DataAdapter es el bit clave:

Dim strSql As String = "SELECT EmpCode,EmpID,EmpName FROM dbo.Employee" 
Dim dtb As New DataTable 
Using cnn As New SqlConnection(connectionString) 
    cnn.Open() 
    Using dad As New SqlDataAdapter(strSql, cnn) 
    dad.Fill(dtb) 
    End Using 
    cnn.Close() 
End Using 
Cuestiones relacionadas