ADO.NETの質問・雑談スレat DB
ADO.NETの質問・雑談スレ - 暇つぶし2ch809:806
07/10/23 11:04:56
>>807-808
トンクス。
普段開発がJavaなので、.NETの開発方法が
どんなのか知りたかったのです。

直にクエリー操作しても扱うデータが大した
量じゃなければ良いのですが、表示画面が
結構あるのでなんかないかなぁ…、と。

助かります。


810:NAME IS NULL
07/10/23 11:40:15
操作元と同名のテーブル名を持つ別のMDBファイルをINや[]で直接指定している場合
参照するテーブル名にどうやって別名を与えればいいんでしょうか?
SQLはこんな感じです、テーブル名が違う場合はこれで動きました

Delete tbl1.* From tbl1 Inner join [path].tbl2 ON (tbl1.fld1 = tbl2.fld1)

811:NAME IS NULL
07/10/23 21:03:30
>>810
普通にそれぞれのRDBMSの流儀に則って別名つければOKだと思うけど


812:810
07/10/24 15:35:44
操作先も参照元もMDBでJet4.0を使ってます
上記のSQLの記述を生かしつつ別名を与える方法が解らないんです・・・・・

813:NAME IS NULL
07/10/26 12:30:22 VGzUxJqZ
FROMのところのテーブル名の後に TABLE1 AS HOGEHOGE
でいいんじゃないの?

ほかのところのアクセスは TABLE1 →HOGEHOGEで

814:NAME IS NULL
07/11/11 21:47:56 Q6d7lQe/
age

815:CfdByoOEFilAoPHp
07/11/12 09:36:08
hXl4kC <a href="URLリンク(ouiatnqdlpvi.com) [url=URLリンク(nkweprbjkgpw.com) [link=URLリンク(hpmvnukmnlco.com) URLリンク(ymqfdkfqbklx.com)

816:NAME IS NULL
07/11/12 10:48:16
何のリンクか恐くて見られない。

817:NAME IS NULL
07/11/12 13:22:57
みんなトランザクションするときは手動で BEGIN COMMIT 送ってる?
それとも Transaction クラス使ってる?

どーでもいいことなんだけど、仮に Transaction クラス使うとすれば
どういうメリットがあるのかちと気になったもんで

818:NAME IS NULL
07/11/12 22:41:46 v5cjQ56U
>>817
Transactionに関しては、>>554-556あたりで話題に出てるよ。
スタンドアロンだったり、DBを複数に分けていない場合は、
Transactionクラスを使う必要性は無いと思うよ。

819:NAME IS NULL
07/11/13 13:19:40
>>818
参考になりやした。ありがとね
俺もだめだな過去ログ&MSDNくらいちゃんと見ないと

820:NAME IS NULL
07/11/14 02:35:40 ILbp4//g
>>819
でも実際迷うだろ

俺は迷って1日調べるのに費やしたことがある

821:NAME IS NULL
07/11/15 14:15:16
>>820
迷うなぁやっぱ、、俺自身が DB 経験&.NET 経験薄いのもあって余計。
.NET に依存した書き方のほうが保守はわかりやすいかもしれんけどなぁ

っつーことでしばらくは簡単な処理に関しては、汎用の Transaction 用クラス作って
どっちでもできるようにラッピングして様子見することにしましたわ

ありがとね

822:NAME IS NULL
07/11/15 19:22:34 703KYpiO
ADO.NET OLEDB にて C# を利用して Excel ファイルの編集を考えています。

そこで発生した例外なのですが、

"INSERT INTO [sheet$](WordName, Param) VALUES('データ', -1)"

という SQL 文に対して、

「INSERT INTO ステートメントに認識できないフィールド <フィールド名> があります。
正しい名前を入力したかを確認して、もう一度操作してください」

と言われました。

Excel のシートは存在します。
また、 HDR = NO にて一行目には WordName と Param という列名も存在します。

他に考えられる原因はありますでしょうか?

よろしくお願いします。

