sqlstate 42000 incorrect syntax

  • MAGL
  • MAGL's Avatar Topic Author
  • Visitor
  • Visitor
3 years 8 months ago - 3 years 8 months ago #99091 by MAGL
MAGL created the topic: sqlstate 42000 incorrect syntax
Hola a todos.
Quisiera saber si este es un error de LimeSurvey o es de SQL y si esto tiene solución(adjunto imagen). Esto paso al tratar de cagar atributos para cargar usuarios a una encuesta.
Base de datos: SQL Server 2008R2
Servidor: IIS7
Versión de LimeSurvey: 2.00+ Build 130802
Se agrede su atención.

Attachment error21.png not found

Attachments:
Last Edit: 3 years 8 months ago by MAGL.

Please Log in to join the conversation.

  • MAGL
  • MAGL's Avatar Topic Author
  • Visitor
  • Visitor
3 years 8 months ago - 3 years 8 months ago #99121 by MAGL
MAGL replied the topic: sqlstate 42000 incorrect syntax
Hola amigos, buenas noticias logre encontrar cual era el error que causaba este mensaje. Es posible que este sea un BUG cuando se instala el LIMESURVEY con las siguientes características:
-PHP
-Servidor: IIS7
-Base de datos: SQL Server 2008R2
-Versión de LimeSurvey: 2.00+ Build 130802

Una forma rápida de reparar esto fue cambiando la línea de comando donde se realizaba la inserción.
Archivo modificado: limesurvey\application\models\Participants.php
Línea: 1028

El problema era sencillo, en SQL al momento de realizar una inserción de una nueva columna en la tabla no se pone COLUMN.

Linea original:
->createCommand("ALTER TABLE {{tokens_$surveyid}} ADD COLUMN ". Yii::app()->db->quoteColumnName($key) ." ". $value ." ( ".intval($value)." )")


Attachment linea_no_modificada.png not found




Solo se suprime la palabra reservada COLUMN. Nueva línea:
->createCommand("ALTER TABLE {{tokens_$surveyid}} ADD ". Yii::app()->db->quoteColumnName($key) ." ". $value ." ( ".intval($value)." )")


Attachment linea_modificada.png not found




Espero que esto sea de ayuda.
Que tengan un buen día.
Attachments:
Last Edit: 3 years 8 months ago by MAGL.

Please Log in to join the conversation.

Start now!

Just create your account and start using Limesurvey today.