Este artículo describe dos formas de resolver el error 80040e14. No he escrito código ASP durante mucho tiempo. Cuando estaba haciendo un libro de visitas simple hoy, ocurrió un error:
Error del motor de base de datos de Microsoft Office Access '80040e14'
Error de sintaxis para la instrucción Insertar INTO.
Después de verificar la información en línea, descubrí que el error se debió a los siguientes motivos:
1) Utilice palabras reservadas como nombres. La mayoría de las bases de datos tienen un conjunto de palabras reservadas. Por ejemplo, nombre es una palabra reservada y no se puede utilizar para nombres de columnas en la base de datos.
2) Utilice caracteres especiales en el nombre. Ejemplos de caracteres especiales incluyen: . / * : ! # & - ?
3) Utilice espacios en los nombres de las columnas.
4) Este error también ocurre cuando se define una máscara de entrada para un objeto en la base de datos y los datos insertados no coinciden con esa máscara.
Hay dos formas de resolver este problema:
1) Al especificar nombres de columnas en la base de datos, evite el uso de palabras reservadas como nombre, fecha, dónde, selección y nivel. Además, elimine espacios y caracteres especiales.
2) Cuando el nombre del campo es el mismo que el de una palabra reservada, podemos usar [] en la declaración SQL para distinguirlos.
Insertar en mensajes([nombres],qq,content) valores ('vevb.com','76312395','Mi éxito es inseparable del apoyo de todos')
Para obtener una lista de palabras reservadas en sistemas de bases de datos comunes, consulte la página web:
Servidor SQL 2005http://technet.microsoft.com/zh-cn/library/ms143507.aspx
Microsoft Access 2007http://office.microsoft.com/zh-cn/access/HA100306432052.aspx
Microsoft Access 2000http://support.microsoft.com/default.aspx?scid=kb;en-us;Q209187
MySQLhttp://dev.mysql.com/doc/refman/5.0/en/reserved-words.html