クエリで抽出したレコードを利用したいのですがうまくいきません。

Dim ds As Database
Dim rs As Recordset
Set ds = CurrentDb
Set rs = ds.OpenRecordset("クエリ名")

デバッグすると 
Set rs = ds.OpenRecordset("クエリ名") で止まります。

「実行時エラー’3061’
パラメータが少なすぎます。1を指定してください」のメッセージです。
どのような意味でしょう。教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

フォームのテキストボックスの値を利用する方法として、とりあえず私が思いつくのは、


(1)クエリーを一旦テーブルにして保存し(テーブル作成クエリーでも使うのが簡単かな?)、そのテーブルを元に Recordset を開く。
(2)Recordset の Filter プロパティを利用して、抽出条件を後から設定する。
の二通りぐらいです。(これがベストな方法かわかりませんので、自信なしのアドバイスです。)

以下に、(2)の方法の例を示します。

まず、クエリーのテキストボックスの値を参照する抽出条件を外しておいてください。

Dim db As Database, rs As Recordset, rsFiltered As Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("クエリー名")
rs.Filter = テキストボックスの値を使った抽出条件 '(クエリーの WHERE 以降の部分。データ型や「“」、「’」、リテラルの付加等に注意して記述してください。)
Set rsFiltered = rs.OpenRecordset

以上で、rsFilteredが、求める Recordset になります。

HELPで、DAOの Filter プロパティを確認してみてください。
うまくいかない場合は、補足で、Q_個人情報クエリーのSQLビューを示していただけると、もっと具体的なアドバイスができると思います。
(土日は追加回答ができませんことを、ご了承ください。)
    • good
    • 0
この回答へのお礼

親切丁寧なご回答をありがとうございます。
お礼が送れてすみません。

(1)(2)とも出来まして大変勉強になりました。

今後ともよろしく。

お礼日時:2002/04/17 06:37

gonta_gomaさんのアドバイスが、可能性大だと思いますが、



もし、Q_個人情報クエリーを開く際に、パラメータの入力を要求されない場合でも、抽出条件にフォームの例えばテキストボックスの値などを参照している場合も、同様のメッセージが出ます。

差し支えなければ、Q_個人情報クエリーのSQL文ビューを示していただけると、原因がわかるかもしれませんが?

この回答への補足

ご回答ありがとうございます。

まさしく、その通りです。
抽出条件にフォームのテキストボックスの値を参照しています。
と言う事は 抽出条件にフォームのテキストボックスの値を参照さすことは出来ないのですか?
あつかましい質問と思いますが、どうしてもフォームのテキストボックスで値を入力してクエリで抽出したレコードを利用したいのですが方法があれば教えてください。
よろしく。

補足日時:2002/04/11 17:33
    • good
    • 0

「パラメータが少なすぎます。

1を指定してください」」というのは要するにクエリーが間違っているという事です。
これは予想ですが、Q_個人情報を開こうとすると、ダイアログボックスが表示されて、何か入力してくれといわれるのじゃないでしょうか。
SLQを直接編集しなくても、クエリーを作った後でフィールド名を変更したりすればこの様な現象は起こります。
Q_個人情報 を正しくもう一度つくりなおしたらいかがでしょうか。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます
お礼遅れてすみません

お礼日時:2002/04/11 17:32

こんにちは。

maruru01です。

指定したクエリ名によって起こることがあるようです。
どのようなクエリ名でしょうか。
また、OpenRecordsetの第1引数にSQLステートメントを指定する場合に、文字数が制限(多分255文字)を越えると同じエラーが出るようです。
では。

この回答への補足

早速ご回答ありがとうございます。

クエリ名は Q_個人情報 です。

SLQステートメントはまだ勉強をしてないので使っていません。

補足日時:2002/04/10 13:07
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q404ERROR の 意味の統一はいつからですか?

こんばんは~! ネットワークのカテゴリーのエキスパートな方々!回答宜しく~^^

質問はタイトルの通りなのですが、『404 ERROR』はいつ頃から共通に利用されてるのですか?
仮に最初に統一した人がいるのなら、使用許諾や使用に当っての利点若しくは、お金が来てるの?

Aベストアンサー

