ACC2002: Server mensaje "Error 134" al intentar convertir la base de datos

Seleccione idioma Seleccione idioma
Id. de artículo: 282390 - Ver los productos a los que se aplica este artículo
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
importante : este artículo contiene información acerca de cómo modificar el registro. Antes de modificar el Registro, asegúrese de hacer una copia de seguridad del mismo y de que sabe cómo restaurarlo si ocurre algún problema. Para obtener información sobre cómo realizar una copia de seguridad, restaurar y modificar el Registro, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
256986Definición del Registro de Microsoft Windows
Moderada: Requiere macro básico, codificación y las capacidades de interoperabilidad.

Este artículo se aplica únicamente a las bases de datos de Microsoft Access (.mdb).

Expandir todo | Contraer todo

En esta página

Síntomas

Cuando intenta convertir la base de datos, puede recibir un mensaje de error similar al siguiente:
Nombre de la variable de error 134 del servidor: '@ Forms......' ya se ha declarado. Los nombres de variables deben ser únicos dentro de un lote de consultas o procedimiento almacenado.

Línea de error del servidor 170: 7: sintaxis incorrecta cerca de ') '.

Causa

Este comportamiento puede producirse si las consultas en la base de datos contienen parámetros que coinciden con los primeros 30 caracteres. Por ejemplo, la siguiente consulta produce el mensaje de error:
   PARAMETERS [123456789012345678901234567890start] DateTime,    [123456789012345678901234567890end] DateTime;
   SELECT item, date
   FROM Table1
   WHERE date Between [123456789012345678901234567890start] And    [123456789012345678901234567890end];
				
nota que esta consulta contiene dos parámetros que coinciden entre sí a través de los primeros 30 caracteres:
  • DateTime [123456789012345678901234567890start]
  • DateTime [123456789012345678901234567890end]

Solución

Para resolver este problema, cambie los nombres de parámetro de tal manera que se diferencian en los primeros 30 caracteres. Por ejemplo, si la consulta contiene los dos parámetros siguientes
  • DateTime [123456789012345678901234567890start]
  • DateTime [123456789012345678901234567890end]
Puede cambiar los parámetros al siguiente:
  • [start123456789012345678901234567890] DateTime
  • [end123456789012345678901234567890] DateTime
Tenga en cuenta que el Asistente para convertir a SQL Server acepta sólo los primeros 30 caracteres, por tanto, la consulta SQL resultante contiene los siguientes parámetros:
  • (@ start1234567890123456789012345) DateTime
  • (@ end123456789012345678901234567) DateTime

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "La información de este artículo se refiere a:" de este artículo.

Más información

Advertencia : si utiliza incorrectamente el Editor del registro, pueden surgir problemas graves que conlleven la reinstalación del sistema operativo. Microsoft no garantiza que pueda solucionar los problemas resultantes del uso incorrecto del Editor del Registro. Utilice el Editor del Registro bajo su responsabilidad.

Pasos para reproducir el problema

  1. Inicie el Editor del registro (Regedit.exe).
  2. Abra la siguiente clave del registro:
    HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\Access\Wizards\Preferences\Upsizer\Quiet
  3. Establecer el valor de esta clave en no y, a continuación, cierre el Editor del registro.
  4. Inicie Microsoft Access y, a continuación, cree una nueva base de datos, Bd1.mdb.
  5. Crear una tabla nueva en Db1.mdb:
       Table: Table1
       ----------------------
       Field Name: ID
       Data Type:  Text
       PrimaryKey: Yes
    
       Field Name: Date
       Data Type:  Date/Time
    
       Field Name: Item
       Data Type:  Text
    					
  6. En la ventana base de datos, haga clic en consultas y, a continuación, haga doble clic en crear una nueva consulta en la vista Diseño .
  7. Haga clic en Cerrar y, a continuación, haga clic en SQL en la barra de herramientas Diseño de consulta .
  8. En el Editor de SQL, escriba la siguiente consulta:
       PARAMETERS [123456789012345678901234567890start] DateTime,    [123456789012345678901234567890end] DateTime;
       SELECT item, date
       FROM Table1
       WHERE date Between [123456789012345678901234567890start] And    [123456789012345678901234567890end];
    					
  9. Guarde la consulta como qryLongParameters y, a continuación, cierre el Editor SQL.
  10. En el menú Herramientas , seleccione Utilidades de base de datos y, a continuación, haga clic en Asistente para convertir a SQL Server .
  11. Convertir la base de datos a SQL Server.

    Recibirá un mensaje de error similar a la enumerados en la sección "Síntomas" de este artículo.

Referencias

Para obtener más información acerca de cómo convertir la base de datos, haga clic en Ayuda de Microsoft Access en el menú Ayuda , escriba convertir en el Ayudante de Office o en el Asistente para Ayuda y, a continuación, haga clic en Buscar para ver los temas.

Propiedades

Id. de artículo: 282390 - Última revisión: martes, 11 de febrero de 2014 - Versión: 4.2
La información de este artículo se refiere a:
  • Microsoft Access 2002 Standard Edition
Palabras clave: 
kbnosurvey kbarchive kbmt kbbug kbnofix KB282390 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 282390

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com