タグ付けされた質問 「ms-access」

3
Access(Jet)SQL:TableAの各DateTimeスタンプに隣接するTableBのDateTimeスタンプ
最初の言葉 あなたは安全に(を含む)以下のセクションを無視することができます結合します皮切りあなただけのコードの亀裂を取りたい場合。背景と結果がちょうど文脈としての役割を果たす。最初にコードがどのように表示されたかを確認するには、2015年10月6日より前の編集履歴をご覧ください。 目的 最終的には、表の観測値に直接隣接する表の利用可能なGPSデータのDateTimeスタンプに基づいて、送信機(XまたはXmit)の補間GPS座標を計算SecondTableしますFirstTable。 究極の目標を達成するための私の当面の目標は、これらの側面の時点を得るためにどのように参加FirstTableするのSecondTableが最善かを見つけることです。後で、その情報を使用して、正距円筒座標系に沿った線形近似を仮定して中間GPS座標を計算できます(このスケールでは、地球が球体であることを気にしないと言った派手な言葉)。 ご質問 最も近い前後のタイムスタンプを生成するより効率的な方法はありますか? 「after」を取得し、「after」に関連する場合にのみ「before」を取得することで、自分で修正しました。 (A<>B OR A=B)構造を含まない、より直感的な方法はありますか。 Byrdzeyeは基本的な選択肢を提供しましたが、私の「実世界」の経験は、同じことを実行する彼の4つの結合戦略すべてとは一致しませんでした。しかし、代替結合スタイルに対処したことに対する彼の完全な信用。 あなたが持つかもしれない他の考え、トリックやアドバイス。 両方Thusfar byrdzeyeとPhrancisはこの点で非常に役立っています。私は、ことがわかっPhrancis'アドバイスが、私はここに彼に端をあげるので良好、レイアウトおよび重要な段階での支援を提供しました。 質問3に関して私が受けることができる追加の助けをまだ感謝しています。 箇条書きは、個々の質問で私を最も助けたと思う人を反映しています。 テーブル定義 半視覚的表現 FirstTable Fields RecTStamp | DateTime --can contain milliseconds via VBA code (see Ref 1) ReceivID | LONG XmitID | TEXT(25) Keys and Indices PK_DT | Primary, Unique, No Null, Compound XmitID …

5
MS Accessの完全外部結合
私には2つのスタッフリストがあります。 List A: StaffID Supervisor ==================== 0001234 NULL 0001235 0001234 0001237 0001234 0001239 0001237 そして List B: StaffID Supervisor ==================== 0001234 NULL 0001235 0001234 0001238 0001235 0001239 0001235 そして、私は次の出力が必要です: StaffID SupervisorA SupervisorB =================================== 0001234 NULL NULL 0001235 0001234 0001234 0001237 0001234 NULL 0001238 NULL 0001235 0001239 0001237 0001235 リストAとリストBのスタッフIDが1つの繰り返しのないリストにマージされ、2つのリスト間で一致しない可能性がある2つの監督者の詳細がマージされていることに注意してください。 クエリは優れている必要はありません。各リストに最大8000件のレコードがあり、うまく実行できます。その後、必要に応じてExcelのマイナーな操作を行ってよかったです。 …
11 query  join  ms-access 

1
suser_name()がADアカウント名の変更を反映しないのはなぜですか?
ユーザー名の1つが合法的に変更されたため、Active Directoryのユーザー名をdomain \ oldnameからdomain \ newnameに変更しました。ただし、suser_sname()がストアドプロシージャでこのユーザーによって呼び出されると、新しい名前ではなく古い名前が返されます。 グーグルによって私はKB 946358に誘導されました。これは、おそらくsuser_name()がLsaLookupSidsを呼び出しているために、それらの名前がサーバーにキャッシュされ、更新されていないことを示唆しています。ただし、その記事の回避策にはサーバーの再起動が含まれており、それでも問題を理解したいと思います。 私のコンテキストを彼らのものに変更すると、正しい名前が戻ってきます: EXECUTE AS LOGIN = 'domain\newname' GO SELECT suser_name() --returns 'domain\newname' ...これもLsaLookupSidsを呼び出すため、正しくない名前が返されると想定していました。ここで働いているメカニズムを本当に理解していないようです。 重要かもしれないいくつかの観察: このユーザーはサーバーに明示的にログインしていません。しかし、彼らはそうするADグループのメンバーです。変更された名前(domain \ newname)がの結果セットに表示されexec xp_logininfo 'domain\ADGroupName', 'members'ます。domain \ oldnameにはありません。 ユーザーが、Access 2003 MDBのパススルークエリから呼び出されたストアドプロシージャ内からsuser_name()を呼び出しています。 過去に多くのユーザーのアカウント名を変更しましたが、この問題は先週しか確認されていません(先週、2つの変更が行われ、どちらも問題が発生しているようです)。 サーバーは、Windows 2008 R2 DatacenterエディションでSql Server 2008 SP3 x64を実行しています。 どうしたの?DBAとして、私は何をすべきか、またはこれを解決するためにどこを見ればよいでしょうか?

6
実際のデータを持つデータベースの使用を開始する最も簡単な方法は何ですか?
データベースを使用することでメリットが得られるプロジェクトがありますが、データベースの経験がなく、サーバーにアクセスできず、サーバー側にあるものを操作する経験がほとんどありません。 学習曲線に取り組む必要がある場合は、幅広い適用範囲(SQLなど)で何かを学びたいと思いますが、Accessのようなものを習得することで、現在取り組んでいるタスクに対して十分に強力であれば、解決するでしょう。タックル。もちろん、私がいじくり回しているだけでそれが助けられれば、Accessに150ドルも落とさないほうがいいです。 私はLibreOffice BaseとSQLiteBrowserと呼ばれるものをダウンロードしましたが、時間を費やす前に、これらの特定のアプリケーションとSQLのフレーバーを習得する前に、これらのツールが自分のやりたいことに十分かどうかを確認したいと思いました。 次のことができるようになりたいです。 CSVまたはExcelからデータをインポートする 「これがそれであり、これがそれを含み、これらのいずれかがそれを含む」というxを選択することに等しいクエリを実行します。 指定されたクエリに一致する結果を示す新しいフィールドを書き込みます(?) 繰り返しますが、私は学習するつもりですが、データベースの学習、および必要に応じて特定のアプリケーションの詳細に集中する前に、ITに関する中間的な知識を学ぶ必要がないのはいいことです。

3
可能な限り一致するものをクエリして順序付け
私はこれらの行に沿ってクエリを書こうとしています: select * from tbl where col1 = 1 and col2 = 2 and col3 = 3 order by ... ; 最初に3つのWHERE条件すべてが一致するすべての結果(3/3)、次に任意の2つの条件が一致するすべての結果(2/3)、最後に任意の1つの条件が一致する結果(1/3)が必要です。 これら3つの結果セットのそれぞれは、によって順序付けされる必要があります(col4, col5, col6)。 単一のクエリでそれを実行できますか? 例えば: サンプルhttp://img708.imageshack.us/img708/1646/sampletableresult1.jpg テストデータを作成するスクリプト: IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[MyTable]') AND type in (N'U')) DROP TABLE [dbo].[MyTable] GO CREATE TABLE dbo.MyTable …

