- ベストアンサー
エクセルのVBAでSQLサーバーに接続し、データを検索しているのですが
エクセルのVBAでSQLサーバーに接続し、データを検索しているのですが、 データ検索の際、タイムアウトとなります。 VBA内では「Connect Timeout=60」と記述しておりますが タイムアウトは30秒程ででてしまします。 これを長くしたいのですが、何を設定したらいいのか 教えてください、 昔他の人がつくったものを流用しているため DB接続の設定がよくわかっていません。 宜しくお願い致します。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
関連するQ&A
- SQLサーバー接続について
DB初心者です。 ODBCからSQLサーバーへのアクセスを設定したく、奮闘しておりますが うまくいかず困っております。 先方から支給されたのは、 DB名、ID、パスワード、ホスト名、ポート番号、MySQLのバージョン5.0.90で、 その通り設定したつもりが、以下のようなエラーが出てソース作成できません。 --- 接続できませんでした。: SQLState: '01000' SQL Server エラー: 11001 [Microsoft][ODBC SQL Server Driver][TCP/IP Sockets]ConnectionOpen(Connect()). 接続できませんでした。: SQLState: '08001' SQL Server エラー: 6 [Microsoft][ODBC SQL Server Driver][TCP/IPSockets]指定された SQL Server が見つかりません。 --- エラー番号で検索してみても原因がわからず・・・ 詳しい方いらっしゃいましたらお願いいたしますm(__)m
- ベストアンサー
- SQL Server
- エクセルVBAでSQLサーバーの値を編集したい
エクセルVBAでSQLサーバーの値を編集したい 「エクセルVBAとSQLサーバーを接続し、SQLサーバー上の、指定したテーブルのセル(?)番地の内容を、エクセルのセルに入力されたものに変更し、上書きする」プログラムを作成しています。 エクセルVBA→SQLサーバーへの接続は初めてです。 以下の文で、SQLサーバーに接続する所までは進みました。 ここから先、「SQLサーバー上の、指定したテーブルのセル(?)番地の内容を、エクセルのセルに入力されたものに変更し、上書きする」の部分は、SQL文の形式でコーディングしなければいけないのでしょうか? 当方、SQL文を記述した事が無いため、例えば 'アクセスのテーブル名.range("A2").value = Sheets("test").range("A2").value のようにコーディングできると楽なのですが... 目的のプログラムを作成するのに手がかりになりそうな方法や、ヒントとなるwebサイトがありましたらお教え下さい。 Dim con As New ADODB.Connection Dim connectionString As String Dim sDBSever As String Dim sDBName As String Dim sLoginID As String Dim sPassWD As String sDBSever = "(local)\SQLEXPRESS" sDBName = "DBName" sLoginID = "id" sPassWD = "pass" '接続文字列 connectionString = "Provider=Sqloledb;Data Source=" & sDBSever _ & ";Initial Catalog=" & sDBName _ & ";Connect Timeout=15" _ & ";user id=" & sLoginID _ & ";password=" & sPassWD _ & "" On Error GoTo Err_DBConnectOpen '接続 con.Open connectionString
- ベストアンサー
- SQL Server
- SQL Server Express 2005 に接続できません。
現在、エクセルからSQL Server Express 2005 に データー登録を行おうと考え、SQL Server Express 2005 をインストールしました。 インストールは無事完了してExpress Managerで接続しようと試みましたが、タイムアウトとなってしまいます。 Server Interface 認証方法の選択 User name Password の内容が間違っているのか、それ以外の 問題があるのか分からず困っています。 ODBC接続の設定を行おうとしても同様の 現象となります。 初歩的な質問で申し訳ありませんが、 回答宜しくお願いいたします。
- 締切済み
- SQL Server
- ASPからSQLサーバへの接続について
しばらくASPから離れておりましたので、ご教授願います。 データベースにSQLサーバ6.5を使っています。 ASPからSQLサーバに接続してデータの登録、変更、削除をしています。 その際に、ASPのソースコードに接続ユーザ名とパスワードを記述しているのですが、 これを記述しないで接続することは可能でしょうか? 可能であれば、その設定方法をお教え願います。 開発環境は以下の通りです。 Windows2000 Prof + IIS + SQL Server6.5
- 締切済み
- その他(ソフトウェア)
- EXCEL2003 VBAで2つのDBに接続してSQLを実行し、異なる
EXCEL2003 VBAで2つのDBに接続してSQLを実行し、異なるDBのTBLを結合する。 こんな方法あるのかどうかわかりませんが、 VBAでDBに接続する際に同時?に2つのDBに接続し1つのSQLで違うDB同士を任意のキーで結合はできるのでしょうか? どなたかわかる方お願いします。 今考えているのは最初に1つのDBに接続し、データを取得後、再度違うDBに接続し取得したデータを先ほどのデータとVBA内で結合しようと考えています。 ほかにいい方法があればアドバイスおねがいします。 ※今まではACCESSを介してこの処理を行っていましたが引継ぎの関係でEXCELのみでこの処理を 実行しなければなりません。
- ベストアンサー
- Visual Basic
- C#~SQL2005で勝手にタイムアウト
C#とSQL Server2005との連携でConnectionStringに connection timeout=60 を設定していますが、 30秒程度でタイムアウトしてしまいます。 タイムアウトの設定はソースコード上以外に、 SQL Server上でも設定が必要なのでしょうか?
- ベストアンサー
- SQL Server
- VBでSQLサーバーへ接続できない
WVD2008ではSQLサーバーへ接続できて、データも表示できるのに、 VB2008からは最初の設定画面がわかりません。 添付の図は 右:WVD 左:VB です。 WVDは データソース:Microsoft SQL Server (SqlClient) サーバー名:○○○\SQLEXPRESS データベース名:master と入力しテスト接続すると「成功」します。 しかしVBは データソース:Microsoft SQL Server Compact 3.5 データベースファイル名:○○○\SQLEXPRESS もしくは データソース:Microsoft SQL Server データベース ファイル (SqlClient) データベース:○○○\SQLEXPRESS と入力しテスト接続すると「見つかりません」となります。 アクセスへなら データソース:Microsoft Access データベース ファイル (OLE DB) データベースファイル名:C:\\Desktop\Documents\○○○.mdb として接続できます。 接続できないというよりもVBにおいてのSQLサーバーへの設定方法がわかりません。 VBにて サーバー名:○○○\SQLEXPRESS データベース名:master へ接続したい場合はどうすればいいでしょうか? ご教授よろしくお願い致します。
- ベストアンサー
- Visual Basic
- SQLサーバーへの接続が どうしてもウマくいきません
SQLサーバーを始めたばかり です。 ASPで SQLサーバーのデータを表示しようとしています。 環境: WinXP (Pro) IIS設定済み SQL Server 2005 Express Edition 近くに2003サーバーがあるので 最終的にはそちらで動作させる予定です。 サーバーが現用機なので 自PCで動作確認してからと思っています。 色々ネットを調べて まず接続しようとしましたが そこでつまづいています。 この方法以外も沢山試しましたが全てうまく行きません。 2005 ExpressでDBとテスト用のテーブルが作成してあります。 そのデータを読み出せれば 第一段階とトライしますが、 IEから接続にいくと「objCon.Open」がエラーになってしまいます。 ASPファイルの内容は 以下です なお DB名は 「PC名¥SQLEXPRESS」といれています よろしく お願いします ---------------------------------------------------- <%@ 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 %>
- ベストアンサー
- その他(ソフトウェア)
- WSH ADOによるSQL Server 2000への接続
お世話になります。 WSHによりADOでSQL Server 2000への接続をしている事例があれば記述を教えてください。 VBAの場合とASPの場合で記述が違うようで、WSHでの確認もうまくできておりません。 よろしくお願いします。
- ベストアンサー
- その他(プログラミング・開発)
- SQLでのデータ検索方法
以下のようにデータが格納されている テーブルAがすでにあります。 id in_time out_time 1 11:10 1 10:30 1 10:15 3 09:50 1 09:30 1 09:00 1 08:30 2 08:10 1 07:50 2 07:40 1 07:30 ここでin_timeとout_timeの範囲が指定されたとき 範囲内でidごとにin_timeとout_timeがセットにな っているデータのみ抽出したいのです。 例えば in_time:7:00~10:20 out_time:8:00~11:30 と指定されたとき、検索結果を id in_time out_time 1 10:15 1 09:30 1 09:00 1 08:30 2 08:10 2 07:40 と表示したいのです。 プログラムで1レコードずつ処理するしかない と思っているのですが、SQLで上記のような結果 を取得する方法はあるのでしょうか。 環境は、 RHEL 5 postgesql 8.1.9 です。
- 締切済み
- PostgreSQL
お礼
ありがとうございました。 上記のようにCommandTimeout を設定すれば タイムアウトがなくなりました。 自分では検索しきれなかったので、感謝!!です。