- PR -

テーブル名で

1
投稿者投稿内容
なび
ぬし
会議室デビュー日: 2007/08/27
投稿数: 273
投稿日時: 2007-09-27 17:26

こんばんは。

VB2005でDataSetを取得しています。

SELECT KMK FROM TBLA;
SELECT KMK FROM TBLB

のコマンドを実行で
SqlDataAdapter.Fill(DataSet)
すると
DataSet.Tables(0)
DataSet.Tables(1)
と番号でDataTableはとれますが

下記みたいに名前に変更したいのです。

DataSet.Tables(TBLA)
DataSet.Tables(TBLB)

どのように変更するとよいのでしょうか?

ご教授宜しくお願いします。
さかもと
ぬし
会議室デビュー日: 2004/05/14
投稿数: 586
投稿日時: 2007-09-27 17:32
さかもとと申します。

DataSet.Tables(TBLA)

DataSet.Tables("TBLA")

ということではなく・・・?
取り違えていたらすいません。
_________________
------------------------------------------
拝啓、さかもとと申します♪
なび
ぬし
会議室デビュー日: 2007/08/27
投稿数: 273
投稿日時: 2007-09-27 17:48
返答ありがとうございます。

他のサイトからの抜粋です。


ADO.NETで、複数の結果レコードを受け取る方法です。

Dim cnnString As String = "接続文字列……"
↓2つの「select」文を発行
Dim selString As String = "SELECT pub_id, pub_name FROM publishers;"
& "SELECT emp_id, fname, pub_id FROM employee"
↓DataAdapterを生成
Dim da As SqlDataAdapter = New SqlDataAdapter(selString, cnnString)
↓DataSetを生成
Dim ds As New DataSet()
↓Fillメソッドの実行
da.Fill(ds)

DataSetのTablesプロパティには2つのDataTableが追加され、
作成されるDataTable名は、table, table1になります


「作成されるDataTable名は、table, table1になります」
を自分で他の名前にしたいのです。

1つだったら
SqlDataAdapter.Fill(DataSet,"名前")

とかしますよね・・

2つの「select」文を発行した場合
どうするのかをお聞きしたかったのです。






さかもと
ぬし
会議室デビュー日: 2004/05/14
投稿数: 586
投稿日時: 2007-09-27 18:01
さかもとです。

Fillメソッド実行後でよければ

ds.Tables(0).TableName="hoge1"
ds.Tables(1).TableName="hoge2"

などと変更は可能です。

2つ同時の場合、これ以外に何か良い方法があるような・・・。

_________________
------------------------------------------
拝啓、さかもとと申します。

[ メッセージ編集済み 編集者: さかもと 編集日時 2007-09-27 18:05 ]
なび
ぬし
会議室デビュー日: 2007/08/27
投稿数: 273
投稿日時: 2007-09-27 18:03

すいません、

こちらのサイトの
「複数のselect文をまとめて実行するには」に載っていました。

関連してお聞きしたいのが、実行した結果データ件数が0件の判断を
まとめてしたいのですが可能なのでしょうか?

If Ds.Tables(0).Rows.Count = 0 Or Ds.Tables(1).Rows.Count = 0 Then
エラー
END IF

と行っています。

IF XXXX(複数SELECTの実行結果) THEN
エラー
END IF

宜しくお願いします。
なび
ぬし
会議室デビュー日: 2007/08/27
投稿数: 273
投稿日時: 2007-09-27 18:03

すいません、

こちらのサイトの
「複数のselect文をまとめて実行するには」に載っていました。

関連してお聞きしたいのが、実行した結果データ件数が0件の判断を
まとめてしたいのですが可能なのでしょうか?

If Ds.Tables(0).Rows.Count = 0 Or Ds.Tables(1).Rows.Count = 0 Then
エラー
END IF

と行っています。

IF XXXX(複数SELECTの実行結果) THEN
エラー
END IF

宜しくお願いします。
さかもと
ぬし
会議室デビュー日: 2004/05/14
投稿数: 586
投稿日時: 2007-09-27 18:09
さかもとです。

あっ、ありましたね。
http://www.atmarkit.co.jp/fdotnet/dotnettips/137multisel/multisel.html
勉強になります。


_________________
------------------------------------------
拝啓、さかもとと申します♪
1

スキルアップ/キャリアアップ(JOB@IT)