1

クライアントのサーバーを変更しました。新しいサーバーで発生したすべてのエラーを取り除こうとしています。次のような状況があります。

昨日、古いサーバーではこれはうまくいきます:

sql = "SELECT * FROM tableName INNER JOIN tableName2 ON tableName.Code = tableName2.[Global dimension 1 code] WHERE [No_]="&request("aNumber")
set rs = conn.execute(sql)

if not rs.EOF then
subCat = rs("Global dimension 1 code")
else
subCat = 0
end if

今日、IIS6 と古いものと同じ SQL サーバー 2008 を備えた新しいサーバーで、変数「subCat」を空にしますが、次のように記述します。

subCat = rs("code")

それはうまくいきます。また:

do until rs.EOF
  for each x in rs.Fields
    Response.Write(x.name)
    Response.Write(" = ")
    Response.Write(x.value & "<br>")
  next
  Response.Write("<br>")
  rs.MoveNext
  loop

すべての列、スペースを含む列、および次のようなものを提供します。

subCat = rs("[Global dimension 1 code]")
subCat = rs("'Global dimension 1 code'")
subCat = rs("[tableName].[Global dimension 1 code]")

500 サーバー エラーが発生します。

スペースを含むレコードセットの列を指すヒントはありますか? 私は ASP クラシックを使用しています。前もって感謝します。

4

1 に答える 1

1

選択するフィールドを明示的に指定します。

Select fieldname1, fieldname2 from ...

それ以外の

Select * from ...
于 2012-11-07T06:13:01.613 に答える