MSDE FunClub
Microsoft Data Engine FunClub
MSDE初心者向けメーリングリスト過去ログ[725]番
 
[TOP]>[MSDE初心者向けメーリングリスト過去ログ(725番)]>[ウィンドを閉じる]
 
SQLServer2005時代でも
開発の基本は T-SQL
上巻で T-SQL の基礎作り
 
SQLServer2005時代でも
運用の基本はバックアップ
下巻でバックアップ手法を学びましょう
PASSJ人気コンテンツで学んだ後は下巻でさらなる学習を!
 
ウィンドを閉じる
MSDE/SQLServer FAQ
MSDE / MSDE2000 
技術情報サポート
初心者向け
メーリングリスト
過去ログの表示
技術者向け
メーリングリスト
過去ログの表示
メーリングリスト
活動状況の
表示
MSDE TOP メニュー
MSDEトップメニューに移動します
 

 
RE:  フォームでデータ更新

Date: Wed, 30 Jul 2003 10:56:56 +0900
From: "Akira Horikawa" <who@example.ne.jp>


堀川です、おはようございます

-----Original Message-----
From: koyama [mailto:koyama@kensui.on.arena.ne.jp] 
Sent: Tuesday, July 29, 2003 5:35 PM
To: MSDEメーリングリスト
Subject: [ml-msde-beg:00722] フォームでデータ更新



>でいろいろ調べました。堀川様著書の
>1.「SQL Server+MSDE7.0完全トレーニングテキスト下」
>でみると"再同期コマンド"の設定が必要とか。

再同期コマンドは、ストアドプロシージャが返すレコードセットが
2つ以上のテーブルから抜き出したビュー表形式(1対多の
参照整合性が設定されているテーブルの等結合)の場合に
必要です。

参照整合性がある1対多の多側テーブルの外部キーの列を
Accessのフォームから修正した場合、Accessでは、その変更
に対応する1側テーブルの主キーの値を新しく表示しなければ
いけません。

しかしストアドプロシージャが返すレコードセットがビュー表
になっているので、どのようにその値を取得していいのか判断
できないので、再同期コマンドを呼び出して、値の取得を依頼します。

ADOプログラムレベルで、自力でレコードを更新しないで、
Accessの連結フォームを使ってレコード更新を行うのであれば
再同期コマンドが必要です。

また固有のテーブルプロパティの設定も必要です。
固有のテーブルプロパティは、ビュー表形式で更新が可能な
条件を満たすベーステーブルの名前を入力します。
1対多の形式であれば多側テーブルの名前です。




>2.またインターネットで調べてみると、フォームのレコードソース
>にストアドプロシージャを設定し、"入力パラメータ"
>の所へ、フォームのテキストボックスの値を設定させるように空いてありま
す。
>http://www.shoeisha.com/book/hp/pc/office/Access/index.html
>2の方法でやってみたのですが、うまく表示されませんでした。

この場合、入力パラメータの定義が正しいかどうかチェック
しなければいけません。

一番簡単な方法は、レコードセットを返すストアドプロシージャの方で、
与えられたパラメータの値をデバッグ用テーブルに記録し、その
デバッグ用テーブルに記録された値と、Accessフォームのコントロール
の値とを比較して下さい。
検索用パラメータが正しくストアドプロシージャに受け渡っているのかを
確認します。



>1と2どちらの方法をとるのがよろしいのでしょうか?

ストアドプロシージャがパラメータを必要として、しかもビュー表形式なら
   再同期コマンド、入力パラメータ、固有のテーブル
この3つのプロパティの設定が必要です。

但し自分で非連結フォームを作成するのであれば、これらは必要としません。



>Alter PROCEDURE 入力データ呼出_store

set nocount on が抜けていましたが、大丈夫でしょうか?


> set @hinmeiid=(select 品名入力ID from 品名入力T where 入力日=@nyuryoku
and
>品名コード=@hinmeino and 入数=@irisu)

selectの検索が失敗すると、null値が代入されます
レコード検索は必ず上手く行くのでしょうか?


------------------------------------
(株)日本技術ソフト開発
        堀川 明  (Akira Horikawa)
    07月30日(水曜日) 10時56分記
        mailto:who@example.ne.jp
        http://www.horikawa.ne.jp/msde/





[MSDE/SQLServerに関して、今、どんなことにお困りですか?]
よろしければお困りの内容を、電子メールで教えて下さい。
質問を電子メールで作成する


[ウィンドを閉じる]

[MSDE/SQLServer FAQ ]

[MSDE / MSDE2000 技術サポート情報一覧]

MSDE TOP ページに移動する

 
 
 
 
 
 
 
MSDE FunClubに関するご意見・ご要望等ございましたら、
msdefun@horikawa.ne.jp までご連絡下さい。
MSDEを始めとする各種データベースシステムの開発、コンサルタントに関するご要望等は、
msdedev@horikawa.ne.jp までご連絡下さい。