create table check

22/08/2008 - 16:45 por daniel | Informe spam
Hola a todos

necesito cuando creo una tabla en el msde aplicar una restriccion check para
q el campo nombre este siempre en mayuscula.
por ej

create table aux (nombre varchar (10) not null check(upper(nombre)))

se puede, como seria? este ejemplo no funciona...

gracias

daniel

Preguntas similare

Leer las respuestas

#6 daniel
25/08/2008 - 16:17 | Informe spam
ok, entiendo q hay muchas formas de soluionarlo,
pero como esto es una pregunta q posiblemnete tomen en un examen q tengo q
rendir necesito encotnrarle la vuelta.
y el tema es controlar usando restriccion a nivel campo q el nombre
ingresado este en mayuscula

gracias



"Juan Diego Bueno" escribió en el mensaje
news:e6#
Hola Daniel:

escribió en el mensaje de



noticias:
.
> no me funciona, no me da error cuando creo la restriccion, pero cuando
> inserto el registro no lo convierte a mayuscula, estoy probando de
> inserta nombre todos en minuscula... alguna otra sugerencia?

Es que una cosa es que tu le digas que el valor del campo tenga que estar


en
mayúsculas y otra muy diferente que cuando insertes un valor, te lo
convierta a mayúsculas.

Podrías hacer un trigger "on insert" de forma que al insertarlo, lo
cambiara automáticamente. Igual para las actualizaciones

Saludos


Respuesta Responder a este mensaje
#7 Juan Diego Bueno
26/08/2008 - 01:15 | Informe spam
Hola Daniel:

"daniel" escribió en el mensaje de
noticias:uw##
ok, entiendo q hay muchas formas de soluionarlo,
pero como esto es una pregunta q posiblemnete tomen en un examen q tengo q
rendir necesito encotnrarle la vuelta.
y el tema es controlar usando restriccion a nivel campo q el nombre
ingresado este en mayuscula

gracias



Pues si esa es la pregunta de examen, la respuesta claramente es la que te
ha dicho Gustavo.

Saludos
Respuesta Responder a este mensaje
#8 daniel
26/08/2008 - 15:41 | Informe spam
ok, pero esa instruccion no funca, no da error pero no hace nada

gracias de todas formas
daniel
"Juan Diego Bueno" escribió en el mensaje
news:
Hola Daniel:

"daniel" escribió en el mensaje de
noticias:uw##
> ok, entiendo q hay muchas formas de soluionarlo,
> pero como esto es una pregunta q posiblemnete tomen en un examen q tengo


q
> rendir necesito encotnrarle la vuelta.
> y el tema es controlar usando restriccion a nivel campo q el nombre
> ingresado este en mayuscula
>
> gracias
>
Pues si esa es la pregunta de examen, la respuesta claramente es la que te
ha dicho Gustavo.

Saludos


Respuesta Responder a este mensaje
#9 Juan Diego Bueno
26/08/2008 - 17:31 | Informe spam
Hola Daniel:

No me había dado cuenta, pero realmente la respuesta te la ha dado Alejandro
Mesa. Utilizando la intercalación adecuada, funciona perfectamente.

Resumiendo:

constraint CK_NombreMayusc CHECK (nombre=UPPER(nombre) collate
Modern_Spanish_CS_AI)

Esto comprueba que se introduce el valor en mayúsculas. Si no es así,
insisto en que no lo convierte, únicamente salta una excepción que indica
que se ha vulnerado una restricción.

Saludos

"daniel" escribió en el mensaje de
noticias:
ok, pero esa instruccion no funca, no da error pero no hace nada

gracias de todas formas
daniel
"Juan Diego Bueno" escribió en el mensaje
news:
Hola Daniel:

"daniel" escribió en el mensaje de
noticias:uw##
> ok, entiendo q hay muchas formas de soluionarlo,
> pero como esto es una pregunta q posiblemnete tomen en un examen q
> tengo


q
> rendir necesito encotnrarle la vuelta.
> y el tema es controlar usando restriccion a nivel campo q el nombre
> ingresado este en mayuscula
>
> gracias
>
Pues si esa es la pregunta de examen, la respuesta claramente es la que
te
ha dicho Gustavo.

Saludos






Respuesta Responder a este mensaje
#10 daniel
26/08/2008 - 21:33 | Informe spam
ok, probe esta instruccion en postgresql y anduvo, asiq voy a probar ahora
con collate en msde

muchas gracias por su ayuda

daniel



"Juan Diego Bueno" escribió en el mensaje
news:
Hola Daniel:

No me había dado cuenta, pero realmente la respuesta te la ha dado


Alejandro
Mesa. Utilizando la intercalación adecuada, funciona perfectamente.

Resumiendo:

constraint CK_NombreMayusc CHECK (nombre=UPPER(nombre) collate
Modern_Spanish_CS_AI)

Esto comprueba que se introduce el valor en mayúsculas. Si no es así,
insisto en que no lo convierte, únicamente salta una excepción que indica
que se ha vulnerado una restricción.

Saludos

"daniel" escribió en el mensaje de
noticias:
> ok, pero esa instruccion no funca, no da error pero no hace nada
>
> gracias de todas formas
> daniel
> "Juan Diego Bueno" escribió en el


mensaje
> news:
>> Hola Daniel:
>>
>> "daniel" escribió en el mensaje de
>> noticias:uw##
>> > ok, entiendo q hay muchas formas de soluionarlo,
>> > pero como esto es una pregunta q posiblemnete tomen en un examen q
>> > tengo
> q
>> > rendir necesito encotnrarle la vuelta.
>> > y el tema es controlar usando restriccion a nivel campo q el nombre
>> > ingresado este en mayuscula
>> >
>> > gracias
>> >
>> Pues si esa es la pregunta de examen, la respuesta claramente es la que
>> te
>> ha dicho Gustavo.
>>
>> Saludos
>>
>>
>
>
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida