Ver Mensaje Individual
  #2 (permalink)  
Antiguo 08/03/2006, 16:23
monkyta
 
Fecha de Ingreso: noviembre-2005
Mensajes: 658
Antigüedad: 19 años, 1 mes
Puntos: 3
Eso te da por cualquiera de las siguientes causas :

1. La razón más común es que la cuenta de invitado para Internet (IUSR_MACHINE), que de manera predeterminada forma parte del grupo "Todos", no tiene permiso de escritura en el archivo de base de datos (.mdb). Para corregir este problema, utilice la ficha Seguridad del Explorador para ajustar las propiedades de este archivo, para que la cuenta de invitado para Internet tenga los permisos correctos.

NOTA: al utilizar las bases de datos de Microsoft Access con ADO, también es necesario proporcionar a la cuenta de invitado para Internet permisos de escritura en el directorio que contiene el archivo .mdb. Esto es porque Jet crea un archivo .ldb para controlar el bloqueo de la base de datos. También puede necesitar dar permisos de lectura/escritura en la carpeta "Temp", porque Jet puede crear archivos temporales en este directorio.
2. Una segunda causa de este error es que la base de datos no se abrió con el MODO correcto para escritura. Si realiza el objeto Open on the Connection, utilice la propiedad Mode para indicar los permisos de las conexiones tal como se indica aquí:
SQL = "UPDATE Products Set UnitPrice = 2;" Set Conn = Server.CreateObject("ADODB.Connection") Conn.Mode = 3 '3 = adModeReadWrite Conn.Open "myDSN" Conn.Execute(SQL) Conn.Close
NOTA: De manera predeterminada, MODE se configura como, que generalmente permite actualizaciones.
3. Otra causa de este error es que la configuración de "Sólo lectura" se puede comprobar en la página Opciones de este DSN en el Administrador de ODBC.
4. El último problema y la forma de evitarlo pertenecen a cualquier origen de datos de SQL. El error puede estar causado por instrucciones SQL que infringen la integridad referencial de la base de datos. Estas son algunas de las consultas más comunes que producen un error:
• El grupo más simple de tratar es el de los que no puede cambiar: consultas de tabla de referencias cruzadas, de paso a través de SQL, de acciones de unión o de actualización (creación de tablas) que tienen las propiedades UniqueValue configuradas en Sí.
• Otro causa muy común es cuando la unión incluye tablas ODBC vinculadas que no tienen índices únicos. En este caso, no hay ninguna manera de que SQL garantice que los registros son exclusivos en una tabla que tiene campos cuyo valor cambiará con la consulta.
• Una causa tiene una solución temporal sólida. Si intenta actualizar un campo combinado en el lado "uno" de una consulta "uno a varios", se producirá un error a menos que active las actualizaciones en cascada. De esta manera, delega la integridad referencial al motor JET.

Espero te sirva esta informacion extraida del sitio microsoft