OLE DBはアカン。
OLE DBはアカン。
OLE DBはアカン。 お試しで開発しているシステム(VB.NETアプリケーション + SQL Server Express)がありまして、ふとしたことから、アプリケーションとデータベースのマシンを分けてみたところ、 以下のようなエラーが出た。 [DBNETLIB][ConnectionOpen (Connect()).]SQL Server が存在しないか、アクセスが拒否されました。 ナンスカソリャ? 接続文字列の、ユーザー名とパスワードが間違えたかな、と思って確認してみたところ、同じようにエラーになる。 ナンスカソリャ? アプリケーションとデータベースが同じマシンである場合は、エラーにならない。アプリケーションとデータベースが異なるマシンである場合、必ずエラーになる。 意味が分からん。 む!ファイアウォールが邪魔しとんのか?む?ポートか!ポートとかいうやつを解放したったらええのか?ほな解放じゃ!このクソボケ!オリャア!(o・曲・)=>>> ブシュ! と、あちこち穴あけてみたけどやっぱりダメでした。そりゃダメでしょうよ。 まったく進展がないまま2時間くらい経ったところで、ためしに他人が作ったアプリケーションで同じ実験をしてみたところ、いけた。 ということは、つまり、アプリケーションの問題。さらにいうならば、ワシのコーディングに問題があるということです。 バカナ。 ワナワナしながら、他人のコーディングとワシのコーディング、いったい何が違うのかを調べてみたところ・・・ゴクリ。 なんと、データアクセスに使ってるAPIが違った! SqlClient →エラーにならないOLE DB → エラーになる つまり、OLE DBはアカンちゅうことです。なんでアカンのかは、まったくわからんし、知りたくもないですので、OLE DBがらみのコードを、全部SqlClientに書き換えて、一件落着とした。 OLE DBはアカン、そもそも名前がアカン。OLE DB(オレ・デブ) プークスクスクスクス(o´・∀・)y~