a ver mentes brillantes, la cuestion es asi tengo una pagina asp se conecta a una bd de access la cual tiene una tabla con columnas, al cumplirse cierta condicion se tiene que renombrar una columna determinada y lo hago de la siguiente manera:
...
Columna = RecordsetCab.Fields.Item("titulo").Value
'------------- Para Modificar -----------------------
If (CStr(Request.Form("Modificar")) <> "") Then
SQLAlter = "ALTER TABLE tabla1 CHANGE " & Replace(Columna, " ", "_") & " " & Replace(Request.Form("Titulo"), " ", "_") & " TEXT(100)"
Set ComSQLALTER = server.CreateObject("ADODB.Connection")
ComSQLALTER.open MM_circulo_STRING
ComSQLALTER.execute(SQLALTER)
end if
...
si le hago un response.write al string SQLAlter y suponiendo que la tabla se llame tabla1 y la columna se llame columna1 y quiero cambiarle el nombre por columna2 me imprime esto
ALTER TABLE tabla1 CHANGE columna1 columna2 TEXT(100)
y cdo lo ejecuto me sale el siguiente error:
Microsoft JET Database Engine (0x80040E14)
Error de sintaxis en la instrucción ALTER TABLE.
/editacolumna.asp, línea 35
claro la linea 35 es la del string SQLAlter, pero no se cual es el error ya que googleando encontre que para modificar el nombre de la columna es como lo estoy haciendo, esta bien asi??? o es de otra manera??? gracias
P/D: uso replace por si ponen el nombre nuevo de la columna con espacios