Вопрос о классической базе данных ASP

Я пытаюсь выполнить запрос типа «показать таблицы». Но я не знаю имен столбцов, которые будут возвращены запросом. Я пытался использовать что-то вроде

RS.Fields(1).Name

чтобы показать мне имена, но это, похоже, не работает. Какие-либо предложения? Вот полный код:

   Response.Buffer = true

    Dim oConn, oRs
    Dim qry, connectstr, i

    i = 1
    connectstr = "Driver={MySQL ODBC 3.51 Driver};SERVER=xxx.xxx.xxx.xxx;DATABASE=;UID=;PWD="

    Set oConn = Server.CreateObject("ADODB.Connection")
    oConn.Open connectstr

    qry = "show tables"
    Set oRS = oConn.Execute(qry)

    while not oRS.EOF
        Response.Write("<td><b>" & oRS.Fields(i).Name  & "</b></td>")
        oRS.movenext
        i = i + 1
    wend


    Set oRs = nothing
    Set oConn = nothing

person Weston Goodwin    schedule 05.10.2009    source источник


Ответы (2)


Если вам просто нужны имена полей...

For Each fldF In objRec.Fields
    Response.Write fldF.Name
    Response.Write "<br />"
Next
person David    schedule 05.10.2009

Убедитесь, что ваш пользователь базы данных для этого запроса имеет доступ к определению (структуре) базы данных. Но вы должны запретить доступ к своим веб-пользователям в целях безопасности (инъекция SQL).

person Pascal Carmoni    schedule 23.02.2013
comment
Это не отвечает на вопрос, который был задан здесь. - person Andrew Barber; 24.02.2013