valor predeterminado en campo

26/07/2004 - 19:20 por Manuel | Informe spam
como puedo establer un valor predeterminado para un campo
de una tabla?
Lo que quiero es que si se agrega o modifica un registro
en una tabla, el campo fecha se actualice automaticamente
si no lo ingreso.
Tambien si en el programa VB no especifico el campo en
alta o modificacion.

gracias

Preguntas similare

Leer las respuestas

#1 Maxi
26/07/2004 - 19:30 | Informe spam
Hola, revisa el uso de DEFAULT , un simple ejemplo seria

CREATE TABLE #PEPE (ID INT, FECHA DATETIME DEFAULT (GETDATE()))
GO

INSERT INTO #PEPE (ID) VALUES ('1')
INSERT INTO #PEPE VALUES ('1',DEFAULT)

Un abrazo



Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Manuel" escribió en el mensaje
news:444101c47334$e4a552b0$
como puedo establer un valor predeterminado para un campo
de una tabla?
Lo que quiero es que si se agrega o modifica un registro
en una tabla, el campo fecha se actualice automaticamente
si no lo ingreso.
Tambien si en el programa VB no especifico el campo en
alta o modificacion.

gracias






Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.722 / Virus Database: 478 - Release Date: 18/07/2004
Respuesta Responder a este mensaje
#2 Manuel
26/07/2004 - 20:02 | Informe spam
gracias por contestar.

tengo un problema, si intento modificar un registro desde
el administrador corporativo y saco el valor actual de la
fecha para que tome el valor por defecto, da el siguiente
error:

El valor que ha escrito no es coherente con el tipo de
datos o la logitud de la columna.
que puede pasar?
El campo es: smalldatetime

gracias


Hola, revisa el uso de DEFAULT , un simple ejemplo seria

CREATE TABLE #PEPE (ID INT, FECHA DATETIME DEFAULT


(GETDATE()))
GO

INSERT INTO #PEPE (ID) VALUES ('1')
INSERT INTO #PEPE VALUES ('1',DEFAULT)

Un abrazo



Salu2
-


-
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
-


-
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Manuel" escribió


en el mensaje
news:444101c47334$e4a552b0$
como puedo establer un valor predeterminado para un




campo
de una tabla?
Lo que quiero es que si se agrega o modifica un registro
en una tabla, el campo fecha se actualice




automaticamente
si no lo ingreso.
Tambien si en el programa VB no especifico el campo en
alta o modificacion.

gracias






Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.722 / Virus Database: 478 - Release Date:


18/07/2004


.

Respuesta Responder a este mensaje
#3 Javier Loria
26/07/2004 - 20:25 | Informe spam
Hola:
Los Default solo funcionan en Insercion y no funcionan en Modificacion.
Si quieres que se reemplace el valor cuando hay modificacion, debes
hacer un Trigger :(
Saludos,

Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.
Manuel escribio:
gracias por contestar.

tengo un problema, si intento modificar un registro desde
el administrador corporativo y saco el valor actual de la
fecha para que tome el valor por defecto, da el siguiente
error:

El valor que ha escrito no es coherente con el tipo de
datos o la logitud de la columna.
que puede pasar?
El campo es: smalldatetime

gracias


Hola, revisa el uso de DEFAULT , un simple ejemplo seria

CREATE TABLE #PEPE (ID INT, FECHA DATETIME DEFAULT (GETDATE()))
GO

INSERT INTO #PEPE (ID) VALUES ('1')
INSERT INTO #PEPE VALUES ('1',DEFAULT)

Un abrazo



Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Manuel" escribió en el mensaje
news:444101c47334$e4a552b0$
como puedo establer un valor predeterminado para un campo
de una tabla?
Lo que quiero es que si se agrega o modifica un registro
en una tabla, el campo fecha se actualice automaticamente
si no lo ingreso.
Tambien si en el programa VB no especifico el campo en
alta o modificacion.

gracias






Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.722 / Virus Database: 478 - Release Date: 18/07/2004


.
Respuesta Responder a este mensaje
#4 ulises
26/07/2004 - 20:34 | Informe spam
La opción DEFAULT GETDATE() te puede ayudar en la
inserción siempre y cuando no especifiques ningun valor en
la sentencia INSERT, pero no te es de ninguna ayuda en el
caso de actualización, para implementar ambas cosas pueden
hacer :

1) Crear un procedimiento almanceado que realice las
inserciones y actualizaciones e incluir en ella la fecha
de actualización.

2) Crear un trigger que actualice la fecha, algo como :

create trigger trupdate on tabla for update
as
begin
update tabla set fecha = getdate()
where clave in ( select clave from inserted )
end

Saludos,
Ulises

como puedo establer un valor predeterminado para un campo
de una tabla?
Lo que quiero es que si se agrega o modifica un registro
en una tabla, el campo fecha se actualice automaticamente
si no lo ingreso.
Tambien si en el programa VB no especifico el campo en
alta o modificacion.

gracias
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida