Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MS SQL Server
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-10-2006
Avatar de alastor
alastor alastor is offline
Miembro
 
Registrado: abr 2006
Posts: 59
Poder: 19
alastor Va por buen camino
problema al insertar con MS SQL Server 2000

Hola amigos :
-----------------
Casi podria decirse que estoy empesando a trabajar con SM SQL SERVER. Tengo creada una base de datos que contiene 3 tablas relacionadas entre si:
1------>3
2------>3
Cuando realizo operaciones con la 1 y 2 todo ocurre normalmente, pero cuando voy a insertar un nuevo registro en la 3 me pasa lo sgte:

despues de haber llenado uno de los campos ocurre este error:
Código Delphi [-]
Project Modelo1.exe raised exception class EOLeException with message 'Error desconocido'.
Process stopped. Use step or run to continue.
La tabla 3 contiene los sgtes campos
Id-------Int(Clave Primaria)
Etapa---Int
Provincia-Char
Destino--Int(Campo relacionado con tabla 1)
Producto-Int(Campo relacionado con tabla 2)
Necesidad --Float
Asignacion--Float
Producto_LK--string(Campo lookup que hace referencia al id de la tabla 1, y muestra el nombre del producto)
Dest_LK------string(Campo lookup que hace referencia al id de la tabla 2, y muestra el nombre del destino)
----------------------------------------------------------
Si alguien conoce el origen de este error le agradeceria que me respondiera.
_________________
Saludos
Responder Con Cita
  #2  
Antiguo 27-10-2006
Avatar de edgusano
edgusano edgusano is offline
Miembro
 
Registrado: abr 2004
Ubicación: Medellin Colombia
Posts: 180
Poder: 21
edgusano Va por buen camino
Podrias poner un ejemplo de que datos estas tratando de ingresar en dicha tabla...
__________________
Optimus Prime
Responder Con Cita
  #3  
Antiguo 27-10-2006
Avatar de alastor
alastor alastor is offline
Miembro
 
Registrado: abr 2006
Posts: 59
Poder: 19
alastor Va por buen camino
Por ejemplo:
Tengo Un DBCombobox para el campo etapa donde escojo 1 o 2....
Tengo Un DBCombobox para el campo Provincias donde pongo el nombre de la provincia
Tengo Un DBLookupcombobox para el campo Destino el cual debe de mostrarme un nombre y guardar en la tabla un numero que lo identifica, lo mismo pasa con el campo producto.
Tengo Un DBEdit para el campo ID que es el campo identificador de esta tabla y nesecidad y asignacion estan en dbedit y guardan un numero real.
El error me da al escoger la etapa y el producto por ejemplo. espero que hallas entendido.
Responder Con Cita
  #4  
Antiguo 30-10-2006
donki donki is offline
Miembro
 
Registrado: oct 2006
Posts: 24
Poder: 0
donki Va por buen camino
Revisa la Query que usas para editar los datos. Mira tambien que no tenga JOINS.

Tambien revisa la versión de MDAC que tienes instalada. La última existente és la 2.8.

Si no lo solucionas, mira de postear las SQL que usas para acceder y manipular la tabla.

Saludos
__________________
Grandes frases de nuestro tiempo:
"La pasta no és para tirarla, es para el Tunning"

"TodoOK=False...."

Enjoy it!!!
Responder Con Cita
  #5  
Antiguo 31-10-2006
Avatar de alastor
alastor alastor is offline
Miembro
 
Registrado: abr 2006
Posts: 59
Poder: 19
alastor Va por buen camino
Hola
Me he dado cuenta de que este error solo ocurre cuando en mi formulario existen DBCombobox, DBLookupCombobox u otro componente desplegable, porque con los DBEdits trabaja de lo mas bien. ¿Que podria ser eso?
Nota: Cuando ejecuto el programa desde el explorador , todo ocurre co debiera de ser???????
Responder Con Cita
  #6  
Antiguo 31-10-2006
donki donki is offline
Miembro
 
Registrado: oct 2006
Posts: 24
Poder: 0
donki Va por buen camino
Hola Alastor,

Eso no es un bug tuyo, es de la unit ADODB. Cuando hace el locate para situarse en el registro correspondiente salta ese error. No debes preocuparte, aunque es molesto para debugar. A mi tambien me ocurre. La excepción està controlada, pero en run-time debugando salta (de forma normal claro).

En el caso de campos de lookup debes poner el valor de lookupcache a true para no pase, en el caso de los controles de lookup hay una solución, però no he osado

Hay una modificación para corregir el error, pero yo no he osado ponerla. Mas vale conocido que bueno por conocer.

c'ya
__________________
Grandes frases de nuestro tiempo:
"La pasta no és para tirarla, es para el Tunning"

"TodoOK=False...."

Enjoy it!!!
Responder Con Cita
  #7  
Antiguo 01-11-2006
Avatar de alastor
alastor alastor is offline
Miembro
 