823:NAME IS NULL
07/11/15 19:36:03 703KYpiO
すいません、 HDR=YES です。

824:NAME IS NULL
07/11/15 19:40:02 703KYpiO
すみません、自己解決しました。

825:NAME IS NULL
07/11/15 21:16:19
ここまで詳しく書いたのならば、その自己解決の内容を書いたらどうだw

826:NAME IS NULL
07/11/15 22:18:50
HDR = YES のつもりが、コピペ作業の過程で NO に書き換えられていました。
>>823 の書き込みに際してコードを確認していたところ発覚しました。

827:NAME IS NULL
07/11/15 22:59:45
聞きたいことをひとに伝えている間にバグを見つけるのは良くあること。
説明するためにそれまでの視点から一歩離れて流れを追っているうちに、岡目八目
な状況になるからだろうね。

828:NAME IS NULL
07/11/20 20:45:31
OLEDBを利用して、mdbファイルにアクセスしています。
データセットデザイナで以下のsql文を発行しているのですが、パラメータの部分が無視されているようです。

SELECT * FROM test1
ORDER BY ?

という風に、カラム名に?を指定して動的に並び順を変えたかったのですが…

「?」が指定できるのは、パラメータだけで、カラム名を指定することはできないのでしょうか? 
何かいい方法があれば教えていただけると嬉しいです。



829:NAME IS NULL
07/11/20 21:23:31
>>828
ORDER 句で指定するカラム数分、あらかじめクエリーを
作っておくくらいしかないね。

もしくは、動的にSQLを組み立てるか。

830:828
07/11/20 21:31:03
>>829
クエリを一杯作らないといけないから面倒なんですよね・・・

やっぱり動的に組み立ててDataReader作るしかないですか…
VS2008あたりでここらへん対応してくれないかなぁ…



831:NAME IS NULL
07/11/20 22:11:48
>>830
DLINQ、といいたいところだけど、MDB は未対応か・・・

832:NAME IS NULL
07/11/20 22:53:27 Qo77iwJh
C#で下記VB6の処理と同じ事をしたいのですが、
VB6+DAO接続のようにうまくいきません。

(Oracleの社員マスタをmdbにインポートする)

Dim db1 As Database

'DSN接続文字列
Const DSN As String = _
"ODBC;DSN=abc;SRVR=orcl;UID=USER;PWD=Admin;"

'DAOでOracleに接続
Set db1 = Workspaces(0).OpenDatabase("", True, False, DSN)

Dim strSQL As String

’社員マスタのインポート
strSQL = "SELECT * INTO USER_SHAIN " & _
"IN '" & "C:\abc.mdb' from SHAIN"
db1.Execute strSQL

mdbにODBCでOracleにリンクして上記SQLを発行すれば
うまくいきそうなんですが
空のabc.mdbに直接Oracleのデータをインポートするには
C#+ADO.NETではやはり無理なのでしょうか?
VB+DAOでできてC#+ADO.NETではできないのは
何か悔しいです。

833:NAME IS NULL
07/11/29 00:03:52
>>832
もう見てないかも知れないけど
・まずC#は分かってるんだろうな?
・C#わかんないならVB.NETにしましょう。悪いことは言わない。
・C#/VB.NETでもDAOは使えるので将来性を考えないなら
 参照設定でCOMのタブから探してきて使いましょう。
・「うまくいきません」だけだと罵られるのがオチです。
・無知を棚に上げて「やはり無理」とか知ったかぶりするなボケ。
・Oracleは知らんのですが、SQL ServerのDTSみたいなデータ変換サービスは
 ないんでしょうか?
・OdbcDataAdapter を AcceptChangesDuringFill で DataTable に読み込んでから
 別のOdbcDataAdapter で Access に INSERT すればいいと思います。
・「mdbにODBCでOracleにリンクして」ってなところで怪しいなあ・・・

834:NAME IS NULL
07/11/30 10:14:41 iP4Q6gml
どなたか対応策をご存知ではないですか?
環境:
Win2003ServerR2 SP2 英語版 最新パッチインストール済み
Microsoft SQL Enterprise Manager Version8.0

