- - PR -
【C#】sqlデータベース接続について
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-11-02 18:05
はじめまして。
windowsXP に.NET2003を入れています。 今、c#で、プログラムを作成していますが、分からないことがあります。 それぞれ、違うサーバにsqlデータベースがあり、 片方のテーブルのデータを一部修正したものを、 もう片方のデータベースのテーブルにINSERTしたいと思っています。 こういう場合は、どのようにプログラムを組めばいいのでしょうか? @まず、元になるDBに接続し、テーブルのデータをSELECTする AもうひとつのDBに接続し、対象テーブルのデータをDELETEし、 その後、INSERTする。 @でわからないのは、SELECTしたデータをどうしておけばいいのか、ということです。 Aでわからないのは、@のデータをどうやってINSERTするのが効率がいいのか? ということです。(一括で、INSERTする方法はあるのでしょうか?) わかりづらい説明になってしまいましたが、よろしくご教授ください。 よろしくお願いします。 | ||||
|
投稿日時: 2004-11-02 18:40
@片方のテーブルのデータを一部修正
AもうひとつのDBに接続し、対象テーブルのデータをDELETEし、 その後、INSERTする。 この2つの処理で1つのトランザクションですか? | ||||
|
投稿日時: 2004-11-02 19:33
@のデータはデータをselectするだけなので、トランザクション処理は
A対象テーブルのデータをDELETEし、 その後、INSERTするの部分です。 ただ、このとき、INSERTするのは、@でselectした全データなのですが、 そのデータのあるフィールドだけを編集する必要があり、 (数字5桁の文字列を、最初の3桁のみにする) 編集後のデータをINSERTしたいと考えています。 よろしくお願い致します。 | ||||
|
投稿日時: 2004-11-02 21:20
たぶん一番効率がよく楽なのはSQLのみでやってしまうことのように思えますが何か事情があります?
SQL Server2000だと、リンクサーバーを作って、
こんな感じで(トランザクションは適当に追加してください)。Oracleにも似たような機能があったような。 | ||||
|
投稿日時: 2004-11-02 22:50
お返事、ありがとうございます。
リンクサーバというのは、SQL上でリンクするような設定が必要ですよね? できれば、c#のプログラムのみで操作したいのですが、 そういったことも可能でしょうか? | ||||
|
投稿日時: 2004-11-03 00:04
C#上でリンクサーバの設定をして、処理をして、リンクサーバを削除すればいいですね。
どうしても C#にこだわるのであれば。 | ||||
|
投稿日時: 2004-11-03 20:58
こんな感じですか?でもリンクサーバーを動的に追加したりする用途が想像できません。 データベースサーバーが動的に増えたりするんですか? | ||||
|
投稿日時: 2004-11-04 13:46
お返事、ありがとうございます。
SQLの設定を変更したくないと思い、リンクの設定もプログラム上で行おうと思ったのですが、 処理的には、最初からリンクサーバの設定をSQL上にしておいたほうが効率がよいのですよね? そのように設定して、yaさんに教えていただいたように処理をしようと思います。 もう一点確認したいのですが、このリンクサーバに追加してある状態で、 プログラム上から最初に、リンクの接続の状態が正常かチェックしたいのですが なにかよい方法はありますか? よろしくお願い致します。 |
1