Registrado: abr 2006
Posts: 59
Poder: 19
alastor Va por buen camino
Muchisimas gracias por tus aclaraciones, me ayudaron de mucho, pues cuando me puse a provar con el ADOQuerry le quite los campos de su editor de campos y ya guarda de maravilla. ahora el error que me saca es otro.

Cuando ,despues de haber guardado, realizo alguna modificacion en la tabla(Entiendace: Actualizar los datos, eliminar) me muestra el siguiente error:
Código Delphi [-]
EOleException
El valor clave de esta fila se cambio o elimino en el almacen de datos. A continuacion se eliminara la fila local

Que crees de eso????
Responder Con Cita
  #8  
Antiguo 02-11-2006
donki donki is offline
Miembro
 
Registrado: oct 2006
Posts: 24
Poder: 0
donki Va por buen camino
Eso sucede porque tienes un valor por defecto que el SQL Server 2000 pone. Y al modificar no has refrescado.

Saludos
__________________
Grandes frases de nuestro tiempo:
"La pasta no és para tirarla, es para el Tunning"

"TodoOK=False...."

Enjoy it!!!
Responder Con Cita
  #9  
Antiguo 02-11-2006
Avatar de alastor
alastor alastor is offline
Miembro
 
Registrado: abr 2006
Posts: 59
Poder: 19
alastor Va por buen camino
Me sucede lo siguiente:
voy al ultimo registro.
refresco los datos.
inserto el nuevo registro y guardo,
pero cuando doy a refrescar me pone el error que te he dicho antes. He buscado en la tabla los valores por defecto que tu mencionabas pero ninguno de los campos tiene valores por defecto.
Responder Con Cita
  #10  
Antiguo 03-11-2006
donki donki is offline
Miembro
 
Registrado: oct 2006
Posts: 24
Poder: 0
donki Va por buen camino
Haces el refresh cerrando y abriendo la query o con el método refresh.

El método refresh no hace nada en el caso de TAdoquery
__________________
Grandes frases de nuestro tiempo:
"La pasta no és para tirarla, es para el Tunning"

"TodoOK=False...."

Enjoy it!!!
Responder Con Cita
  #11  
Antiguo 03-11-2006
Avatar de alastor
alastor alastor is offline
Miembro
 
Registrado: abr 2006
Posts: 59
Poder: 19
alastor Va por buen camino
yo uso el metodo refresh para actualizar los datos, o es que acaso cada vez que guarde algo debos de cerrar y abrir el querry ???
__________________
Saludos
Responder Con Cita
  #12  
Antiguo 03-11-2006
donki donki is offline
Miembro
 
Registrado: oct 2006
Posts: 24
Poder: 0
donki Va por buen camino
No.

El problema lo tienes en el refresh.

Por otro lado, haz una prueba:

1.- Quita el refresh
2.- Inserta un registro desde tu aplicación.
3.- Revisa los valores de los campos del registro añadido desde tu aplicación y directamente desde la tabla. Seguro que tienes campos diferentes.

Mira los campos diferentes si tienen valores asignados por defecto o bien tienes algun trigger que los modifica a posterior.

Saludos
__________________
Grandes frases de nuestro tiempo:
"La pasta no és para tirarla, es para el Tunning"

"TodoOK=False...."

Enjoy it!!!
Responder Con Cita
  #13  
Antiguo 06-11-2006
Avatar de alastor
alastor alastor is offline
Miembro
 
Registrado: abr 2006
Posts: 59
Poder: 19
alastor Va por buen camino
Hice lo que me indicaste y el lo guarda perfectamente, pero si despues quiero refrescar los datos, o borrar alguno, me da ese error.

Si fueses tan amable de ponerme algun ejemplo de como tu harias para guardar, refrescar los datos y borrarlos, teniendo dos campos lookup, y los otros que te he dicho anteriormente y con las relaciones que tengo hechas, te lo agradeceria enormemente.
Saludos
________________
Responder Con Cita
  #14  
Antiguo 07-11-2006
Avatar de alastor
alastor alastor is offline
Miembro
 
Registrado: abr 2006
Posts: 59
Poder: 19
alastor Va por buen camino
Hola donki
________________
Al fin despues de tantear con muchas cosas me di cuenta de que el problema era que debia de usar un ADOTable en vez de un ADOQuerry. parece que el querry posee algun tipo de propiedad que no deja actualizar y borrar cuando tengo dbcombobox y dblookupcombobox.
______________
Saludos y muchas gracias por tu ayuda e interes
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
Exportar database sql server 2005 a sql server 2000 ErenioDhG Conexión con bases de datos 1 29-08-2006 15:42:46
Problema campos Sql server 2000 mierda Conexión con bases de datos 1 17-07-2006 15:07:04
Problema con Access 97 en Server 2000 Patricio Conexión con bases de datos 0 16-02-2005 12:25:01
Ms Word 2000/97 + Ms sql server 7/2000 + almacenar - leer - actualizar Campos jcp_nqn Servers 0 21-12-2003 01:55:14


La franja horaria es GMT +2. Ahora son las 17:12:41.


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