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

restringir tabla

Estas en el tema de restringir tabla en el foro de Mysql en Foros del Web. hola quiero restringir los datos de una tabla en mysql y ya probe con el limit y con el check lo que quiero que haga ...
  #1 (permalink)  
Antiguo 01/11/2013, 16:57
 
Fecha de Ingreso: noviembre-2013
Mensajes: 2
Antigüedad: 11 años
Puntos: 0
restringir tabla

hola quiero restringir los datos de una tabla en mysql y ya probe con el limit y con el check lo que quiero que haga la tabla es que la limite la captura a valores menores de 200 en la cantidad a ingresar por ejemplo el precio que solo acepte capturas menores a 200 pesos
  #2 (permalink)  
Antiguo 01/11/2013, 17:04
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: restringir tabla

La constraint CHECK no está implementada en MySQL, ni siquiera en su versión más reciente.
LIMIT, por su parte, lo que restringe es la cantidad de registros devueltos por una consulta, no el valor de un campo dado, que en la consulta se hace en el WHERE.
Ahora bien, si lo que quieres hacer es que no pueda ingresarse un valor mayor, hay tres caminos:
1) Hazlo programaticamente, es decir valida lo que se ingresa, antes de mandarlo a la base. Es lo mejor y más simple.
2) Realiza las altas en la tabla por stored procedure, tal que el mismo stored evite ese ingreso generando un error que la aplicación administre (es lo que se hace).
3) Crea un TRIGGER sobre el INSERT que dispare una excepción (SIGNAL) de error que la aplicación pueda interpretar. Para eso es necesario usar las últimas versiones, que es donde existe el SIGNAL.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 01/11/2013, 22:11
 
Fecha de Ingreso: noviembre-2013
Mensajes: 2
Antigüedad: 11 años
Puntos: 0
Respuesta: restringir tabla

a entonces al momento de declarar la tabla no se puede hacer la restriccion por si sola hay que hacerla al momento del insert
  #4 (permalink)  
Antiguo 01/11/2013, 22:14
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: restringir tabla

No en MySQL.
Con otros DBMS si.
El problema es que CHECK no es parte del estándar ANSI-SQL, por lo que cada empresa hace con esos detalles lo que quieren. Algunos lo ponen, otros no... Ni siquiera el lenguaje procedural está estandarizado (T-SQL o PL/SQL), lo que lleva a que un stored procedure de SQL Server no funcione en Oracle, y uno de DB2, no lo haga en PostgreSQL... cosas así.
Cada DBMS tiene cosas que otro no, y viceversa.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: restringir, sql, tabla
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 13:37.