こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

ACCESSからODBC接続での書き込みや更新

ACCESSからODBC接続での書き込みや更新

環境
OS:WindowsXP home
SQL Server Express 2008
SQL server manegement studio 2008

パソコンネーム:pc01に
SQL Server Express 2008をインストールしてあり
そのパソコンからマイクロソフトACCESSからODBC経由で
SQLにアクセス(全て同一パソコン)

SQL server manegement studioで
以下のようにデータベースを作成しました

データベース名:DB01
テーブル名:tbl_01

所有者:pc01\user1


ODBC接続の設定
以下3点以外は規定値
接続するSQLサーバーの名前:pc01\SQLEXPRESS
ネットワークへのログインIDでWindows NTの認証メカニズムを使う
規定のデータベースを以下のものに変更する:DB01

この状態でACCESSからODBC経由でDB01のtbl_01に接続しても
新規書き込みや更新が出来ません、

書き込みや更新をしたい場合何を設定すれば良いのでしょうか?

SQL server manegement studioで
ユーザー、ロール、マップなどを
色々触って見たのですがテーブルの閲覧は出来ますが
更新や新規書き込みが出来ません。

確認すべき項目など御座いましたら具体的にお教え願えれば
幸いです、よろしくお願い致します。

投稿日時 - 2010-03-23 23:47:09

QNo.5774660

すぐに回答ほしいです

質問者が選んだベストアンサー

こういう質問のときは、
・どうやって更新しようとしたのか(手打ち?クエリ?)
・エラーメッセージが出たのかでないのか
など、も書かれるようにした方がいいと思います。

回答者の推理力にも限界がありますから、的外れな回答になることもあります。

今回一番確認してほしいのは「tbl_01には主キーがあるのか」です。
ODBCでSQL Serverを参照するときは、AccessとSQL Serverをつなぐプロバイダというものを介することになりますが、データに主キーがないとうまく更新処理の対象を受け渡せないためです。
なので、そういう場合はよく「参照はできるけど、更新はできない」ということになり得ます。

投稿日時 - 2010-03-24 02:04:10

お礼

jamshid6様

お教え頂いたようにtbl_01に主キーがありませんでしたので
主キーを入れることにより更新できるようになりました。

大変助かりました、有難う御座いました。

投稿日時 - 2010-03-25 00:16:31

このQ&Aは役に立ちましたか?

7人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

パススルークエリを試してみましたか?
これはAccessの解釈を経ず、直接DBエンジンに
SQLが送られます。従って、SQLの文法、
オブジェクト名など、全てSQL Server に
準拠したものになります。

投稿日時 - 2010-03-24 10:31:35

あなたにオススメの質問