Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-12-2006
Daiana Daiana is offline
Registrado
 
Registrado: dic 2006
Posts: 4
Poder: 0
Daiana Va por buen camino
Unhappy Valores por Defecto de campos

Hola, intente colocar algunos campos nulables con valores por default como constraints para los mismos campos de la tabla, para al momento de hacer un insert no tener que especificar estos campos en la sentencia, pero no me funcionó
Que debo hacer???
Responder Con Cita
  #2  
Antiguo 11-12-2006
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
Hola!.

Que te parece si nos documentas más con la version de delphi que estas trabajando y tú base de datos la estas desarrollando en qué?
Responder Con Cita
  #3  
Antiguo 11-12-2006
Gydba Gydba is offline
Miembro
 
Registrado: ene 2004
Ubicación: Argentina
Posts: 673
Poder: 21
Gydba Va por buen camino
Elo,

Bueno, no todos los componentes de Delphi de conexión a BD se comportan de la misma manera, por lo cuál es casi imposible determinarte cuál es tu problema.
En ciertos casos, con ciertos componentes, hay que llamar al proc Clear para enviar un NULL al campo. Pero sin info no hay certezas

Lejos de eso como consejo dejaría de lado eso de no pasar los valores por default, menos por código fuente, puesto que al final cuando uno busca migrar de BD termina con un tic nervioso al CTRL F buscando donde quedaron esos parámetros sin valores que no funcionan con el nuevo motor. Pero eso tomalo o dejalo como dicen...

Sumo a mi aclaración que no todos los moteres de BD permiten valores por defecto para sus estructoras... digo nomás.
__________________
Suerte
.: Gydba :.
Responder Con Cita
  #4  
Antiguo 11-12-2006
Daiana Daiana is offline
Registrado
 
Registrado: dic 2006
Posts: 4
Poder: 0
Daiana Va por buen camino
Estoy trabajando con SQL Server 2000 de Microsoft y con Delphi 5, y aunque hago el insert sin especificar los campos que tienen valores por default en el motor de la BD (Analizador de Consultas de SQL), me sale el error, por lo tanto es imposible que en Delphi fucnione si el Motor de BD manda el error.
Entonces mi pregunta va mas hacia SQL Server que hacia Delphi. Me pueden ayudar??? HELPPPPPPPPPP!!!!!!!!!!!!!!!!!!!!!!
Responder Con Cita
  #5  
Antiguo 11-12-2006
Gydba Gydba is offline
Miembro
 
Registrado: ene 2004
Ubicación: Argentina
Posts: 673
Poder: 21
Gydba Va por buen camino
Hola nuevamente.

Sería más específico si nos comentás el tipo de error que te sale. Usas ADO, DBX, BDE? Cómo armás la sentencia del INSERT?

Yo ayudar quiero... al menos hasta que me vaya a comer que es palabra mayor
__________________
Suerte
.: Gydba :.
Responder Con Cita
  #6  
Antiguo 11-12-2006
Daiana Daiana is offline
Registrado
 
Registrado: dic 2006
Posts: 4
Poder: 0
Daiana Va por buen camino
Hola, oye muchas gracias Gydba, no te puedes ir a comer hasta que no me ayudes...
El error que me sale es que no puedo insertar valores NULL en el campo X, por ejemplo, si tengo una tabla T con los campos A, B y C, en la Base de datos a C lo tengo definido como un campo Nulable, y que por defecto guarde un '.', entonces en delphi se arma el insert con el cachedupdates, en la traza sale como insert into T (A,B) values(1,'ejemplo')
se supone debe insertar en T los valores (1, 'ejemplo', '.'), pero no lo hace, y no uqiero modificar el programa en Delphi, porque deberia modificar cientos de programas que manejan la tabla T, me explico???, entonces la solucion debe venir desde la BD de SQL Server 2000... me ayudas???
Responder Con Cita
  #7  
Antiguo 12-12-2006
Gydba Gydba is offline
Miembro
 
Registrado: ene 2004
Ubicación: Argentina
Posts: 673
Poder: 21
Gydba Va por buen camino
La verdad no te puedo seguir... debe ser la hora que me está matando el cerebro.

A ver: generás vos el INSERT a mano o mediante un clientdataset o similar? Ya probaste desde un QueryAnalyser si haciendo un INSERT te autocompleta la constraint con el valor default? Qué componentes usás?

Pues si me lo pide una mujer dejaría de ser caballero si le digo que no quiero ayudarla, así que me tienes entre la espada y la pared
__________________
Suerte
.: Gydba :.
Responder Con Cita
  #8  
Antiguo 12-12-2006
Daiana Daiana is offline
Registrado
 
Registrado: dic 2006
Posts: 4
Poder: 0
Daiana Va por buen camino
Pues me encantan los caballeros... vamos a ver si puedo hacerme entender...
olvidemonos de Delphi por un momento y concentremonos en el Motor de BD si?? en el QueryAnalizer ya lo intente y no pudo autocompletar como lo llamas tu el INSERT, quiero saber si aparte de volver el campo que acepte nulos y asignarle un valor por defecto puedo hacer otra cosa, sin tener que modificar mi programa de Delphi... Si me explico???
Si quieres me respondes mañana vale!!
Responder Con Cita
  #9  
Antiguo 12-12-2006
Gydba Gydba is offline
Miembro
 
Registrado: ene 2004
Ubicación: Argentina
Posts: 673
Poder: 21
Gydba Va por buen camino
Si desde un QA no se realiza el insert del campo default entonces es un tema de base. Cómo definiste el campo dijiste?

Si mal no recuerdo la sintáxis era algo tipo:
Código SQL [-]
  CREATE TABLE Nombre_Tabla
  (NombreCampo DOMAIN [NOT NULL] [DEFAULT valor] [PRIMARY KEY],
   ..);

Probaste con pasando el nombre del campo y un null u omitiste ambos en el INSERT? Es decir:
Código SQL [-]
INSERT INTO TABLE (CAMPO1, CAMPO2) VALUES (VALOR1, NULL);
o
INSERT INTO TABLE (CAMPO1) VALUES (VALOR1);

Honestamente hace eternidad que no utilizo el SQL Server y no lo tengo a mano como para seguirte. Quizás es uno de esos SETs raros que hay que establecer (como el famoso SET MDY para las fechas) para los nulls quizás.
__________________
Suerte
.: Gydba :.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Cómo se utilizan los Valores por defecto de MySQL con Zeos?? arthurmax MySQL 1 21-05-2006 17:47:49
Valores por defecto de PostgreSQL, son impedidos por zeos arthurmax Conexión con bases de datos 0 03-04-2006 15:39:45
Valores por defecto no salen fearlex Conexión con bases de datos 3 17-01-2006 15:25:57
Mysql con DBExpress: valores por defecto moebius Conexión con bases de datos 4 17-06-2004 17:37:43
Campos con valores por defecto caiac Firebird e Interbase 1 23-01-2004 16:05:15


La franja horaria es GMT +2. Ahora son las 09:35:38.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi