2012-05-03 14 views
1

Accessがクエリを更新しないようにする方法、特にテーブルが存在しなくなったときに結合を削除する方法はありますか?MS Accessがクエリを自動的に更新しないようにする

たとえば、次のクエリは一時テーブルで使用されます。

Select Table1.Col1, Table1.Col2 
From Table1 
    left join Table2 on Table1.Col1 = Table2.Col1 
Where Table2.Col1 is null 

一時テーブルはその後削除され、クエリはアクセスが低下開いた場合に結果として加わります。

Select Table1.Col1, Table1.Col2 
From Table1, Table2 
Where Table2.Col1 is null 

これは、disable AutoCorrectしよう近いし、データベースを再オープンし、これはまだ発生したかどうかを確認Prevent Access from Changing Queries

答えて

0

で尋ねた質問へのと同様です。

Accessが「適切なことを行い」、クエリを自動的に更新する場合があります。その場合
、次のテクニックの1つを使用することができる:

  • は、VBAコード内のSQLを保管してください。
    あなたは結果のSQLをバインドすることができたり、たとえば、必要に応じてクエリを再作成します。

    ' Bind form to manually using the Form Open event ' 
    Private Sub Form_Open(Cancel As Integer) 
        Dim sql As String 
        sql = sql & "Select Table1.Col1, Table1.Col2 " 
        sql = sql & "From Table1 " 
        sql = sql & " left join Table2 on Table1.Col1 = Table2.Col1 " 
        sql = sql & "Where Table2.Col1 is null" 
        ' Bind the form directly to the SQL ' 
        Me.RecordSource = sql 
    End Sub 
    
  • をファイルに保存し、クエリのSQL、および再ロードを必要に応じて:

    ' Save the query to a text file, in the application folder ' 
    Application.SaveAsText acQuery, "MyQuery", CurrentProject.Path & "\myQuery.txt" 
    
    ' Load the the query from its previously saved file ' 
    Application.LoadFromText acQuery, "MyQuery", CurrentProject.Path & "\myQuery.txt" 
    
関連する問題