質問する場所が 違ったかもしれないので 再度質問させていただきます。
SQLサーバーを始めたばかり です。
ASPで SQLサーバーのデータを表示しようとしています。
環境: WinXP (Pro)
IIS設定済み
SQL Server 2005 Express Edition
近くに2003サーバーがあるので 最終的にはそちらで動作させる予定です。
サーバーが現用機なので 自PCで動作確認してからと思っています。
色々ネットや本を調べて まず接続しようとしましたが そこでつまづいています。
この方法以外も沢山試しましたが全てうまく行きません。
2005 ExpressでDBとテスト用のテーブルが作成してあります。
そのデータを読み出せれば 第一段階とトライしますが、
IEから接続にいくと「objCon.Open」がエラーになってしまいます。
ASPファイルの内容は 以下です
なお DB名は 「作成した名前」と入れています
よろしく お願いします
----------------------------------------------------
<%@ LANGUAGE="VBScript" %>
<% option explicit %>
<%
Dim objCon ' DB接続コネクション
Dim objRS ' DB結果レコードセット
Dim sql ' SQL文
Dim errflg ' エラーフラグ
'DataSource名
Const DS = "111.111.0.1" ←IPアドレス。正しいものをいれてます
Const IC = "DB名"
'ユーザ名
Const User = "sa"
'パスワード
Const Pwd = "sa"
Set objCon = Server.CreateObject("ADODB.Connection")
Set objRS = Server.CreateObject("ADODB.Recordset")
objCon.ConnectionString = "Provider=SQLOLEDB;" & _
"User ID=" & User & ";" & _
"Password=" & Pwd & ";" & _
"Data Source=" & DS & ";" & _
"Initial Catalog=" & IC
objCon.Open'ここで エラーになります
sql = "select * from Aテーブル"
objRS.Open sql,objCon,adOpenStatic,adLockReadOnly
%>
レコード件数 <%=objRS.RecordCount%>
<%
' DBclose
objCon.Close()
Set objCon = Nothing
objRS.Close()
Set objRS = Nothing
%>
なお エラー内容は 以下です
-----------------------------
HTTP 500.100 - 内部サーバー エラー - ASP エラー
インターネット インフォメーション サービス
エラー タイプ
Microsoft OLE DB Provider for SQL Server (0x80004005)
[DBNETLIB][ConnectionOpen (Invalid Instance()).]接続が正しくありません
-----------------------------
また
1.IPアドレスは Const DS = "127.0.0.1"でも 同様なエラーです
2.表示できるASPファイルを置き、他のPCから 表示できる環境です
No.1
- 回答日時:
回答ありがとうございます。
SQL Serverは TCP/IPで ポート1433をセットしていましたが これは
Express Edition 以外の事だったんでしょうか?
IPALLの項目で 1433を設定していますが 動的ポートのセットが
必要なのでしょうか?
No.2
- 回答日時:
回答ありがとうございます。
Express Edition に動的ポート(1433)を強制設定したり
SQL Server Browserサービスを有効に
しましたが エラー内容は変化しません。
どこかの設定なんでしょうか?
No.3
- 回答日時:
いくつか質問させてください。
IISは設定済みとなっていますが、1.「仮想ディレクトリのアクセス許可でASP等のスクリプトの実行する」にチェックが入っていますか?
2.ディレクトリセキュリティの設定で「匿名アクセス」にチェックが要っていますか?
上記2点が気になりましたので教えてください。
参考URL:http://www.apec.aichi-c.ed.jp/project/joho/kanri …
回答ありがとうございます
>1.「仮想ディレクトリのアクセス許可でASP等のスクリプトの実行する」
>にチェックが入っていますか?
スクリプトソースアクセスを有効にしましたが 同様でした
>2.ディレクトリセキュリティの設定で「匿名アクセス」にチェックが要っていますか?
ここは触っていないのですが 匿名アクセス が有効で ユーザ名とパスワードは
不要と表示されています
また ASPファイルに 表示などの簡単なテストを作成して 他PCからアクセスすると
問題なく 表示できます
No.4
- 回答日時:
データソースを 「.\SQLEXPRESS」 としてみるとどうなりますか?
この辺とかが参考になるかもしれません。
http://www.ailight.jp/blog/ishino/archive/2005/1 …
http://www.accessclub.jp/bbs6/0023/das7021.html
回答ありがとうございます
>データソースを 「.\SQLEXPRESS」 としてみるとどうなりますか?
この方法とご指摘の参考HPを試しましたが ウマくいかないようです。
なお Management Studio Expressでは サーバー認証は「Windows認証」で
「PC名\SQLEXPRESS」を使用して DBにアクセスできます
またフリーソフトの 「quickDBExplorer」では サーバー名だけを指定して
インスタンスは空白のWindows認証で 接続でき、テスト用テーブル内容を
確認できます
No.5
- 回答日時:
もしかして Management Studio で sa で接続できないとか、そんな事はないですよね?
もしもそうであれば、SQL Server 認証との混在モードに設定し、SQL Server の再起動を行う必要があります。
http://msdn.microsoft.com/ja-jp/library/ms188670 …
ご参考になれば良いのですが。。。頑張ってください。
回答ありがとう ございます
出張で お礼が遅れました。スミマセン。
Management Studio Express では Windows統合認証で接続できます。
ご指摘のURLにて 調べましたが どうも設定は良いような?気がする
のですが・・・。
それとも saで Server認証が接続できないとダメでしょうか?
調べた限りでは saは パスワード無しで セットされていると思うのです。
SQL サーバでこんな部分で 詰まるとは思っていなくて そこらへんが
イマイチ解らなくて 困ってます。
No.6ベストアンサー
- 回答日時:
>それとも saで Server認証が接続できないとダメでしょうか?
ご提示されているコーディングからすると、
Management Studio を起動して SQL Server 認証を選び、ユーザID・パスワード共に sa でログインできる筈です。それができないのであれば、ASP からもつながりません。
SQL Server 認証を利用できるようにし、かつ sa アカウントを有効にする必要があります。
>調べた限りでは saは パスワード無しで セットされていると思うのです。
であれば、コーディング上もパスワード無しではないでしょうか。
今はパスワードも sa を設定されているようですが。。。
この回答への補足
回答ありがとう ございます。所用により やっと今確認しました。
スミマセン。
>ご提示されているコーディングからすると、
>Management Studio を起動して SQL Server 認証を選び、ユーザID・パスワード共に
> sa でログインできる筈です。それができないのであれば、ASP からもつながりません。
>SQL Server 認証を利用できるようにし、かつ sa アカウントを有効にする必要があります。
調べてみましたら saアカウントは 有効でした。
アカウント:sa パスワード:xxxxxxx で 接続できました
ASPファイルを そのように変更しても 同様なエラーです。
なにか根本的な 勘違いがあるのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- MySQL #1062 - '0' は索引 'PRIMARY' で重複しています。とでています。 1 2023/01/01 06:13
- その他(開発・運用・管理) Windowsバッチファイルでリモートデスクトップを自動ログインするが確認画面が出る対処方法 1 2022/12/19 15:48
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
- ネットワーク 自作のサーバーPCが自宅内のネットワークに接続できない 3 2023/01/24 16:58
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- Access(アクセス) アクセス テーブルの空白を変数に置換するボタンが作りたい 4 2022/07/08 11:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C# try-catch でcatchに飛ばす方法
-
SQLサーバーへの接続に 接...
-
CAsyncSocket::Create()がエラ
-
Windowsインストーラー
-
このページの状態情報は無効で...
-
fopenでエラーとなる
-
WinXPProにVC++6.0をイン...
-
IIS7.5の設定の仕方
-
オーバーフローが発生します
-
VB6でRDOに接続できない
-
VBA RemoveDuplicatesで「アプ...
-
golang 空文字判定について
-
Response.Redirectで引数2つの...
-
VB6でのPL/SQLの実行について
-
[PL/SQL]REFCURSORが戻り値のプ...
-
ASP内で他のASPファイルを読み...
-
画面のリフレッシュを意図的に...
-
SqlDataSource SelectCommand ...
-
<ASP.NET>DataGridでOnSelected...
-
ACCESSのAutoKeysマクロでアク...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C# try-catch でcatchに飛ばす方法
-
FileCopy時のエラー
-
エラー 'ASP 0115' について
-
EXECLマクロでshapeがグルーフ...
-
CreateObject("Excel.Applicati...
-
VBSからPDFファイルを開きたい...
-
winsock通信時エラーの回避
-
ASP.NET C# ローカルのパスが呼...
-
Outlookで添付ファイルの有無を...
-
エラー 'ASP 0115'
-
WinXPProにVC++6.0をイン...
-
fopenでエラーとなる
-
IIS7.5の設定の仕方
-
エラー内容について
-
ASPプログラミングでADODB.C...
-
ASP.NETで使用しているJavascri...
-
ASPからWscriptを利用して外部...
-
オブジェクト生成エラー
-
VB6でRDOに接続できない
-
オラクル接続をopenしようとす...
おすすめ情報