5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

ADO.NETの質問・雑談スレ

1 :NAME IS NULL:05/01/02 10:54:49 ID:XCpHoqqm
ADO.NETに関する質問・雑談・評価 etc
何でもどうぞ。

2 :NAME IS NULL:05/01/02 10:55:45 ID:XCpHoqqm
リンク
http://www.atmarkit.co.jp/fdotnet/basics/adonet_index/index.html


3 :NAME IS NULL:05/01/04 23:23:17 ID:gtuR+WFj
ADO.NETはADOから派生されたという表現だが、この両者って別物のような感じがするのだが・・・・

使用しているクラスにしても共通点が少ないし、
ADO.NETは.NETフレームワーク上に位置し、ADOはOS上に乗っている。

漏れはADOをこなしてきて、ADO.NETに入った性質だが最初が苦労した。
考え方が全然違う感じがしたよ。


4 :NAME IS NULL:05/01/05 00:16:03 ID:???
>>3
つーか、本当に考え方違うでしょ。
ADOは接続しながらデータ操作するのが普通だけど、ADO.NETは非接続推奨っていうか、他に手段が無い。

5 :NAME IS NULL:05/01/05 00:24:18 ID:???
うん。だから、逆にADO.NETっていう名前がまぎらわしいと思う。
別の名前にすればよかったのに。。。

漏れも、ADOをこなしてきてADO.NETに入った性質だが
DataSetとかDataViewとかクラスの使い方がいまだに分からん
ところがある。。。欝だ。


6 :NAME IS NULL:05/01/08 20:21:51 ID:???
ソースコードで、ADOと近いのはADO.NETよりも、DAOの方だな。w

7 :7:05/01/09 20:34:18 ID:wBFa/DC9
データセットの生成を行うと
「生成中にエラーが発生しました。この問題を解決するには、
プロジェクトをビルドし、エラーを修正してから、データセットを再生成してください。」
と出ます。
xsdというのは作成されるのですが、そのままビルドすると
ビルドエラーとなり、
「クラス 'dataRow' は、それ自体から継承することはできません」
と出ます。
どのようにしたらいいのでしょうか?
'dataRow' は 'dataRow' から継承されます。


8 :NAME IS NULL:05/01/09 20:42:58 ID:???
>>7
どういうプロジェクトを作っていて、どういう過程でデータセットの生成
を行おうとしたのかを教えて欲しい。
その情報がないと、再現しようがないのでなんとも。。。

9 :7:05/01/09 20:56:57 ID:wBFa/DC9
VB.netのWindowsアプリケーションです。
「ツール」−「データベースへの接続」からMicrosoft Jet4.0OLE DB Provider
を選んでデータソースを選択しました。
それからツールボックスからOleDbDataAdapterをフォームにドロップし、
それ以降は
http://www.atmarkit.co.jp/fdotnet/basics/adonet07/adonet07_02.html
http://www.atmarkit.co.jp/fdotnet/basics/adonet07/adonet07_03.html
を行い、OleDbDataAdapter1を選択した状態で「データセットの作成」で
「新規作成」を行いました。

10 :NAME IS NULL:05/01/09 21:36:52 ID:???
>>9
私は今までその方法でデータセットを作ってきたが、生成時にエラーが
起きたことは一度もありませんでしたです。。。
で、試しにmdbファイルを移動させてみたり、テーブルを削除してみたり、
読み取り専用ファイルにしてみたりしたが、>>7に書いてるような
エラーはでなかった。。。
もうだめぽ。

何かコードを書いたり、表記してたもの以外のオブジェクトを配置して
たりはしてないんだよね?
だったら、プロジェクトファイルとmdbファイルをさらして
もらうしかないかも。。

11 :7:05/01/09 21:58:24 ID:wBFa/DC9
>>10
プロジェクトに関しては新規作成して、まっさらなフォームに対して
行ってます。
mdbはAccess2000です。

わざわざやっていただいてほんとにありがとうございます。

12 :10:05/01/09 22:20:26 ID:???
クラス 'datarow' は、それ自体から継承することはできません
'datarow' は 'datarow' から継承されます。