HTTPエラーコード404。
Not Found:要求されたURIに対するマッチする情報が見つからない(RFC1945)
通信規約上の約束です。

RFC(Request For Comment:ご意見お待ちしてます)はインターネット標準案と標準規約を記述したメモで、誰でも参照して利用することが出来ます。

いつから?と問われればRFC1945に制定されたメモが発表された1996年からです。

QAccessVBAで「dim dbs as database」がエラーになる

済みませんが、非常に基本的なことを聞かせていただきたいと思います。

AccessのVBAで関数を実行すると、いきなりエラーになりました。
dim dbs as database の文でエラーになり、「コンパイルエラー ユーザ定義型が定義されていません」というエラーメッセージが出ました。
databaseが定義されているような感じです。

どうすれば宜しいでしょうか?

Aベストアンサー

こんにちは。maruru01です。

VBEの画面のメニューの[ツール]→[参照設定]で、

「Microsoft DAO X.X Object Library」(X.Xはバージョン)

の項目にチェックが入っていますか?

ちなみに、DatabaseオブジェクトはDAOしかないのでいいですが、Recordsetオブジェクトなどは、ADOとDAOの両方にあるので、

Dim rs As DAO.Recordset

のように、どちらかを明確に記述しないといけません。
統一的で分かりやすいコーディングのためには、Databaseオブジェクトも、

Dim dbs As DAO.Database

のように記述するように心がけましょう。

Q404 Error Not Found と出てしまします

初めてホームページを作ろうとしている者なので、専門用語ではなく、わかりやすく教えて下さいませm(__)m
「HETEMULU」を使って、ホームページを作り、半年かけて、やっと完成しました^^;
そして、無料だと聞いたので、「忍者ホームページ」サイトで、
「NINJA TOOLS」?という所で、IDやパスワードを取得し、なんとか出来たと思ったのですが、

登録されているあなたのURL

とい所をクリックすると、

404 Error Not Found と出てしまします。

何故ですか??

色々触ってみたけど、わかりません^^;

もう一つ質問ですが、無料素材屋さんから、画像をダウンロードして、
「名前をつけて保存」と書いてあったので、例えば「鉢植え」と保存しました。「HETEMULU」で画像の挿入をクリックすると、「鉢植え」の後ろに.gifと付き、問題ないように思っているのですが、日本語で保存しているから、404 Error Not Found と出てしまうのでしょうか?それともそれはまったく関係ないのでしょうか?
慣れていらっしゃる方にはおバカな質問かもしれませんが、どうかどなたか教えて下さい!説明が足りなければ補足しますので、どうかよろしくお願いします!!!

初めてホームページを作ろうとしている者なので、専門用語ではなく、わかりやすく教えて下さいませm(__)m
「HETEMULU」を使って、ホームページを作り、半年かけて、やっと完成しました^^;
そして、無料だと聞いたので、「忍者ホームページ」サイトで、
「NINJA TOOLS」?という所で、IDやパスワードを取得し、なんとか出来たと思ったのですが、

登録されているあなたのURL

とい所をクリックすると、

404 Error Not Found と出てしまします。

何故ですか??

色々触ってみたけど、わか...続きを読む

Aベストアンサー

作成したHTMLファイルをサーバーにアップロード(転送)済みで
しょうか?
トップページは必ず「index.html」または「index.htm」である
必要があります。
「index.htm」にする場合は、元からある「index.html」を削除
(※下記ページ参照)
http://www.ninja.co.jp/faq/a/37/

おすすめのFTPソフト
「FFFTP」
http://www2.biglobe.ne.jp/~sota/

日本語ファイルは表示されない場合もあるので、英数字のファイル名
が推奨されています。
http://www.ninja.co.jp/faq/a/79/

Q変数の宣言の名称を教えてください。(Dim i As Long)

Dim i As Longについて

「dim」→?
「i」→変数名
「As」→?
「Long」→変数の型

というように、dimとAsがなんと言えばいいのかわかりません。
アドバイスよろしくお願いします。

Aベストアンサー

>「i」→変数名
という形と合わせるのなら、以下のような感じでしょうか?
(意味についてのご質問ではないと受け取りました)

Dim・・・ステートメント
     変数の(型)宣言に用いる
