pasemos a la sentencia SQL, y donde esten esos campos ponlos entre corchetes [campos], por que??
los campos en las bases de datos no deben contener "
_ - , . ´" y evita variables tipo index, var, que son palabras reservadas
no entendi lo de los corchetes.... bien
SQL="SELECT [campo_1], [index], nombre FROM TABLA"
si te fijas los campos del ejemplo anterior, uno era campo con guion bajo, y el siguiente era de con nombre de una variable reservada
suerte