現象:
ADOを使って、以下のコマンドでを使ってDBを新規作成しました。
"CREATE DATABASE MyTestDB
ON PRIMARY (NAME = MyTestDB_DAT ,FILENAME = 'D:\MyTestDB\MyTestDBData.mdf', SIZE = 1MB,FILEGROWTH = 10%,  MAXSIZE = UNLIMITED)
LOG ON (NAME = MyTestDB_LOG, FILENAME = 'D:\MyTestDB\MyTestDBLog.ldf',SIZE = 1MB,  FILEGROWTH = 10%,  MAXSIZE = UNLIMITED )"

次にEnterprise Managerを使って、作成したDBの完全バックアップ→差分バックアップを行いました。
この時点では完全・差分共にバックアップは正しく取れています。
この後ntbackupを使ってD:\以下にあるDBには関係の無いファイルをバックアップすると、
MyTestDBのリストアダイアログを表示したとき作った覚えのないバックアップセットが自動的に作られてしまい、リストアができなくなります。

また、D:\MyTestDB1 D:\MyTestDB2 と複数DBを作って同じことを試すと両方のDBに影響が出ます

もしスレ違い、板違いのようなら誘導お願いします。


835:834
07/12/07 10:47:13
スレ違いのようなので、Microsoft SQL Server 総合スレに移動します

836:bGUyClcynKftAuE
07/12/10 12:27:00
URLリンク(www.eplan.info.pl) So Blonde data
, URLリンク(www.eplan.info.pl) hellgate london
, URLリンク(www.eplan.info.pl) experience 112 download, URLリンク(www.eplan.info.pl) hellgate london
, URLリンク(www.eplan.info.pl) simcity societies
, URLリンク(www.eplan.info.pl) simcity societies
, URLリンク(www.eplan.info.pl) sins of solar empire
, URLリンク(www.eplan.info.pl) MASS EFFECT treiler
, URLリンク(www.eplan.info.pl) MASS EFFECT treiler
, URLリンク(www.eplan.info.pl) So Blonde data
,

837:NAME IS NULL
07/12/15 00:29:35 RcQd2CIu
ADO.NET+Data Provider For Oracle でOracleへの接続ですが
Oracle10gR2とOracle11gには接続可能でしょうか?

当方、Oracle9iでは接続の実績があるのですが上記のバージョンに変更しようと思っています。

838:NAME IS NULL
07/12/16 19:09:50
>>837
こっちにその環境が無いので実証してからの返答は出来ないが、
ニュースには大丈夫だと書いてあるから接続可能だと思うよ。

オラクル、「11g」は開発者にも有用と自負
URLリンク(www.itmedia.co.jp)

> Oracleはまた、あらゆる.NET言語からOracleデータベースへの効率的な
> ネイティブアクセスを実現する、「Oracle Data Provider for .Net」も
> 提供している。同技術は、MicrosoftのADO.NET 2.0に対応している。

839:NAME IS NULL
07/12/16 19:18:10
Microsoft(R) Visual Studio(R) 2008 日本語版の開発を完了、完成版の提供を開始
URLリンク(www.microsoft.com)
> 2 月 1 日よりボリューム ライセンス、2 月 8 日にパッケージ製品を発売
> Visual Studio 2008 Express Edition の Web ダウンロード提供を 12 月 18 日より開始

「Visual Studio 2008」の日本語版をリリース
URLリンク(www.itmedia.co.jp)


また今まで作ったプロジェクトが動かなくなったりするのかなぁ。。。
利便性よりも、安定性を考えたものにして欲しいな。

840:NAME IS NULL
07/12/16 19:57:34
>>839
>>また今まで作ったプロジェクトが動かなくなったりするのかなぁ。。。

2003で作ったのを2005に変換するだけで、わやくちゃになったしなぁ。orz
VB6の関数を残しているくせに、前バージョンとの互換性がなくなるってどんだけー。

841:NAME IS NULL
07/12/20 20:39:12
今の時期は、.NETへ移項中なので安定しないという状況なのかなぁ。
それとも安定をさせる気が無いのかなぁ。
無料配布方に切り替えたから、代わりに頻繁にバージョンアップ方式にしたとか。
ここまでひどい状況だと、だんだんと勉強する気がなくなってくる。

842:NAME IS NULL
07/12/20 20:41:06
おまえら、.NET Framework 3.5 の仕組みを見てから言えよ・・・

843:NAME IS NULL
07/12/20 23:11:52 8r4piS37
>>842
見てきた見てきた!
東の空でオレンジ色に光って不規則に飛んでたよ!

844:NAME IS NULL
07/12/21 17:43:47
プロジェクトを作る際、対象となるフレームワークを選択したり
出来るというものを言っているの?
それ以前に、開発したPC以外において、WindowsUpdateを
最新にするなどして環境を整えていてもアプリが動かない場合が
結構あるといいたいの。
開発をしたのと同じバージョンのVisualStudioを入れてみても
動かなかったしなぁ。

845:NAME IS NULL
08/01/14 01:42:47
今回のバージョンアップでは、ADO.NETは大きな変化はなかったのかな?

846:NAME IS NULL
08/01/14 01:48:20
>>845
- LINQがらみ
- エンティティフレームワーク(未搭載)
- SQL Server 2008 がらみ

847:NAME IS NULL
08/01/15 22:11:15 OwNq3nB/
C#のTableAdapterに関して教えてください。

TableAdapterを使って関連付け(Relation)されている
テーブルのDBの行を削除することって出来ますか?
例えば以下の二つのテーブル(親:Table1 子:Table2)で
Table1のIDの"ID1"の行を削除すれば
Table2のIDの"ID1"の行が自動的に
削除されるみたいな・・・。

ここでなくてC#スレですかね。

[Table1]
ID Name Age
----------------
ID1 Yamada 20
ID2 Hanako 18

[Table2]
ID Height Weight
-------------------
ID1 170 65
ID2 160 50


848:NAME IS NULL
08/01/16 18:27:51
>>847
ここはやや過疎りぎみなので、C#スレでも聞いてみるといいと思う。
解決方法が分かったら報告してくれると、なおよろし

849:NAME IS NULL
08/02/02 19:46:10
最近は、「ADO.NET」でぐぐったりすると、いろいろヒットするようになってきたね。
前は、「"ADO.NET"」としなければ、ADOのページがヒットしたりしてた。

DB接続に関して初めて学ぶ時、使いやすさを徹底したMSの製品を最初に
勉強すると良いかなと思ってやったけど、逆に非常に苦労したな。
これじゃなくて、PerlのDBIやPHPのpg_Connectを先にやればよかった。

850:NAME IS NULL
08/02/02 21:06:14
2.0対応の書籍が出てたんだね。いつの間にって感じだ。

プログラミングMicrosoft ADO.NET2.0
URLリンク(www.amazon.co.jp)

851:NAME IS NULL
08/02/10 10:36:43
TableAdapter使ってる人いる?
ウィザードはどうもあわないんだよね・・・

852:NAME IS NULL
08/02/17 01:18:56
サーバカーソルの搭載しないのかな

853:NAME IS NULL
08/03/01 23:06:44
linq使うから、ado.netはもう使わないって方向になるのかな?
せっかく使いこなせてきたかなって感じにまでなれたのに・・・

854:NAME IS NULL
08/03/09 19:03:52
ほす

855:NAME IS NULL
08/03/21 07:56:33
ほさない

856:NAME IS NULL
08/03/31 01:28:10
ほす

857:NAME IS NULL
08/04/14 11:52:44
.NET って濁点付き半角カナもきっちり一文字で認識してくれるのね

便利だし親切だなぁ、素敵・・・orz

858:NAME IS NULL
08/04/14 13:38:09
>>857
データベースの照合順の問題なのでは?

859:NAME IS NULL
08/04/15 10:08:30
>>858
あ、別にそんな大層な話でもなかったりするw

