Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Usar el tipo de datos sql_variant

Estas en el tema de Usar el tipo de datos sql_variant en el foro de Bases de Datos General en Foros del Web. La definición de ese tipo de datos es: "almacena valores de varios tipos de datos aceptados en SQL Server. " Pero, ¿cómo se usa? He ...
  #1 (permalink)  
Antiguo 01/03/2005, 19:28
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 11 meses
Puntos: 6
Usar el tipo de datos sql_variant

La definición de ese tipo de datos es:

"almacena valores de varios tipos de datos aceptados en SQL Server. "

Pero, ¿cómo se usa? He probado a crear una tabla poniendo una columna con sql_variant como tipo de campo, y luego no me deja introducir valores ahí (es más, no meto nada, porque no me deja, y pone luego <Binary>).

¿Cómo se usa? ¿Bajo qué circunstancias aconsejáis su uso?

Hablo de SQL Server 2000.

Última edición por un_tio; 01/03/2005 a las 19:29
  #2 (permalink)  
Antiguo 02/03/2005, 15:16
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años, 8 meses
Puntos: 25
¿Has revisado alguno de estos links?:

http://msdn.microsoft.com/library/de...u-sus_4stw.asp
http://msdn.microsoft.com/library/de...on_03_63fl.asp

Tienes alguna razón para usarlos? Nunca los he utilizado, pero imagino que son ineficientes y devorarán espacio en disco y en procesador.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #3 (permalink)  
Antiguo 02/03/2005, 16:03
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 11 meses
Puntos: 6
Bueno, al final no lo usaré. Gracias por los links, no los había mirado.

El motivo del uso, es que estoy haciendo una base de datos en la que el usuario puede crear tablas.

Así, para ahorrarle trabajo, he pensado que no tuviera que seleccionar el tipo de datos de cada campo que vaya a definir, usando el sqlvariant (que ya se adaptaría a lo que le metieran).

Saludos
  #4 (permalink)  
Antiguo 02/03/2005, 17:54
Avatar de Ruchu  
Fecha de Ingreso: octubre-2001
Mensajes: 698
Antigüedad: 23 años, 3 meses
Puntos: 2
buena idea un_tio.

aunque tampoco es mala idea poner una sencillisma lista con 3 tipos de posibles tablas. numerico,fecha,texto.
  #5 (permalink)  
Antiguo 02/03/2005, 20:33
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 11 meses
Puntos: 6
Cita:
Iniciado por Ruchu
buena idea un_tio.

aunque tampoco es mala idea poner una sencillisma lista con 3 tipos de posibles tablas. numerico,fecha,texto.
Aún habría sido mejor si hubiera funcionado.

Es lo que he hecho, poner tipos de campos a crear, pero 6 tipos, no 3. Más que si eso es mala o buena idea, es que no hay otra forma. En los datos que has puesto, te faltaría añadir tipo bit al menos (para campos de sí o no). Y bueno, puedo poner un sólo tipo de numérico, y dejar que el usuario desperdicie espacio creando tablas para números enteros, pequeños y/o grandes... En fin, es ver qué compensa más.
  #6 (permalink)  
Antiguo 03/03/2005, 15:01
Avatar de Ruchu  
Fecha de Ingreso: octubre-2001
Mensajes: 698
Antigüedad: 23 años, 3 meses
Puntos: 2
Compensa mas poner un integer aunque el usuario meta un num pequeño, que crear un variant como comentas en tu primer post.

Tampoco es necesario crear un campo si/no, se puede conseguir el mismo efecto con un integer mismo. Lo que pasa que si tu aplicacion ya esta consultando campos tipo bit.. pos habria que hacerle unos retoques para que chutara.

Yo insisto en crear una lista al usuario con 3 tipos de posibles tablas. numerico,fecha,texto.
  #7 (permalink)  
Antiguo 03/03/2005, 16:44
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 11 meses
Puntos: 6
No, lo de crear un sql-variant no compensa en ningún caso, sólo preguntaba, para saber cómo funcionaba.

En lo de crear tres tipos, numérico, fecha, y texto... Vale: numérico es decimal, ¿lo usamos también para números enteros? En cuanto a texto, pues bueno, y se pone un texto stándar de 40 caracteres, aun cuando el usuario haya veces que vaya a usar 10 como máximo...
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 06:51.