質問

2008年09月10日 11時52分
  • SQL2000のデータベースへアクセス出来ない

情シスのオープンナレッジ『Syszo』サービス終了のお知らせ

質問

困った現象が発生しており、対処に苦慮しております。
何か対処に関するアドバイスを頂ければ幸いです。

『Windows2000ServerとSQL2000』の組合せでは問題なく稼働しておりました
ASP関連プログラムとデータベースを、『Windows2003ServerとSQL2000』
の組合せに移行しました。

自前で作成したASPプログラムを実行した所、以下のようなメッセージが
表示されデータベースへのアクセスが出来ません。 データベース名は日本
語になっていますが、同様な名前の”会員マスタtbl”には問題なくアクセ
スが可能です。
全てがアクセス出来ないのであれば、他の原因があるのかもしれませんが、
他のデータベースへは問題なくアクセス出来るのに、この
”会員番号マスタ
tbl”
のみ下記エラーが発生してしまいます。
テーブル名称が長いのかもしれないと思い、他のテーブルと同じようなサイ
ズに短くして見ましたが変化がありません。
生成するSQL文の途中に全角空白でもあるのかと思い、半角空白に再度書
き換えても現象の改善につながりません。

他のテーブルへのアクセスは出来ること、移植はデータベースのバックアッ
プと復旧で行っている事、などなど総合的に判断しても何故このテーブルだ
けアクセスが出来ないか困り果てております。
SQL2000のクエリツールから以下のコマンドを直接実行すると正常にアクセ
ス出来ます。
Windows2003Serverに関係する設定が必要とか、何かアドバイスを頂けると
助かります。 宜しくお願いします。

生成(実行)したSQL文=>select * from 会員番号マスタ_tbl

【エラーメッセージ】
Microsoft OLE DB Provider for SQL Server エラー ’80040e37’
オブジェクト名 ’会員番号マスタ_tbl’ は無効です。

3件の回答があります

回答

そのテーブルだけ所有者(owner)が違ったりしていませんか?

2008年09月10日 12時42分

回答

ご苦労様です。
弊社でも、『Windows2000ServerとSQL2000』から
『Windows2003ServerとSQL2000』に移行しましたが、
上記のような現象は発生しませんでした。

そのテーブル固有の問題だと思われますので、
問題のテーブルを削除して再生成するか、名前を変えるなど
されてみてはいかがでしょうか?

2008年09月10日 17時37分

回答

SQL文作成時にテーブル名を [] で囲ってみては...

 select * from [会員番号マスタ_tbl]

2008年09月10日 18時46分

あなたもコメントしましょう!