DataView の RowFilter で半角マッチさせる時に
'カ*' とかで検索かけると ガ にヒットしてくれないのよ

文字として見れば当然だし多くの場合はこっちの方が便利だと思うから
いいんだけど、知らないとはまるなぁと思った。
半角ってどうもバイト単位で考えちまうもんで・・

860:NAME IS NULL
08/04/15 18:54:42
>>859
カがあったら
or ガ とか条件追加してやれば?


861:NAME IS NULL
08/04/16 10:41:16
>>860
だよな、そうした

データベース側の正規表現マッチだと ゙ も一文字認識だったから
ちょっと違和感があっただけなんよ

㌧ね

862:NAME IS NULL
08/04/24 13:37:11
SQL Server2005とADO.NET 2.0についてだけど

2.0から dataset.RemotingFormat =SerializationFormat.Binary
てのが追加されたけど
dataadp.Fill(dataset) みたいな使い方には効果ないの?


863:NAME IS NULL
08/06/01 23:02:55
保守

864:NAME IS NULL
08/06/02 01:26:41
5月はどこいった!?

865:NAME IS NULL
08/06/02 16:15:41 gBCGUa8J
>>851
>>850 にいろんな使い方あるよ

866:NAME IS NULL
08/06/17 08:08:02
>>865
サンクス

867:NAME IS NULL
08/07/03 04:42:55
>>864
いい事いうじゃねえか。
出来るんだな?
今すぐ頼むぞ。

868:NAME IS NULL
08/07/27 23:14:42 BMrKOhf6
保守

869:NAME IS NULL
08/08/07 17:43:11 V/wrdbRm
アドネットのどんなDBも同じようにコントロールできるという機能は、
誰がいつどんな方法で開発したかさっぱりなDBでも
意識せずにコントロールできるのでしょうか?

870:NAME IS NULL
08/08/07 20:14:11
>>869
むり

871:NAME IS NULL
08/08/08 02:40:31
>>869
ADOが対応しているRDBならどんなものでも意識せずに使える

872:NAME IS NULL
08/08/14 11:24:06 eNZ1xwTt
日付の追加を含むINSERT文作ってExecuteNonQueryしたら、「抽出条件でデータ型が一致しません。」と怒られる。

INSERT INTO EMP (MYDATE) VALUE (#2008/08/14#)

ってな感じなんだけど何か間違ってる?
ちなみに相手はMDB(Microsoft.JET.OLEDB.4.0)です。

873:NAME IS NULL
08/08/14 11:38:03
>>872
たぶん日付の指定が間違ってると思う。

DBはSQL Server?
SQL ServerならDBのヘルプのデータ型のところに
Datetime型の指定方法が詳しく載ってる。
時刻まで含めるとかなりのパターンがある。

あとそのシステムはasp(.net)ということはないよね?

874:NAME IS NULL
08/08/14 11:40:49
>>872
実際のコードでブレークかけて、そのSQL文が本当に生成されているか確認した?
変数をMYDATEやVALUEに入れてあるってだけじゃダメで、全文をトレースして
みよう。

875:NAME IS NULL
08/08/14 11:43:45
>>872
日付リテラルを#MM/DD/YYYY#にしてみるのも手だぞ。


>>873
相手はMDBって書いてあるだろwww



876:NAME IS NULL
08/08/14 12:15:36 eNZ1xwTt
みんな有難う。
事故解決しましたよ。


何気に、2008/08/14 12:00:00#としてみたら、今度はエラーが

「クリ式'2008/08/14 12:00:00#'の構文エラー :演算子がありません。」


2008/08/14#とすると、

「クリ式'2008/08/14#'の日付の構文エラーです。」

#2008/08/14#としたときと明らかにエラー内容が違う。
これはおかしいといろいろ調べたら、VALUE句の中でSELECTして持って
きている数値にNULLが含まれてました。

納得。

そのテーブルは俺が作ってる訳じゃないので、犯人に直させますw



877:NAME IS NULL
08/08/14 14:47:23
>>876
吊ってこいwww


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch