質問: access2007の不思議な現象に困っています!! access2007の不思議な現象に困っています!! access2007+sharepointで開発を行っております。 sharepointとリンクしているテーブルが1つあり、そのテーブルを基にクエリを実行するのですが、 データベースウインドウを開いた直後にクエリを実行すると0レコードを返します。 再度クエリを実行すると3レコード返します。 (2回目以降は何度実行してもちゃんと3レコードを返します。) 3レコード返すのが正解なのですが、いろいろ調べてみると、どうも複数値フィールド(リンクテーブルの1つのフィールドが複数値フィールド)に対して抽出条件を設定しているところが問題というところまでは分かったのですが、対処法が分からず困っています。 (ちなみに抽出条件は like "*ooo*" な感じです) あと、自分なりにわかったことなのですが、、、 下記のようなテーブル(例)があったとします。(列cが複数値フィールドです) sql: select * from tablea where 列c.value like "*1*" 列a 列b 列c ----------------------- 10 100 1 20 200 2 30 300 3 40 400 1,2 50 500 1,3 60 100 2,3 ----------------------- 初回クエリ実行結果 列a 列b 列c ----------------------- 10 100 1 ----------------------- 2回目以降のクエリ実行結果 列a 列b 列c ----------------------- 10 100 1 40 400 1,2 50 500 1,3 ----------------------- どうかご教授の程、よろしくお願い致します。
回答: sharepointが判らないため、同じような現象が発生しそうな不具合条件の可能性等を考えてみました。 1)データベースウインドウを開いた直後 直後が、ウィンドウを開いてすぐのみ、つまり接続実行後時間が経っていない場合、という事であれば、接続に時間が掛かってクエリ実行時点では接続が完了していない、という事があり得るのか否か。 データベースウインドウを開いて、30秒程ダンスを踊ってから、クエリを実行すると3レコード返るのか? 2)不要なリソースを消費しないためになどの理由で、クエリ実行直前に初めて(sharepointに?)接続しにいっていないか。 そして、その接続は非同期命令ではないか? 1)の現象に近いが、この場合ウィンドウを開いてから5分間ダンスを踊っても、1度目は失敗する。 3)本来クエリ実行前にしなければならない処理を、クエリ実行後に処理していないか。 (2度目以降は、1度目のクエリ実行後に行った処理を元に、クエリに成功しているなど) 4)失敗する際の、like "*ooo*"に何が入っているか見てみましたか?