• 締切済み

ACCESS2010でSQLsever2012

いつもお世話になります。ACCESSはあまり知識が無いので皆様の知恵を借りたいと思いまして質問させて頂きますが何分理解不足の点が多く変な文章になっておりましたら補足させて頂きますので宜しくお願い致します。 私が勤めている会社のデ-タの話になります。基幹業務はVB.net 2005で作成して頂いております。デ-タベ-スはSQLserver2012の無料版になります。 売上デ-タや仕入デ-タ等の過去分を訂正したいと思っておりますがODBCにて 接続が出来ましてインポ-トは可能なのですがインポ-トしたテ-ブルのデ-タ をクエリで訂正したとします。 そのテ-ブルを実デ-タに上書きするにはどうすれば良いのでしょうか? 単にエクスポ-トしたら良いのでしょうか?いろいろと調べてみましたが 要領を得る事が出来ずにおります。何卒宜しくお願い致します。

  • sxe10
  • お礼率84% (27/32)

みんなの回答

  • shimix
  • ベストアンサー率54% (865/1590)
回答No.3

ANo.2です。 リンクテーブルを使わない・・となると、インポートしたテーブルを上書きするしかありません。「キー項目を編集(変更)することはない」という前提なら、テンポラリテーブルに書き出してから更新クエリを実行すればいいと思います。 というか、編集作業のたびにインポート/上書きなんて実運用として考えたこともないです。大量の編集前にBackupSQLを実行しておくというならまだわかりますが・・・

sxe10
質問者

お礼

再度のご回答誠にありがとうございます。確かにリンクテ-ブル接続してデ-タの訂正を行う方が早いのは分かるのですが。キ-項目は当然ながらさわる事はないです。当然ながら数値とかの変更も致しません。実デ-タは毎時どんどん更新されていくのですがそれでもやはりリンクで繋いだ方が賢明でしょうか?バックアップは毎日外付けHDDにして1週間保存はしてあります。

  • shimix
  • ベストアンサー率54% (865/1590)
回答No.2

インポートするのではなく、リンクテーブルとして作成してください。SQLServerのテーブルをAccess内のテーブルと同じように扱えます。

sxe10
質問者

お礼

早速のご回答誠にありがとうございました。またお礼が遅くなり申し訳ございませんでした。 リンクテ-ブルで接続の方法も知っておりますが万が一の為に一旦テ-ブルにインポ-トしてから作業したいと考えております。リンクテ-ブルの場合ミスしたらそのまま反映されてしまいますのでそれは避けたいと考えております。

  • oboroxx
  • ベストアンサー率40% (317/792)
回答No.1

SQL Server Management Studioでデータベースを開いて、テーブルを開いて、更新というやり方もあります。 しかしこの方法だと何らかのデータ入力での規則がある場合それに合致しない可能性もあります。 人の入力なのでミスがつきものです。 一応載せておきます。 https://msdn.microsoft.com/ja-jp/library/mt238290.aspx

sxe10
質問者

お礼

早速のご回答誠にありがとうございました。お礼が遅くなり申し訳ございませんでした。 サ-バ-から直に訂正する事は考えておりません。 すみませんでした。

関連するQ&A

  • アクセスのテ-ブルについて

    アクセスのテ-ブルは最大 なんMBまで 取り込み可能ですか 先日 TXTファイルをインポ-トしていたら デ-タ量が多い様な  メッセジがでました またTXTデ-タを圧縮する方法がありますか

  • クエリ-

    テ-ブル1のフィ-ルド1のデ-タは、1,2,3番にあり、 テ-ブル2のフィ-ルド1のデ-タは、1,2,4番目にある場合、つまり、テ-ブル1には4番目デ-タがなく、 2には3番目のデ-タがない。このとき、 テ-ブル1、2を合体して、すべてのデ-タを含む、ひとつのファイルにするクエリ-はあるでしょうか。 クエリ-を二つ作って、エクセルで足し算、引き算すれば できますが、手間がかかりますので、簡単にできる方法を 教えてください。 アクセス2000です。

  • accessでの集計計算について

    変な質問でごめんなさい。 テ-ブルA、「年月日」「金額1」「金額2」 テ-ブルB、「購入日」「取引」「価格」 以上のようなテ-ブルがあります。テ-ブルA(フォ-ム)のデ-タは1行のみです。 クエリで以下の計算のしかたを教えてください。 「取引」フィ-ルドを抽出条件で抽出したレコ-ドの「価格」の平均値を計算し”ア”とする。 求めたい数値は、 もし、「金額1」から”ア”を減算して負数だったら・・・0 もし、「金額1」から”ア”を減算して正数だったら、その数値 ただし、「金額2」を超過した場合は「金額2」とする。 その求めた数値をテ-ブルBの全レコ-ドの「価格」フィ-ルドに埋込む(貼付)る。 分かりにくい書き方で申し訳ありません。質問の意味が分からなかったら無視してください。ど素人です。

  • SQLServer2000で。

    こんにちは。早速質問させて頂きます。 VB6.0からSQLServer 2000に、ADOで接続を行っています。 デ-タ更新時に、デ-タ単位でロックをかけたいのですが、どのように記述すればよいのか分かりません。 SELECT文だと、テ-ブル名の後ろに【WITH~】と記述するというのは分かったのですが、INSERT/UPDATE/DELETEの際はどのようにすればいいのでしょうか? もう一つ。 デ-タSELECT時に、項目にNULL値が入っていた場合、NULL以外の値で取得する方法はありますか?(Oracleにはあったような…) どなたか知識のある方、教えて下さい。 よろしくお願いします。

  • SQL Serverのエラーについて

    サーバーの環境 OS:MS Windows NT Server 4.0 DB:MS SQL Server6.5 SQL Server 6.5 Service Pack 5a Windows NT 4.0 Service Pack 6a Internet Information Server 4.0 Internet Explorer 5.5 SQL Serverにクエリーを実行すると以下のエラーが発生します。 解決方法をご存知の方いましたらご教授願います。 Microsoft OLE DB Provider for ODBC Drivers エラー '80040e14' [Microsoft][ODBC SQL Server Driver][SQL Server]行のサイズが 2107 になり、作業テ-ブルの作成に失敗しました。テ-ブル 2014 内の 1 行の許容サイズを超えます。

  • accessからsqlserverへの移行について!

    accessからsqlserverへの移行について! 現在accessでシステム運用しています。 処理に時間がかかるのでDBのみsqlserverへの移行を検討しています。 時間がかかる原因は計算項目が多く計算の為に必要な定義項目と参照項目で計算項目を含めると約300項目となります。 この為、クエリーをNo.1とNo.2の2個のクエリーに分けて対処しています。 クエリーNo.2はNo.1の式の値を使用し更に式で計算しています。 クエリーで定義している計算式も条件が複雑なものもありさらに計算結果⇒計算結果⇒・・・・となっています。 この様な内容なので入力画面はレスポンスが遅く印刷は5~10分位かかるものがあります。 とりあえず印刷処理を早くしたいと思い一旦ワークテーブルに必要項目を出力する等をやって見ましたがやはり抽出に時間がかかりあまり改善しません。 データ件数は約3万件なのでデータ件数は問題ないと思っています。 accessの処理はそのままでDBをsqlserverからODBCでリンクしようと思います。 DBをsqlserverに移行することで処理速度の改善はどの程度見込めるのでしょうか。 計算項目数が多いのであまり見込めないのではと思っています。 accessからsqlserverへの移行された方でどの位改善されたのか教えて下さい。 現在の運用環境はサーバは使用せずファイル共有で4台のPCで運用しています。OSはWinXPです。 今回も専用サーバは使用せず現在のWinXPのPCにSQLServer2005無料を使用しようと思っています。 又、accessの処理で他に早くする方法がありましたら教えて下さい。 よろしくお願いします。

  • access2000です。

    こんばんは。 いつもお世話になります。 アクセスで困っております。教えてください。 テ-ブル1(原料マスター) コード  品名 100    A 200     B 300    C テーブル2(入出庫明細) 日付  コード  入庫  出庫 4/1   100    10 4/2   100          10 4/2      200    10 テーブル3(月初在庫) コード  在庫 100    10 200    100 300      50 クエリー1(入出庫の月合計) テーブル2より コード  入庫合計  出庫合計 100     10     10 200     10 クエリー2(在庫の算出) テーブル1の全コードを使用 コード  月初在庫 入庫合計 出庫合計 現在庫 100      10       10       10        10 200      100        10 300      50 となり、入庫や出庫にデータが入っていないコードのものは、現在庫が表示されません。入庫の合計は集計を合計としているだけです。現在庫はフィールドにビルドでテーブル1の月初在庫+入庫合計-出庫合計と入力しており、集計は演算としています。データの入っていないところを無視させて現在庫を全て表示させたいのです。 宜しくお願い致します。

  • accessからsqlserverへの移行について!

    accessからsqlserverへの移行について! accessからsqlserverへの移行することにしました。 問題が起きないよう先日質問させて頂いた内容でもう少し詳しく教えてください。 以下が前回の内容です。編集をしています。 accessの処理はそのままでDBをsqlserverからODBCでリンクしようと思います。 現在の運用環境はサーバは使用せずファイル共有で4台のPCで運用しています。OSはWinXPです。 現在のマシンは4台とも3年前に購入したPentiumの2.40GHzメモリは2GBです。 今回も専用サーバは使用せず現在のPCにSQLServer2005無料を使用と思っています。 データ件数は約3万件で必要な項目にはインデックスを付けてリレーションも張っています。 計算項目が多く定義と参照項目含め約300項目となり、クエリーをNo.1とNo.2の2個のに分けています。 クエリーはデータやマスタとリンクしています、No.2はNo.1の式の値を使用し計算しています。 計算式は複雑なものや計算結果⇒計算結果⇒・・・・となっています。 入力画面はレスポンスが遅く、単票印刷で約30件の処理に5~10分位かかるものがあります。 印刷はワークテーブルに必要項目を出力する等をやって見ましたが改善しませんでした。抽出に時間がかかっています。 DBをsqlserverに移行することで処理速度の改善はどの程度見込めるのでしょうか。 計算項目数が多いのであまり見込めないのではと思っています。 頂いた回答です。 >それら複数のテーブルをサーバーに置いてリンクテーブルにし、従来通りのクエリーをそのまま使った場合は、確実に遅くなります。 ?これはsqlserverのデータをリンクしクエリーはそのままにしたら遅くなるのでしょうか。  対象方法はsqlserverにクエリーをVIEWで定義すればいいでしょうか。対処方法を教えてください。 >高速化にはそれなりのテクニックが必要です。 ?参考になるサイトがあれば教えてください。 >やはり抽出に時間がかかりあまり改善しませんとのことですので、計算式なしで[select * from ...等]にしてみて流してみてください。 ?早くなった場合必要な値はどの様にして取得しているのでしょうか。 >やはり、エンジンを置くPCの性能がカギで、これが遅いのでは期待はできないとしたものです。聞けば同じマシンで代替するとのことなので、あまり期待しない方がよい と思います。 ?サーバを設置しサーバOSにするとにより処理速度はかなり速くなるのでしょうか。  専用サーバも高価なものは買えないので現在のPCと同等程度の性能となります。 よろしくお願いします。

  • トランザクションモード

    早速ご教示ください。 データベース(TEST_db)のM_SYAIN_CDというテーブルがあるとします。 【クエリアナライザ】TEST_db BIGIN TRANSACTION GO DELETE M_SYAIN_CD GO 上記を実行します。 この状態で、M_SYAIN_CDの全行を返すと、『Microsoft odbc sqlserver driver 時間切れになりました』とエラーになり全行返すことができません。 (1)なぜMicrosoft odbc sqlserver driver 時間切れになりました。とな るのか? トランザクションモード中にテーブルは見れないのでしょうか? 【クエリアナライザ】TEST_db BIGIN TRANSACTION GO DELETE M_SYAIN_CD GO COMMIT TRANSACTION GO (2)上記実行後、ROLLBACKはできるのでしょうか? ご教示の程宜しくお願い致します。

  • パ-テ-ションについて質問

    XPプリインスト-ルユ-ザ-です 突然ですが皆さんのPCのパ-テ-ションって どんな割合で分割されていますか? うちのは初期でCドラ8G・Dドラ72Gの合計80Gです でも追加したソフトってインスト-ルするとき 基本的のCドラに入りますよね? でもこれって続けるとあっとゆうまにCドラ パンパンになる計算・・・ なやんだ挙句リカバリCDにてパ-テ-ションを 変更してCドラ15G・Dドラ65Gに変更して (ホントはCドラもっと増やしたいけどリカバリCD での操作はこれが限界) なおかつ追加するソフトはDドラにインスト-ル するようにしていますが・・・ やっぱり追加ソフトをDドラにすると不安定気味 ですしOE6も少しおかしいし、かといって追加 ソフトがデ-タベ-スになるのでCドラにすると トロいしデフラグも時間かかるし・・ やはりPCメ-カ-のサポ-トによると 初期のほうが不安定なりにくい(当たり前か)と のたまうので上記のような話をしさらに 「じゃあ追加ソフトも快適に動作しないパ-テ- ションの設定なんかするな!それともなにか、 暗にソフト追加させへん意図でもあるんですか? 80Gも容量ある意味ないでっせ・・・!」 とツッコミいれるぐらいかなりジレンマです (その後のやりとりはご想像のオマカセ!) いままで独学で偏った知識しかないので この偏屈バカによきアドバイス放り投げて やってください。