AS・・・・キーワード
     変数や関数の型を示したり、フォルダ(やファイル)名を
     示したりするのに用いる

Q教えて下さい!なぜ【WebApp: Error 404】のページが出る?

JDK + apache + mod_webapp.so + tomcat + PostgreSQLをインストール・設定しました。

JDK     j2sdk-1_3_1_11-linux-i586
apache    apache1.3.31
mod_webapp.so
tomcat    jakarta-tomcat-4.1.30
PostgreSQL    postgresql-7.2.3

(1)
http://localhost:8080/index.jsp
【tomcat】のページが出ます。

(2)
http://localhost/
【あなたの予想に反して、このページが見えているでしょうか?】のページが出ます。

(3)
http://localhost:8080/examples/jsp/index.html
【JSP Samples】のページが出ます。

(4 問題点)
http://localhost/examples/jsp/index.html
【WebApp: Error 404】のページが出ます。
希望 → (3)と同じページが出る。

起動は tomcat → apache の順です。

なぜ【WebApp: Error 404】のページが出るのでしょうか?
教えて下さい。
お願いします。
(初心者なので出来ればわかりやすくお願いします)

JDK + apache + mod_webapp.so + tomcat + PostgreSQLをインストール・設定しました。

JDK     j2sdk-1_3_1_11-linux-i586
apache    apache1.3.31
mod_webapp.so
tomcat    jakarta-tomcat-4.1.30
PostgreSQL    postgresql-7.2.3

(1)
http://localhost:8080/index.jsp
【tomcat】のページが出ます。

(2)
http://localhost/
【あなたの予想に反して、このページが見えているでしょうか?】のページが出ます。

(3)
http://localhost:...続きを読む

Aベストアンサー

設定内容が書いていないので
いかんともあれなんですが。。。(^^;
以下の手順をご確認下さい。

1.mod_webapp.soをapacheのlibexecに配置している。

2.apacheのhttpd.confに以下を記述している。
------------------------------------------------------
LoadModule webapp_module libexec/mod_webapp.so
AddModule mod_webapp.c

<IfModule mod_webapp.c>
WebAppConnection warpConnection warp localhost:8008
WebAppDeploy examples warpConnection /examples
WebAppInfo info
</IfModule>
------------------------------------------------------

3.tomcatのserver.xmlに以下を記述している。
------------------------------------------------------
<Service name="Tomcat-Apache">

<Connector className="org.apache.catalina.connector.warp.WarpConnector"
port="8008" minProcessors="5" maxProcessors="75"
enableLookups="true" appBase="webapps"
acceptCount="10" debug="0"/>

<Engine className="org.apache.catalina.connector.warp.WarpEngine"
name="Apache" debug="0">

<Logger className="org.apache.catalina.logger.FileLogger"
prefix="apache_log." suffix=".txt"
timestamp="true"/>

<Realm className="org.apache.catalina.realm.MemoryRealm" />

</Engine>

</Service>
------------------------------------------------------

4.tomcat、apacheの順で再起動

どう?

設定内容が書いていないので
いかんともあれなんですが。。。(^^;
以下の手順をご確認下さい。

1.mod_webapp.soをapacheのlibexecに配置している。

2.apacheのhttpd.confに以下を記述している。
------------------------------------------------------
LoadModule webapp_module libexec/mod_webapp.so
AddModule mod_webapp.c

<IfModule mod_webapp.c>
WebAppConnection warpConnection warp localhost:8008
WebAppDeploy examples warpConnection /examples
WebAppInfo info
</IfModule...続きを読む

QACCESSのクエリの中でのクエリ指定

ACCESSのクエリで複数テーブルを結合させ明細表示させました。
その明細作成クエリーを更にそのクエリをテーブルと指定して
合計のクエリを作成して結果を確認すると合計が違っていました。
確認の為、集計を取りその明細クエリーをクエリー上でテーブル
指定してみたところ、元の明細クエリーのみの場合とレコード数
がかわっって表示されまました。
クエリーのテーブルにクエリを指定するのはNGなのでしょうか。
何方かなぜそうなるのか、また、正しい方法があれば教えてください。
宜しくお願いします。

Aベストアンサー

クエリーのテーブルにクエリを指定するのはNGではありません。

SQL文が無いので何処が悪いのかなんともいえません。

QError!! HTTP status code=404

Error!! HTTP status code=404

いつもお知恵拝借、ありがとうございますm(_ _)m

さて、最近当社で中古XP (prof.)パソコンを2台導入しました。sp3にupしております。

取引先のサイトにアクセスし、IDとpasswordでログインして「取引明細」をダウンロードしようとしましたが、ファイルのアイコンをクリックしたら上記のようなエラーメッセージが出ます。

2台とも同じエラーが出ます。

「教えてgoo」や他のサイトで検索してもなかなか、コレというページが見あたりません。

以前からあるもう一台のXPからはアクセスでき、見ること・プリントすることが出来ます。

アクセスしようとしたファイルは拡張子が".ilf"で、検索の結果どうやら電子帳票のファイルのようです。

このようなトラブルは初体験なので、皆さんのお知恵を是非拝借したいと思います。どうかよろしくお願いいたしますm(_ _)m

Aベストアンサー

ILFのことについてはわかりませんが、単純にHTTP のエラーコード404は、
Not Foundですね。

要するに、指定のページやファイルが見当たらないということ。

先方のシステム内で、指定されたファイルがないということではないですか?
それを先方のWEBサーバーと連携したILFのシステムが応えていると・・・

先方の担当者に聞いた方がいいと思いますが。
特定のシステム内のことですので、担当者以外は本当のことはわかりません。

Qaccess 更新クエリ?追加クエリ?

access超初心者です。

いま、下記のような在庫表をつくっています。
(出庫テーブルは省略してます)



入庫テーブル
 ID
 入庫日付
 大分類
 中分類
 小分類
 数量
 
在庫テーブル
 ID
 大分類 
 中分類 
 小分類
 最初の数
 入庫数 
 出庫数

入庫更新クエリ
*入庫→在庫  大分類
       中分類   
       小分類
・入庫の全レコードと在庫表の同じ結合フィールドのレコードだけを含める

で結合しています。

*在庫表の入庫数
 レコードの更新で
 NZ([在庫数]![入庫数],0)+NZ([入庫]![数量],0)

といれています。




入庫テーブルに入力していき
その都度、
入庫更新クエリにて更新し
在庫表に反映させていきたいと思っています。

入庫表には、この先
在庫表にないものもでてくるので
在庫表にないものは
追加、あるものは、更新としていきたいです。

今の状態だと
入庫表のものは、更新クエリでいったん在庫表に反映されるのですが
入庫表にレコードを追加して
また更新クエリをかけると
在庫表が、前に更新したレコードの分も
重複して反映してしまいます。

これをなくすには、どういった方法が
ありますか?

宜しくお願いいたします

access超初心者です。

いま、下記のような在庫表をつくっています。
(出庫テーブルは省略してます)



入庫テーブル
 ID
 入庫日付
 大分類
 中分類
 小分類
 数量
 
在庫テーブル
 ID
 大分類 
 中分類 
 小分類
 最初の数
 入庫数 
 出庫数

入庫更新クエリ
*入庫→在庫  大分類
       中分類   
       小分類
・入庫の全レコードと在庫表の同じ結合フィールドのレコードだけを含める

で結合しています...続きを読む

Aベストアンサー

No1です。入庫データをクリアするのではなく、記帳のときに記帳済みのマークを入れておいて、入庫更新クエリーのとき記帳すみのマークのあるものを除外するほうがよさそうです。

QHTTP 404 error

Vine Linux,Tomcat5で
(1)webapps/conf/server.xml
...
<HOST>
<Context path="/apress" docBase="apress" debug="0" reloadable="true" />
...
(2)webbapps/apress/login.jsp
...
<table width="500" border="0" cellspacing="0" cellpadding="0">
<form name="loginForm" method="post" action="servlet/chapter2.login">
<tr><td width="402"><div align="right">User Name: </div></td>
<td width="399"><input type="text" name="username"></td>
</tr>
...
(3)webapps/apress/WEB-INF/web.xml
...
<servlet>
<servlet-name>login</servlet-name>
<servlet-class>chapter2.login</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>login</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
...
(4)webapps/apress/WEB-INF/classes/chapter2/login.java
package chapter2;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;

public class login extends HttpServlet {
private String target = "/welcome.jsp";
private String getUser(String username, String password) {
// Just return a statice name
// If this was reality, we would perform a SQL lookup
return "Bob";
}
....
(4)現象:
http://xxx.xxx.xxx.xxxx:8080/apress/login.jsp
でsubmit action 後、次のエラーが出てきました:
HTTP 404 error,
The requested resource (/apress/servlet/chapter2.login) is not available.

この問題はどこにあるでしょうか教えてください。

Vine Linux,Tomcat5で
(1)webapps/conf/server.xml
...
<HOST>
<Context path="/apress" docBase="apress" debug="0" reloadable="true" />
...
(2)webbapps/apress/login.jsp
...
<table width="500" border="0" cellspacing="0" cellpadding="0">
<form name="loginForm" method="post" action="servlet/chapter2.login">
<tr><td width="402"><div align="right">User Name: </div></td>
<td width="399"><input type="text" name="username"></td>
</tr>
...
(3)webapps/apress/WEB-INF/web....続きを読む

Aベストアンサー

パスの指定が間違ってるからだと思いますが。

/apress/servlet/chapter2.login

このパスにちゃんと存在してますか?

Q追加クエリ???更新クエリ???

アクセスでデータベースを管理しようとしているものです。
利用しようとするデータ10万件をcsvからインポートしました。
その10万件のデータを定期的にエクセルに落としては(1000件ほど)修正を加えて、また元のデータに上書きするといった方法を取りたいのですが。

例:
書籍一覧
No.作品名 出版元 作家名 人気度(%) コメント

みたいなデータが10万件。
例えばコメントや人気度が空欄のデータもあり、クエリで抽出→EXCELで編集(コメント等の記入)→インポートして元データに上書き。
という流れをしたいのですが。
利用するクエリがイマイチわかりません。
もしかしたら物凄い簡単な事かもしれないのですが、かなり混乱しててまとまった考えができない状態です。

また、上記のデータに確実に被っている作品群がエクセルにあり(共通のIDなし)、それは上記のデータのどのIDにあたるかまで特定できエクセルで纏めるところまでは出来たのですが、共通のIDであることは確かなのに、アクセスにインポートしてリレーションで結んでもうまく突合してくれません。

10万件のデータのデータ型がオートナンバー式であるのに対し、エクセルで纏めた方のIDは数値型というのが問題なのでしょうか?(その割にはリレーションの段階でエラーは出ないのですが)。
エクセル時代の書式がいけないかとも思い確かめたりしたのですが。
原因が分かりません。

パラパラと質問してしまいましたが、どなかた分かる方がいらっしゃれば宜しくお願いいたします。

アクセスでデータベースを管理しようとしているものです。
利用しようとするデータ10万件をcsvからインポートしました。
その10万件のデータを定期的にエクセルに落としては(1000件ほど)修正を加えて、また元のデータに上書きするといった方法を取りたいのですが。

例:
書籍一覧
No.作品名 出版元 作家名 人気度(%) コメント

みたいなデータが10万件。
例えばコメントや人気度が空欄のデータもあり、クエリで抽出→EXCELで編集(コメント等の記入)→インポートして元データに上書き。
という流...続きを読む

Aベストアンサー

>>その10万件のデータを定期的にエクセルに落としては(1000件ほど)修正を加えて、また元のデータに上書きするといった方法を取りたいのですが。

 なぜ、こういう運用にするのか疑問ですね。アクセスにデータをインポートしたら、アクセス上でデータを更新するのが普通だと思いますが。こういう運用はトラブルになりやすいです。

>>例えばコメントや人気度が空欄のデータもあり、クエリで抽出→EXCELで編集(コメント等の記入)→インポートして元データに上書き。

 →インポートして元データに上書き。
ではなく、
 →一時テーブルにインポート→一時テーブルと元テーブルを更新クエリで更新する

となるのでは?また、普通は、オートナンバーをマッチングキーに使用しないほうがいいと思います。

 ということで、とりあえず、CSVデータを100件程度に絞って、自分がやりたい更新処理がまともにできるか実験してみるのがいいと思います。


人気Q&Aランキング