というエラーメッセージは、ソリューションエクスプローラで
新しい項目の追加でクラスを追加して、以下のソースコードを追加すると
出てきたが、やっぱりデータセットはちゃんと作れる。。。
わからんぽ。誰か助けて・・・(泣

Public Class datarow
Inherits datarow

Public Sub Test2()
Trace.WriteLine("Test2 called")
End Sub

End Class

13 :NAME IS NULL:05/01/09 22:48:30 ID:???
クラス 'datarow' は、それ自体から継承することはできません
'datarow' は 'datarow' から継承されます。

というエラーメッセージは、ソリューションエクスプローラで
新しい項目の追加でクラスを追加して、以下のソースコードを追加すると
出てきたが、やっぱりデータセットはちゃんと作れる。。。
わからんぽ。誰か助けて・・・(泣

Public Class datarow
Inherits datarow

Public Sub Test2()
Trace.WriteLine("Test2 called")
End Sub

End Class

14 :NAME IS NULL:05/01/09 22:52:20 ID:???
クラス 'datarow' は、それ自体から継承することはできません
'datarow' は 'datarow' から継承されます。

というエラーメッセージは、ソリューションエクスプローラで
新しい項目の追加でクラスを追加して、以下のソースコードを追加すると
出てきたが、やっぱりデータセットはちゃんと作れる。。。
わからんぽ。誰か助けて・・・(泣

Public Class datarow
Inherits datarow

Public Sub Test2()
Trace.WriteLine("Test2 called")
End Sub

End Class

プロジェクトの名前やmdbファイルの名前とかかなぁ。。。

15 :10:05/01/09 23:02:44 ID:???
プロジェクトの名前やmdbファイルの名前とかが原因のエラーなのかなぁ。
たまにあるよね。それが原因でエラーだすことって。。

16 :10:05/01/09 23:07:02 ID:???
プロジェクトの名前やmdbファイルの名前とかが原因のエラーなのかなぁ。
たまにあるよね。それが原因でエラーだすことって。。

17 :10:05/01/09 23:12:52 ID:???
プロジェクトの名前やmdbファイルの名前とかが原因のエラーなのかなぁ。
たまにあるよね。それが原因でエラーだすことって。。

18 :NAME IS NULL:05/01/09 23:26:44 ID:???
なんかネットがつながらなくなったから(うちの回線しょぼいから)
再度書き込んだらいっぱい投稿してることになって
しまっていた。。。汗
スマソ

19 :NAME IS NULL:05/01/09 23:30:30 ID:???
なんかネットがつながらなくなったから(うちの回線しょぼいから)
再度書き込んだらいっぱい投稿してることになって
しまっていた。。。汗
スマソ

20 :NAME IS NULL:05/01/10 01:00:31 ID:???
ちょっと餅突け

21 :NAME IS NULL:05/01/10 11:45:59 ID:???
>>7
テーブル名にdataを使ってませんか?
メニュー「プロジェクト」「すべてのファイルを表示」でDataSet1.xsdの下に
DataSet1.vb(.cs) が表示されます。これはスキーマ定義から自動生成されたコードなのです。
その中で(System.Data.)DataRowを継承してテーブル名+Rowという名前でサブクラスを
作ってる箇所があるはずです。テーブル名がdataだとdataRowになりますが
名前空間の使い方が悪くて(System.Data.)DataRowとdataRowがぶつかって
エラーになってしまいます。
C#だと大小文字を区別するのでdataだとOKですねDataだとエラーになると思います。
VS2005のBetaで試すとキチンとSystem.Data.DataRowと完全修飾名から継承してくれ
ますから名前空間がぶつかることはありません。

22 :7:05/01/10 13:29:34 ID:eQhm3LsI
昨日全然つながりませんでした。
レス返せなくてすいません。

10さんほんとにありがとうございました。

>>21
思いっきりテーブル名は「data」でしたので、
変更したら正常に作成されました。ありがとうございました。

みなさんほんとにお騒がせして申し訳ありませんでした。

23 :NAME IS NULL:05/01/11 00:18:37 ID:???
Accessでテーブルを作る際、フィールド名を数字で始まるものに
作ることはできるが、そのテーブルにVBAでADOのrecordsetで
アクセスしようとするとエラーになるんだよなぁ。

名前の付け方が原因の動作不具合って多いよね。。。汗

24 :NAME IS NULL:05/01/11 23:42:14 ID:???
ADO.NETで更新可能なResultsetとかDynasetとかというのをなくしたのは英断だと思うけどな。
更新系はupdate/insert/deleteでやるのが基本だと思ってるので、
DataSetだやDataAdapterを使わなければあんまり変わらん感じですよ。
ResultsetとかDynasetとか、中で何やってるかわからなかったのでなくなってすっきりです。

25 :NAME IS NULL:05/01/13 22:39:35 ID:???
C#でローカルのMSDEにアクセスしています。
使っているテーブルはテキスト、テキスト、イントの3つのフィールドを持つものです。
単純なInsertのストアドを使った場合、またAdapter.Updateを使った場合でも10000行をインサートするのに90秒かかります。
これはまだまだ遅いんでしょうか?
データベースは素人です。

26 :NAME IS NULL:05/01/14 03:04:49 ID:???
>>25
マシンのスペックでだいぶ変わってきますからね。
単純な表に単純な挿入だけならロジックで差が出るとも思えんので
そんなものでしょう、としかいえな。

27 :NAME IS NULL:05/01/14 06:36:43 ID:???
>>26
なんかWEBいろいろみてると、DBの設定とかで(たとえばトランザクション切るとか)いじれなくもなさそうなんです。
けど、片手間だし資料ないしあまり手もかけてられないので・・・
ふつうのパソコンレベルでどのぐらい出るかの大雑把な相場が知りたかったんだけど、規約にあるせいかデータwebにない(´・ω・`)。

28 :NAME IS NULL:05/01/14 07:42:37 ID:???
>>25
90秒が遅いかどうかはあなたがやりたいこと次第で、他人に聞く事じゃないでしょ。いや、マジで。。。

29 :25 ◆hEpdoZ.tHU :05/01/14 08:30:24 ID:???
>>28
10秒なら十分満足ですが、90秒ではもっと早ければいいという感じですが?
素人なので大体の基準を知りたく思い、聞くことがそんなにおかしいんですかね。

30 :NAME IS NULL:05/01/14 13:35:10 ID:???
>>29
聞くことはおかしくないのだがそれは無意味だというのが素人じゃない人たちの回答ですね。
これこういうやり方で書き込んでるが改善できないかって質問には答えられますよ。
MSDEならSystem.Data.SqlClient系をつかおうとか、Adapter使うと挿入後に読み直しのための
わずかなオーバーヘッドがかかるのでsqlCommandを直接使うとか、4000文字(8000byte)以下な
らtextよりvarcharを使おうとか、復旧モデルを変えても速度的な効果はあまりないとかなどなど。
insertの最速を目指すならbcpなのだが運用ツールだからね。普通のアプリじゃ使わない。

31 :NAME IS NULL:05/01/14 16:57:59 ID:???
>>30
でも大体このぐらいのマシンスペックならこのぐらいは行くはずだぐらいの感覚は持ってるんじゃね?

32 :NAME IS NULL:05/01/25 21:27:46 ID:???
デザイナでアダプターやらデータセットやらを配置していくのは、
旧VBプログラマーもすぐにアプリ構築できるようにするためなのかなぁ。
なんか、言語をクラス化させる方向と逆向きのように思うのだが。。

33 :NAME IS NULL:05/02/06 19:21:39 ID:+/ua3Vc0
ADO.NET ってトランザクションを発行した後に、SELECT文を使用することが出来ないんですか?

現在は別セッションを1つ作って対応していますが、リソースが無駄になるからやりたくない。

ADOの頃は出来たのですが・・・・
誰か良いやり方を知りませんか?


VB.NET2003
SQLServer2000


34 :NAME IS NULL:05/02/11 00:59:59 ID:???
>>33
何をしたいのかがちょっとよくわからないですが、
DataSetの中にSELECT文が保持されてるようなものだから、
それをFILLするだけで良いんじゃないでしょうか。

35 :NAME IS NULL:05/03/01 22:12:55 ID:???
age

36 :NAME IS NULL:05/03/02 11:33:02 ID:???
監督お願いです。


D V D で は、 T V で 端 折 っ た 話 を 追 加 & 補 正 し て く だ さ い 。

37 :NAME IS NULL:05/03/08 21:49:18 ID:WrTc1v3o
SharpDevelop で ADO.NET つかえる?


12 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)