Visual Basic - Ayuda con Consulta

Life is soft - evento anual de software empresarial
 
Vista:

Ayuda con Consulta

Publicado por mary (58 intervenciones) el 01/06/2007 15:28:13
Tengo un text en el que al colocar una letra va seleccionando los apellidos de la tabla Empleados, que empiecen por esa letra, y los regitros los coloca en un list.
Private Sub TxtBuscar_Change()
Dim db As ADODB.Connection
Set db = New ADODB.Connection
Set rs = New ADODB.Recordset
db.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Confi;DataSource=."
db.Open
If TxtBuscar.Text <> "" Then
sql = "SELECT Apellido,Nombre FROM Empleados WHERE Apellido LIKE '" & TxtBuscar.Text & "%' Order By Apellido"
Set rs = db.Execute(sql)
List1.Clear
While Not rs.EOF
List1.AddItem rs!Apellido & ", " & rs!Nombre
rs.MoveNext
Wend
End If
End Sub

Mi problema es que necesito que al seleccionar 1 de los registros que me arrojo al list, se haga una consulta que me devuelva todos los datos de ese registro a otro formularo, pero me da un error en la consulta, ya que no reconoce la "," en Apellido,Nombre = "&List1.text &"

Private Sub List1_Click()
Dim db As ADODB.Connection
Set db = New ADODB.Connection
Set rs = New ADODB.Recordset
db.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Confi;DataSource=."
db.Open
If List1.Text <> "" Then
sql = "SELECT Num_Telefonico,Proveedor,Apellido,Nombre,Direccion,Fecha_Activacion FROM Empleados WHERE Apellido,Nombre = " & List1.Text & ""
Set rs = db.Execute(sql)
If Not rs.EOF Then
frmEmpleados.LblTlf.Caption = rs!Num_Telefonico
frmEmpleados.CboProveedor.Text = rs!Proveedor
frmEmpleados.txtApellido.Text = rs!Apellido
frmEmpleados.txtNombre.Text = rs!Nombre
frmEmpleados.CboDireccion.Text = rs!Direccion
frmEmpleados.txtFecha_Acti.Text = rs!Fecha_Activacion
frmEmpleados.Show
frmActualizar_Empleado.Hide
End If
End If
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Mal: "Where Apellido,Nombre"

Publicado por Nuevo (2 intervenciones) el 01/06/2007 16:29:51
ESTA PARTE ESTA INCORRECTA:
WHERE Apellido,Nombre = " & List1.Text & ""

NO SE USAN DOS CAMPOS, SEPARADOS POR UNA COMA, PARA HACER LA CONSULTA DEBERIAS UTILIZAR 'AND' Y COMPARAR CADA CAMPO, NO ASI COMO LO ESTAS HACIENDO. Y CREO QUE EL TAL "DESPISTADO" YA TE LO HABIA CONTESTADO, A PESAR DE SU TONO NORTEÑOTE Y BRUSCO, REVISA TU MISMA PREGUNTA ANTERIOR.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda con Consulta

Publicado por fernando (102 intervenciones) el 01/06/2007 17:11:57
Ya te contesté antes en el otro post que abriste con la misma pregunta. Te contesto de nuevo lo mismo

Algo así:
......................................
Dim SQL As String
Dim comb As String

comb = "Apellido & " & "', '" & " & Nombre"
SQL = "SELECT Apellido, Nombre " & _
" FROM Empresas WHERE " & comb & " = '" & List1.Text & "'"

Dim rs As ADODB.Recordset
Set rs = miconexión.Execute(SQL)
........................................................

Atención con las comillas dobles y simples en comb. Tiene que quedar un string así:

"Apellido & ', ' & Nombre"

El separador de Apellido y Nombre debe ser igual que el que se usa al concatenarlos en el additem, por ejemplo ", " (comilla coma espacio comilla)

En tu consulta sería:

comb = "Apellido & " & "', '" & " & Nombre"
sql = "SELECT Num_Telefonico,Proveedor,Apellido,Nombre,Direccion,Fecha_Activacion FROM Empleados WHERE " & comb & " = '" & List1.Text & "'"

Probá con copy & past para no errar en las comillas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda con Consulta

Publicado por mary (58 intervenciones) el 01/06/2007 17:39:18
me dice Operador no valido para el tipo de datos. Operador bollean AND tipo varchar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

la verdadera ayuda

Publicado por quique (23 intervenciones) el 01/06/2007 17:45:13
¡Josú, pero esta chica no entiende!
le han contestado varias veces lo mismo y ni se entera de las respuestas.
la ayuda que yo te brindo es que leas las respuestas que te han dado y hagas la prueba.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda con Consulta

Publicado por fernando (102 intervenciones) el 01/06/2007 23:07:49
Si yo no uso ningún AND.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar