MySQL - Validar Datos de Campo

 
Vista:

Validar Datos de Campo

Publicado por Ruben Datio Jimenez (4 intervenciones) el 19/09/2005 02:59:04
Hola estoy empezando con esto de la creacion de bases de Datos en MySql y deso saber como puedo hacer para que en un campo solo me permita ingreasr determinada letra a ver para ser mas claro tengo un campo donde debo ingresat slo las letras A, B ó T.

Se que en access al crear la tabla hay un renglon de "Regla de Validación" y en Oracle se usa un "Constraint Check" pero no se como se hace en MySql

Espero me puedan ayudar

Gracias.
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

RE:Validar Datos de Campo

Publicado por Maria jose (11 intervenciones) el 20/09/2005 11:18:05
has probado al crear la columna esto

CAMPO_X CHECK (CAMPO_X= 'A' or CAMPO_X='B' or CAMPO_X='C')
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:Validar Datos de Campo

Publicado por Ruben Dario Jimenez (4 intervenciones) el 21/09/2005 03:41:23
Hola María jose

pues probe lo que me enviaste pero no me funciono, tal vez es que no me hice entender, tratare de hecerlo mejor.

he creado una tabla llamada prueba asi:

CREATE TABLE PRUEBA1(
PRUECODI INT (5) PRIMARY KEY,
PRUESINO CHAR (1) CHECK (PRUESINO='S' OR PRUESINO='N'));

Esto me crea la tabla, la idea es que en el campo PRUESINO solo me permita ingresar S o N.

Pero cuando uso

INSERT INTO PRUEBA1 VALUES (1,'X');

Me permite hacerlo y lo que estoy buscando es que cuando haga un INSERT como el anterior no me lo permita ya que debe ser S o N.

Espero haya sido un poco mas claro y que me puedan ayudar

Nuevamente Gracias
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:Validar Datos de Campo

Publicado por Maria jose (11 intervenciones) el 21/09/2005 11:41:00
Se lo que quieres hacer y te explicaste muy bien.

Cierto es q esto no funciona como las constraint de oracle y el por qué no lo se.

Como no le montes un trigger a la tabla de before insert or update para que lo compruebe..

Voy a investigar a ver si encuentro el por qué no funciona esto.

saludos
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:Validar Datos de Campo

Publicado por Ruben Dario Jimenez Ramirez (4 intervenciones) el 22/09/2005 03:51:24
De todas formas muchas gracias Maria Jose y no solo te lo agradezco yo sino mis demas compañeros si llegas a saber algo porfa me informas.

y si no nos rajan y nos dicen como yo te escribo vale?
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:Validar Datos de Campo

Publicado por Maria jose (11 intervenciones) el 23/09/2005 13:56:55
OK, si te enteras me cuentas pq yo aun no consigo ver nada
Escibeme al correo [email protected]

Saludos y suerte.
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

Ya lo encontré

Publicado por Esteban (380 intervenciones) el 28/09/2005 08:05:23
Lo que necesitan es un tipo de dato llamado enum:

CREATE TABLE shirt (
id SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,
style ENUM('t-shirt', 'polo', 'dress') NOT NULL,
color ENUM('red', 'blue', 'orange', 'white', 'black') NOT NULL,
owner SMALLINT UNSIGNED NOT NULL REFERENCES person(id),
PRIMARY KEY (id)
);

No es infalible, pero creo que les puede funcionar.
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:Ya lo encontré

Publicado por will (1 intervención) el 29/01/2006 12:24:08
Está muy bien lo del enum, me lo guardo y muchas gracias, pero a mi el problemilla que me surge es que quiero validar que el campo sea mayor que 0,
CHECK (VALOR>0) y con el enum me es imposible. si alguien sabe algo lo agradeceria. UN SALUDO y muchas gracias por la colaboracion
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:Ya lo encontré

Publicado por jorge alberto pacheco (1 intervención) el 06/11/2017 05:44:38
según yo, el problema se resuelve con crear la tabla "respuesta" le id_respuesta (autoincrementar) ; respuesta (varchar (1)) agregas los datos
yes y no, y el enumerador los pondra como 1= yes y 2= no. : creas la relacion entre las tablas y tu problema esta solucionado.
saludos.
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