Hola!

Registrándote como bakuno podrás publicar, compartir y comunicarte en privado con otros bakuos :D

Regístrame ya!

AYUDA CON CONSULTAS SQL A 2 TABLAS EN VISUAL BASIC 6

jesusjalpan

Bovino maduro
Desde
22 Nov 2008
Mensajes
129
hola tengo un problema con una consulta tengo que hacer un reporte de calificaciones de alumnos, y tengo que sacar datos de 2 tablas det_calificaciones y alumnos
y ya revise y el problema lo tengo en la consulta les dejo mi codigo.. es en una funcion los datos los mando excel.

Public Function califi()

Set conex = New ADODB.Connection
Set regist = New ADODB.Recordset
Dim fila As Integer
Dim ObjExcel As Object
Dim ObjLibro As Object
Dim ObjHoja As Object
Set ObjExcel = CreateObject("Excel.Application")
Set ObjLibro = ObjExcel.Workbooks.Add '(App.Path & "\calificacion.xls")
Set ObjHoja = ObjExcel.ActiveSheet


conex.ConnectionString = "DSN=easy"
conex.Open
regist.ActiveConnection = conex
regist.CursorType = adOpenDynamic
regist.LockType = adLockOptimistic
cve = InputBox("escribe el numero de control del alumno")
regist.Source = "SELECT * FROM alumnos INNER JOIN det_calif ON alumnos.cve_alumno =cve_alumno"
regist.Open
Set ObjHoja = ObjExcel.ActiveSheet

While Not regis.EOF


porfa ayudenme grax...........
fila = fila + 1

ObjHoja.Cells(fila, 1) = regist.Fields!cve_alumno
ObjHoja.Cells(fila, 2) = regist.Fields!nombre
ObjHoja.Cells(fila, 3) = regist.Fields!calificacion
regist.MoveNext

Wend

ObjExcel.Visible = True

End Function :chavo:
 
hola tengo un problema con una consulta tengo que hacer un reporte de calificaciones de alumnos, y tengo que sacar datos de 2 tablas det_calificaciones y alumnos
y ya revise y el problema lo tengo en la consulta les dejo mi codigo.. es en una funcion los datos los mando excel.

Public Function califi()

Set conex = New ADODB.Connection
Set regist = New ADODB.Recordset
Dim fila As Integer
Dim ObjExcel As Object
Dim ObjLibro As Object
Dim ObjHoja As Object
Set ObjExcel = CreateObject("Excel.Application")
Set ObjLibro = ObjExcel.Workbooks.Add '(App.Path & "\calificacion.xls")
Set ObjHoja = ObjExcel.ActiveSheet


conex.ConnectionString = "DSN=easy"
conex.Open
regist.ActiveConnection = conex
regist.CursorType = adOpenDynamic
regist.LockType = adLockOptimistic
cve = InputBox("escribe el numero de control del alumno")
regist.Source = "SELECT * FROM alumnos INNER JOIN det_calif ON alumnos.cve_alumno =cve_alumno"
regist.Open
Set ObjHoja = ObjExcel.ActiveSheet

While Not regis.EOF


porfa ayudenme grax...........
fila = fila + 1

ObjHoja.Cells(fila, 1) = regist.Fields!cve_alumno
ObjHoja.Cells(fila, 2) = regist.Fields!nombre
ObjHoja.Cells(fila, 3) = regist.Fields!calificacion
regist.MoveNext

Wend

ObjExcel.Visible = True

End Function :chavo:

Al parecer el error esta en la parte marcada con rojo.

Deberia ser así:

Código:
regist.Source = "SELECT * FROM alumnos INNER JOIN det_calif ON det_calif.cve_alumno = alumnos.cve_alumno"

Espero te sirva. Saludos :bakayin:
 
utliza la siguiente sentencia son mas sencillas, ademas quiero pensar que el valor almacenado en CVE es la clave del alumno no? o quieres listar todos los alumnos de cualquier manera te paso la sentencia para ambos casos
1.- Alumno especifico
SELECT * FROM alumnos al, det_calif WHERE al.cve_alumno = dc. cve_alumno and al.cve_alumno = CVE
2.- Todos
SELECT * FROM alumnos al, det_calif WHERE al.cve_alumno = dc. cve_alumno
 
Volver
Arriba