Foros del Web » Programación para mayores de 30 ;) » .NET »

SELECT anidado con dos tablas

Estas en el tema de SELECT anidado con dos tablas en el foro de .NET en Foros del Web. Tengo dos tablas: una, "Titular" con un solo campo "titular" y otra, "Operaciones" que tiene, entre otros, el campo "titular". Quiero que al dar la ...
  #1 (permalink)  
Antiguo 21/11/2011, 13:11
 
Fecha de Ingreso: febrero-2011
Mensajes: 29
Antigüedad: 13 años, 2 meses
Puntos: 0
SELECT anidado con dos tablas

Tengo dos tablas: una, "Titular" con un solo campo "titular" y otra, "Operaciones" que tiene, entre otros, el campo "titular". Quiero que al dar la orden de (en la tabla "Titular") suprimir un titular se compruebe antes si hay "operaciones" con dicho "titular". Si las hay, se niega la eliminación y si no, elimina. El código que utilizo es el siguiente: Tengo un TextBox (Titulartextbox) en el que escribo el nombre del que deseo suprimir y digo: "selecciona de Operaciones todas las que tengan como "titular" al que está escrito en TitularTextBox".

sql2 = "SELECT * FROM operaciones where operaciones.titular = 'titular.TitularTextbox.text' "
Luego diré
If MaxRows >0 then
Exit Sub.
Else....Delete
End If
Pero sin duda lo de 'titular.TitularTextbox.text' está mal sintácticamente, porque el programa pasa encima de ello sin hacerle caso. Además si pongo
MsgBox(sql2) me presenta la orden entera, sin transformar 'titular.TitularTextbox.text' en el nombre que aparece en la TextBox.

He intentado también hacerrlo más "fino" con dos SQL, dos da1 y dos ds1 y es igual, no me funciona este anidamiento.
¿Me podríais decir qué estoy haciendo mal? Muchas gracias.
  #2 (permalink)  
Antiguo 21/11/2011, 14:10
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: SELECT anidado con dos tablas

Hola amg39 estas comparando el campo operaciones.titular con la cadena : 'titular.TitularTextbox.text'(Que no es un campo al poner entre comillas simples) y si quieres relacionar con otro campo usa los JOIN's, no quiero imaginar que eso es tu codigo de tu proyecto... Pega tu code que tienes. Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #3 (permalink)  
Antiguo 21/11/2011, 15:28
 
Fecha de Ingreso: febrero-2011
Mensajes: 29
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: SELECT anidado con dos tablas

Gracias por tu respuesta, aunque ya he probado casi todo excepto lo que dices de los JOINs.
  #4 (permalink)  
Antiguo 04/12/2011, 22:39
Avatar de leinerb  
Fecha de Ingreso: diciembre-2011
Ubicación: Bogotá, Colombia
Mensajes: 1
Antigüedad: 12 años, 4 meses
Puntos: 1
Respuesta: SELECT anidado con dos tablas

Tal vez podria probar asi: (codigo desde c#)

String ConsultaSQL= "if exists (select * from Operaciones where Titular= ' "+ TitularTextBox.Text +" ' ) delete .... else select 'No se puede eliminar'";

Pongo las comillas simples porque me imagino que el tipo de dato del titular es un varchar, de no ser asi las puede quitar.

Espero le sirva de algo ;D
  #5 (permalink)  
Antiguo 05/12/2011, 01:42
 
Fecha de Ingreso: febrero-2011
Mensajes: 29
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: SELECT anidado con dos tablas

Muchas gracias. He solucionado el asunto mediante: Suma en la tabla A, si el resultado > 0, entonces suprime el registro en la tabla B. Saludos.
  #6 (permalink)  
Antiguo 05/12/2011, 02:45
 
Fecha de Ingreso: febrero-2011
Mensajes: 29
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: SELECT anidado con dos tablas

He dicho mal. Lo que he hecho ha sido contar: SELECT COUNT (*)... y si el resultado era positivo, entonces eliminar. No sumar, como dije.-

Etiquetas: select, sql, tabla, tablas, textbox, anidados
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:34.