elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Duda SQL - base de datos
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda SQL - base de datos  (Leído 3,487 veces)
karmany
Colaborador
***
Desconectado Desconectado

Mensajes: 1.615


Sueñas que sueñas


Ver Perfil WWW
Duda SQL - base de datos
« en: 3 Octubre 2009, 20:04 pm »

VB6
Tengo una base de datos con una sóla tabla: "Tabla1" y con un sólo campo: "Campo1" lo hago lo más sencillo para entender mi problema... (Control de datos Data)

1º) Quiero buscar todos los registros vacios de "Campo1" y perfectamente sale de este modo:
Código
  1. Data1.RecordSource = "SELECT * FROM Tabla1 WHERE Campo1 = NULL"

2º)Ahora pongo el criterio de que quiero que aparezcan todos los registros que comienzen por "A". También sale perfectamente de este modo:
Código
  1. Data1.RecordSource = "SELECT * FROM Tabla1 WHERE Campo1 LIKE '" & criterio & "'"

3º) Ahora viene mi DUDA... Quiero que cuando el criterio sea = "" me aparezcan todos los registros, es decir, TODOS incluídos los registros nulos. Sin embargo cuando el criterio sea <> "" pues que no aparezcan los registros nulos.
Una solución sencilla pero que no quiero hacer es la siguiente:
Código
  1. if criterio = "" then
  2.    "SELECT * FROM Tabla1 WHERE (Campo1 LIKE '" & criterio & "') OR (Campo1 = NULL)"
  3. Else
  4.    "SELECT * FROM Tabla1 WHERE Campo1 LIKE '" & criterio & "'"
  5. End If

Sin embargo, no lo quiero hacer así porque mi consulta es realmente bastante más amplia y tendría que poner muchísimas condiciones...

Mi pregunta es... ¿Se podría poner la condición criterio="" dentro de la consulta SQL?
Pongo un ejemplo, se podría intentar hacer algo así: porque no lo consigo y sería para mi perfecto:
Código
  1. "SELECT * FROM Tabla1 WHERE (Campo1 LIKE '" & criterio & "') OR ((Campo1 = NULL) AND ('criterio' = ""))"

A alguien se le ocurre la forma de hacerlo???? existe alguna forma de ver TODOS los registros, incluídos los nulos de otra forma diferente...
Cualquier sugerencia que se os ocurra por favor comentármela..

Un saludo y gracias.
karmany



En línea

cobein


Desconectado Desconectado

Mensajes: 759



Ver Perfil WWW
Re: Duda SQL - base de datos
« Respuesta #1 en: 3 Octubre 2009, 20:11 pm »

Si haces algo asi?

Código:
"SELECT * FROM Tabla1 WHERE (Campo1 LIKE '" & criterio & "')"  & iif(  criterio = "", "OR (Campo1 = NULL)",vbnullstring)


En línea

http://www.advancevb.com.ar
Más Argentino que el morcipan
Aguante el Uvita tinto, Tigre, Ford y seba123neo
Karcrack es un capo.
karmany
Colaborador
***
Desconectado Desconectado

Mensajes: 1.615


Sueñas que sueñas


Ver Perfil WWW
Re: Duda SQL - base de datos
« Respuesta #2 en: 3 Octubre 2009, 20:25 pm »

cobein MUCHÍSIMAS GRACIAS...
Me has ahorrado muchísimo trabajo inútil. Te lo agradezco enormemente.

Un saludo
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda con los datos IAT en ImportREC
Ingeniería Inversa
.:UND3R:. 3 2,669 Último mensaje 17 Junio 2011, 03:43 am
por .:UND3R:.
Duda creacion tablas en base de datos
Bases de Datos
WiseHidden 7 4,451 Último mensaje 19 Diciembre 2012, 21:50 pm
por WiseHidden
Duda Base de datos Oracle
Bases de Datos
MNicolas 0 2,219 Último mensaje 21 Febrero 2015, 19:02 pm
por MNicolas
¿Tengo una duda en la implementación de una base de datos?
Bases de Datos
theluigy13etv 1 2,282 Último mensaje 9 Noviembre 2016, 20:18 pm
por fran800m
Duda con PHP y base de datos « 1 2 »
PHP
jamatbar 14 10,691 Último mensaje 30 Octubre 2020, 15:53 pm
por jamatbar
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines