- - PR -
.NETでデータベース
1|2|3|4
次のページへ»
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-05-20 00:58
C#でACCESSを使って開発を要求されています。
Webで検索すると、ほとんどというか全ての情報が テーブルが1つしかない単純なものばかりです。 現在使用されているACCESSは20数個のテーブルがあり 複雑にリレーションが張られています。 いろいろ調べていると、.NETではJOINされたテーブルはUPDATE できないようです。 そうなると、実際には中規模以上のデータベースを操作するには コツがあると思うのですが、いいWebページありませんか? | ||||
|
投稿日時: 2006-05-20 01:04
.NET とか関係なく 結局はSQLですよ、UPDATE文に表を2つかける構文てありましたっけ? | ||||
|
投稿日時: 2006-05-20 01:22
はい、大抵は結合されたテーブルを直接は更新できないですね。普通、データを更新したいときには、更新対象のテーブルやレコードを明示的に指定するものです。 #20テーブルって十分小規模だと思う・・・ | ||||
|
投稿日時: 2006-05-20 07:47
テーブルが1個であろうが20個あろうが100個あろうが、 .NET側で書く操作は同じですよ(SQL文を変更するだけ) リレーション等に関することも、SQLでの外部結合等の条件次第ですし。 どちらかと言うと、SQLを勉強されるほうがいいです。 #密かにSQLリファレンス系の本はお勧めですw INSERT文はテーブル複数(厳密には微妙に違いますが)書けますが、 UPDATE文でテーブル複数同時にっていうのは見た事無いですね〜 私が知らないだけ?(^^; | ||||
|
投稿日時: 2006-05-20 07:59
実際には中規模以上のデータベースを操作するには
とはかきましたが、今回の質問対象が中規模とはいっていません。 相変わらず、こんなところに突っ込んでくる人いるんですね | ||||
|
投稿日時: 2006-05-20 10:56
僕も最近、複数のテーブルを join した DataTable で Update() メソッドが使えなくて苦しんだのですが、結局 System.Data.OleDb.OleDbCommand,System.Data.OleDb.OleDbDataReader を使って更新しました。
他に良い方法があれば、僕も知りたいです。 | ||||
|
投稿日時: 2006-05-20 11:44
Accessであればクエリ、SQLServerやOracleであればビュー経由で
追加・更新が出来ます。 ただし、1対1のような単純なもののみです。 #1対1というのはテーブルではなく、レコードのことです。 [ メッセージ編集済み 編集者: うにくま 編集日時 2006-05-20 16:30 ] | ||||
|
投稿日時: 2006-05-20 17:22
そんなところで引っかかっても… テーブルが20だろうが200だろうが、 一回の更新でいったいいくつのテーブルを更新するんだろう 多くても10いくかどうかじゃないですか? それにそういう場合はストアドプロシージャなんかを 呼び出して更新したほうがいい気がする。 |
1|2|3|4
次のページへ»