5
個々の食品の最新の購入記録のみを表示するSQLクエリ
MS Access 2013で食品購入/請求システムを使用していて、個々の食品の最新の購入価格を返すSQLクエリを作成しようとしています。 ここに私が作業しているテーブルの図があります: SQLについての私の理解は非常に基本的です。次の(正しくない)クエリを試してみました。(DISTINCT演算子のため)アイテムごとに1つのレコードのみが返され、最新の購入のみが返されることを期待しています(ORDER BY [Invoice Date] DESC) SELECT DISTINCT ([Food items].Item), [Food items].Item, [Food purchase data].[Price per unit], [Food purchase data].[Purchase unit], Invoices.[Invoice Date] FROM Invoices INNER JOIN ([Food items] INNER JOIN [Food purchase data] ON [Food items].ID = [Food purchase data].[Food item ID]) ON Invoices.ID = [Food …

1
ソースデータにアクセスせずにデータベースを正規化しますか?
大量の関連データを扱う新しい役割を開始しました。このすべてのデータのソースは、アクセスできないデータベースから抽出されたさまざまなExcelダンプです。この役割を担当する以前の人物は、数十個のExcelファイルを使用して、これらのデータファイルを収集し、操作し、レポートを作成しました。 ダンプをAccessデータベースに移動し始めました。Excelデータの多くが関連しており、おそらく正規化されているはずです。私が現在行っていることは、すべてのデータダンプのテーブルを作成し、それらをAccessにインポートし、多数のクエリを使用して、数十のデータ操作とレポートを複製することです。 私の唯一のソースが倉庫からのExcelダンプである場合、データを正規化することにまだ利点がありますか? ダンプの送信方法の形式を変更できない場合、データを正規化するにはどうすればよいですか? さらに、私の計画(予算によって異なります)はAccessからMS SQLデータベースに移行することです。
8 ms-access 

7
MS AccessプログラミングからSQL Serverに移行する際の主な考慮事項
私は100%独学のMS Accessプログラマーです(私の仕事の主な部分はプログラミングです)、現在はより大きなデータベースを構築しています。UIとして引き続きMS Accessを使用しますが、SQL Serverはすべてのデータを格納し、「作業」の多くを実行します。 本質的には私の質問です。SQL Serverについて、Accessを使用するときにおそらく学んだことも、必要もないことについて、知っておく必要がある主題は何ですか? 何かをする方法を教えてくれるようにあなたを探しているのではなく、あなたが最も重要なことは研究に行くべきだとあなたが考えていること-たくさんの主題とたくさんの詳細の地獄があります、自分を長く見たくありませんあまり価値のない道を進む... 脳のダンプ: メンテナンス:最も重要なこと(データベースの確認、データベースの削減、統計の更新、再構築など) 索引-必要な分からないので、上から基礎を学べる良い本やブログなどはありますか? 他に見逃したもの(SQL Serverを初めて使うと言ったように、おそらくたくさんあります...) それが私が中規模の小売業者とデータベースで働くのに役立つなら、私は主に次のようなことをカバーすることに取り組んでいます レポートプラットフォーム(メインシステムからの売上高/レシート/在庫などを要約し、迅速なレポートを提供します) サードパートとストアがレジスタを介して行った調整ツール(サードパーティからデータをインポートし、トランザクションログを相互参照します) プロモーションに関連するすべてのデータを保存します。製品、価格、予測、実績など

5
SQLサーバーでの長時間のブロックを自動的に通知できますか?
週に1回程度、Access 2003フロントエンドからの長期にわたる読み取りロックが原因で、SQL Server 2005データベースのブロッキングチェーンを解決する必要があります。ロックは、ユーザーが特定のフォームを開くたびに解除され、ユーザーがフォームのスクロールを終了するか、フォームを閉じると解放されます。多くのユーザーがこのフォームを参照として開いているので、これらのロックはしばらく保持されます。テーブルを更新するとブロッキングが発生し、最初のロックを待機しているため、突然このテーブルから誰も選択できなくなります。多くのアプリがこのデータに依存しているため、これは私たちにとって非常に問題です。このロック動作は、リンクテーブルでのAccessの動作の一部であることを理解しています。 私はアクティビティモニターから問題を解決してきました。ヘッドブロッカーであるSELECTプロセスを見つけたら、そのプロセスを強制終了します。これは、手動で行うのに時間がかかるだけでなく、反応的であるためにも問題です。私がそれを聞いたときまでに、それは多くの人にとってすでに問題になっています。 これらの長期にわたるブロッキングチェーンを自動的にチェックする方法があり、メールで送信されるか、問題が自動的に解決されるかどうかを知りたいです。ロジックは単純明快です(「このSELECTクエリに一致するプロセスが1分以上ブロックされている場合は、通知/強制終了する」)が、SQL Serverでこれを実装する方法がわかりません。 価値があることについては、適切な解決策はアプリを修正または書き直すことだと思います。ただし、部局の政治上の理由により、これは今後数か月間は選択肢になりません。そのため、私は一時的なギャップを探しています。

3
Accessのデータ変更をテーブルレベルでログに記録する方法
非営利組織のAccessデータベースをサポートしています。データが不思議に変化しているという問題があり、これがコンピューターの知識がほとんどないユーザーが原因なのか、私のバックグラウンド処理が原因なのかについて、親しみやすい議論が交わされました。 これらの条件について、UIレベルでいくつかのチェックを追加しましたが、特定のフィールドが変更されたときにログを記録するために、データベーステーブルレベルでいくつかのチェックを行いたいと思います。このようにして、変更がユーザーによって開始されたのか、バックグラウンドで実行されている更新クエリから開始されたのかを知ることができます。通常はon updateトリガーを使用しますが、私の知る限り、Accessはトリガーをサポートしていません。Accessで利用できる他のロギングまたはトリガーのような機能はありますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.