ADO DAO など接続方法について
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
03/07/24 15:23ID:CSftoEyv0002名無しさん@お腹いっぱい。
03/07/24 16:29ID:???ADO使ってまつ。
0003名無しさん@お腹いっぱい。
03/07/25 00:58ID:???いまだにDAO使ってまつ。
0004名無しさん@お腹いっぱい。
03/07/25 01:41ID:5JcyhWeh挙動不審。
0005bd
03/07/25 12:43ID:LAVHBhck昔、RDO使いました。
0006名無しさん@お腹いっぱい。
03/07/26 01:02ID:???0007名無しさん@お腹いっぱい。
03/07/26 21:31ID:elfzkiv/0008あぼーん
NGNG0009名無しさん@お腹いっぱい。
03/07/27 17:55ID:NiRE5fLb0010名無しさん@お腹いっぱい。
03/07/27 21:49ID:0H3QzBoa0011名無しさん@お腹いっぱい。
03/07/28 00:08ID:???0012ぼるじょあ ◆ySd1dMH5Gk
03/08/02 04:57ID:???ピュ.ー ( ・3・) ( ^^ ) <これからも僕たちを応援して下さいね(^^)。
=〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
= ◎――――――◎ 山崎渉&ぼるじょあ
0014山崎 渉
03/08/15 23:05ID:???│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
0015名無しさん@お腹いっぱい。
03/08/16 21:57ID:T73IrABOADO.NETはベータ版といっても過言ではない(w
0016
03/09/02 18:22ID:QN2j0ONe次の3つがあるらしいんですが、どれを選べばいいんでしょうか?
Driver do Microsoft Access (*.MDB)
Microsoft Access Driver (*.MDB)
Microsoft Access-Treiber Driver (*.MDB)
0017名無しさん@お腹いっぱい。
03/09/02 18:48ID:am2gqDXuお得意の騎上位での腰振りは必見です!!今すぐサンプルムービーで確認だ!
http://66.40.59.77/index.html
0018名無しさん@お腹いっぱい。
03/09/03 12:05ID:N3LmD+LoMicrosoft Access Driver (*.MDB) かな
これしか使ったことないや
0019名無しさん@お腹いっぱい。
03/09/03 12:07ID:N3LmD+Lo参照設定を使います?
それともCreateObjectしてます?
それぞれのメリット、デメリットを教えてください。
0020名無しさん@お腹いっぱい。
03/09/03 14:54ID:???アーリーバインディング、レイトバインディングについてぐぐれば自ずと答えは見つかるであろう。
もしくは、マ板VBスレかな。
0021名無しさん@お腹いっぱい。
03/09/03 19:12ID:N3LmD+Loさんきゅ
その辺はなんとなくはわかっている。
確かにここで聞く内容ではないかもしれないが...
参照設定でADO2.7を指定したとして
コンパイルしたものを動かす時にADO2.8が入っていたら
使われるのはどっち?
あと、この場合にCreateObjectなら最新の2.8が使われる?
0022あぼーん
NGNG0023名無しさん@お腹いっぱい。
03/09/28 08:43ID:???実行環境に3.6しか無かった場合、FormatとかLeft関数で固まるというのが定番だったが。
んで、結局CreateObjectに書き換えるハメになり、参照設定の存在意義に激しく疑問を持ったりする。
ADOも同じでは?
0024
03/10/02 22:56ID:eBGDKX8Dたとえばタイトルバーの変更って出来る?
ACCESS総合相談所 その9
http://pc2.2ch.net/test/read.cgi/bsoft/1061828549/324-326
0025
03/10/03 12:49ID:nrvZVvZSAccess 2000 では DAO の Recordset ですが、
Access 2003 では ADO の Recordset に変わっているのでしょうか?
0026
03/10/03 12:54ID:nrvZVvZShttp://support.microsoft.com/default.aspx?kbid=281998
Access 2000 ADO Traps Watch out for these ADO inconsistencies.
By Ken Getz, Technical Editor
http://vbadvisor.com/Articles.nsf/dp/8B65AB3EFB722D70882568A7001BEDE3
0027MDB ファイルにおいては
03/10/03 13:23ID:nrvZVvZS突っ込むことが出来る。ただし、ADO.Recordset を突っ込んだ場合は、その
インスタンスが MSDataShape / SQL Server OLEDB プロバイダで開かれている場合しか
データの更新を行うことが出来ない。
2) Access 2002 以降では、他の OLEDB プロバイダで開かれている ADODB.Recordset
のインスタンスをフォームの Recordset プロパティに代入した場合であっても、
データの更新を行うことが出来る。 ただしその Recordset インスタンスが
unique はインデックスを含んでいなければならない。もちろん主キーでもいい。
ということらしい。
0028MSDataShape
03/10/06 19:27ID:EXS7RuSjデータシェイプというのはいったいどういう機能なのでしょうか?
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/jpado260/htm/mdmscrequiredprovidersfordatashaping.asp
そもそも OLE DB 技術におけるサービスプロバイダとデータプロバイダの区別がよくわかっていません。
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/jpado260/htm/mdrefmsdatashape.asp
データプロバイダ
直接、またはサービス プロバイダを介して ADO アプリケーションにデータを公開するソフトウェア。
サービスプロバイダ
データの作成や利用によってサービスをカプセル化し、
ADO アプリケーションの機能を拡張するソフトウェア。
プロバイダは、データを直接公開する代わりにクエリ処理などのサービスを提供します。
サービス プロバイダは、データ プロバイダによって提供されたデータを処理します。
0029MSDataShape
03/10/06 19:32ID:EXS7RuSjProvider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=pubs;Data Source=bsas
http://www.int21.co.jp/pcdn/vb/noriolib/vbmag/9910/db_solu/
によると、サービスプロバイダとして MSDataShape を利用したときの接続文字列は次のようになります。
データプロバイダが SQL Server の場合
Provider=MSDataShape.1;Persist Security Info=True;Locale Identifier=1033;Data Source=bsas;User ID=sa;Password="""";Initial Catalog=order;Data Provider=SQLOLEDB.1
データプロバイダが Jet データベースエンジンの場合
Provider=MSDataShape.1;Persist Security Info=False;Data Source=order;Data Provider=MSDASQL
MSDataShape を使うときには別途 Data Provier を指定しなければなりませんが、
これはどのようなプロバイダでも指定できるのでしょうか?
0030名無しさん@お腹いっぱい。
03/10/09 12:31ID:???グリッドコントロール等で階層表示させるときに使う
0031NAME IS NULL
03/10/18 11:52ID:???rs.Fields(xxx).Value と書くより rs.Collect(xxx) と書く
方が速いらしい。
http://www.microsoft.com/japan/msdn/data/techmat/mdac/impperf.asp
の2.5
0032NAME IS NULL
03/10/24 08:15ID:ESRhBeXa> 1) フォームの Recordset プロパティには ADODB.Recordset も DAO.Recordset も
> 突っ込むことが出来る。ただし、ADO.Recordset を突っ込んだ場合は、その
> インスタンスが MSDataShape / SQL Server OLEDB プロバイダで開かれている場合しか
> データの更新を行うことが出来ない。
Access 2000 で ADODB.Recordset のインスタンス x を
フォームの Recordset プロパティに代入するには、
x が adOpenStatic で開かれている必要があります。
0033NAME IS NULL
03/10/24 08:15ID:ESRhBeXa更新は不可となります。
0034NAME IS NULL
03/10/29 00:50ID:???0035NAME IS NULL
03/10/31 11:38ID:s8J5VFuXつーか、UDL ファイル = ADO の接続文字列 と思っていいんでしょうか?
0036NAME IS NULL
03/10/31 11:45ID:s8J5VFuXhttp://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vsintro7/html/vxtskCreatingConfiguringUniversalDataLinkFiles.asp?frame=true
汎用データ リンク (.udl) ファイルを使用するためのデータ コントロールの設定
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vsintro7/html/vxtskConfiguringDataControlstoUseUniversalDataLinkFiles.asp?frame=true
あちゃ、ここに書いてありました。そのまんま。
.NET Framework 開発者ガイド
ADO.NET での OLE DB データ ソースへの接続
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpguide/html/cpconconnectingtooledbdatasourceusingadonet.asp?frame=true
ADOからEXCELを検索する方法
http://www.fitweb.or.jp/~imai/developer/02021001.html
ここも参考になるかもしれない。
http://tuka.s12.xrea.com/index.xcg?page=UDL
0037NAME IS NULL
03/10/31 13:54ID:s8J5VFuX[HKEY_CLASSES_ROOT\.UDL]
@="MSDASC"
だって… MSDASC ってなんじゃい…
0038NAME IS NULL
03/10/31 14:22ID:s8J5VFuX[HKEY_CLASSES_ROOT\MSDASC]
@="Microsoft Data Link"
[HKEY_CLASSES_ROOT\MSDASC\CLSID]
@="{CCB4EC60-B9DC-11D1-AC80-00A0C9034873}"
[HKEY_CLASSES_ROOT\MSDASC\DefaultIcon]
@="C:\\Program Files\\Common Files\\System\\Ole DB\\oledb32.dll,0"
[HKEY_CLASSES_ROOT\MSDASC\shell]
[HKEY_CLASSES_ROOT\MSDASC\shell\open]
[HKEY_CLASSES_ROOT\MSDASC\shell\open\command]
@="Rundll32.exe C:\\PROGRA~1\\COMMON~1\\System\\OLEDB~1\\oledb32.dll,OpenDSLFile %1"
[HKEY_CLASSES_ROOT\MSDASC\shellex]
[HKEY_CLASSES_ROOT\MSDASC\shellex\ContextMenuHandlers]
[HKEY_CLASSES_ROOT\MSDASC\shellex\ContextMenuHandlers\{2206CDB2-19C1-11D1-89E0-00C04FD7A829}]
[HKEY_CLASSES_ROOT\MSDASC\shellex\PropertySheetHandlers]
[HKEY_CLASSES_ROOT\MSDASC\shellex\PropertySheetHandlers\{2206CDB2-19C1-11D1-89E0-00C04FD7A829}]
0039NAME IS NULL
03/10/31 14:56ID:???0040NAME IS NULL
03/10/31 16:42ID:s8J5VFuX0041NAME IS NULL
03/12/04 23:22ID:cBX51diu入れなくても使えるならどのDLLを取り込めばいいかきぼんぬ。
0042NAME IS NULL
03/12/04 23:33ID:???MDACってヤツをMSDNオンライソで探せ
0043NAME IS NULL
03/12/06 00:59ID:6RBHB1qJOSにもよるが、2000/XPには標準で入ってる。
C:\Program Files\Common Files\System
0044NAME IS NULL
03/12/11 23:28ID:???0045NAME IS NULL
03/12/12 06:06ID:???ADO.NETによるデータベースの操作を今即席で覚えたところです。
取り合えず使えそう。
0046NAME IS NULL
03/12/14 17:36ID:YVbPl7cUADOを使った方が良い場合もあるの?
0047NAME IS NULL
03/12/14 21:17ID:???0048NAME IS NULL
03/12/16 07:23ID:XzkZ95Zy0049NAME IS NULL
03/12/20 23:55ID:8atjTsXZ0050NAME IS NULL
03/12/21 15:55ID:GuMnheLc0051NAME IS NULL
04/01/01 11:00ID:???0052NAME IS NULL
04/01/03 00:41ID:???感想は普通です。
0053NAME IS NULL
04/01/11 18:03ID:79wcrGCrXMLを使ってみたいときなら、これだね。
0054NAME IS NULL
04/02/19 10:54ID:???0055NAME IS NULL
04/02/20 09:37ID:seawwUcC0056NAME IS NULL
04/02/20 21:54ID:C8z4sXKxODBC>ADO>RDO>>>>>>>>ADO.NET
ODBC API をCで直接叩くと速いぞ。
0057NAME IS NULL
04/02/21 10:29ID:???0058NAME IS NULL
04/02/22 16:32ID:0VBKEbgkADO.NET>ODBC>ADO>RDO>>>>>>>>ADO.NET(ODBC)
ODBCならADO.NETはのろい。専用のデータプロバイダ使うと速いぞ。
0059NAME IS NULL
04/02/23 09:54ID:1zYluZIV2.8は使われない。ADOは
バージョンが違うと別製品。
エラーがでるよ。
0060NAME IS NULL
04/03/03 16:43ID:ObEOis4x0061NAME IS NULL
04/03/03 19:28ID:???0062NAME IS NULL
04/03/03 19:29ID:???0063NAME IS NULL
04/03/04 08:37ID:jFfTGRKb2.6までしか入ってない環境で
2.7を指定したプログラム動かしてもエラー出ないよ
0064NAME IS NULL
04/03/04 09:22ID:H6fUd10V他の主なやつ == MySQL, SQLite, PostgreSQL, Firebird など == が探せばある。
ODBC から使うより、SQLite なんて50倍以上(当社比)やたら速くなった。
0065NAME IS NULL
04/03/04 18:47ID:EIsw2cXwスマンカッタ。
ADOのコンポーネント
(Connection等)は
VersionIndependentProgIDが指定されてるな。
バージョン依存はないね。
(ただし、バージョン特有のメソッドを使うとアウト)
はバージョンが違うとアウトなのはDAOだな
(たしか、コンパチブルバージョンあったが...)
006665
04/03/04 18:58ID:EIsw2cXwヤパーリ、エラーが出ると思うんだが...
VBならVersionIndependentProgIDで指定されている
名前(ADODB.Connection)で
CreateObjectで生成すれば、バージョン依存はないと思う。
>>63の環境は2.7で指定してても
そうやってConnectionを生成してない?
Dim con as ADODB.Connection ←エラー
↓例え違うバージョンをしてもエラーにはならない
Dim con as Object
Set con = CreateObject("ADODB.Connection")
オレの認識違ってたかな?
006765
04/03/04 19:00ID:EIsw2cXw↓例え違うバージョンを指定しても、オブジェクトを使わなければ
エラーにはならない。
006865
04/03/04 19:26ID:EIsw2cXw生成するなら
Dim con as New ADODB.Connection
だな。
つかCreateObjectで生成するなら
参照設定自体もいらないな。
006963
04/03/04 19:31ID:jFfTGRKb<VB>
参照設定で
Microsoft ActiveX Data Object 2.7 Library にチェック
Connectionは次のように宣言してる
Dim l_conObj As New adodb.Connection
<実行環境>
MDAC2.6
普通に動いてます。
今までバージョンの違いでエラーになった事はないです。
0070NAME IS NULL
04/03/04 20:46ID:???実行環境にOfficeがインスコされてない?
Officeでもインスコされるし...
実行環境で(VBの開発環境や、
OfficeのVBエディタの参照設定で)
2.7がインスコされていないと確実に確認しているのなら、
オレの認識が違っていたよ。
そういえば以前、確かに2.5で参照設定したプログラムを、
2.1しか入っていない実行環境で動かしたとき、
エラーが出た記憶があったけど、2.7からは違うのか。
記憶違いだったかなあ。
0071NAME IS NULL
04/03/04 21:12ID:???ADO2.7で参照設定させたプログラムを
ADO2.6ではないけど、ADO2.5まで
しか実装されていない実行環境で動かしたら
「ライブラリが見つかりません。」
と出たよ。
0072NAME IS NULL
04/03/04 21:33ID:jFfTGRKbMicrosoft の出してる MDACのバージョンをチェックできるツール(Component Checker 2.0)で
チェックしても 2.6SP1でした。
何か見落としてるのかなぁ...
0073NAME IS NULL
04/03/09 18:42ID:???Officeのインストールや他の製品、アプリの
インストールにより単体でADOがインストール
される場合もある。
MDACのバージョンチェックするより、
>>70で書いてあるような方法や実際の
ライブラリファイルの存在をチェックした方
が確実。
さらに、ADOを使わせるアプリを配布するなら
同バージョンのMDACと一緒に配布するような
運用にした方がいい。
COMは便利だがその辺りの管理が大変
なんだよな...
0074NAME IS NULL
04/03/14 01:04ID:???0075NAME IS NULL
04/03/21 21:16ID:???0076NAME IS NULL
04/05/05 23:14ID:RyOBSdl+0077NAME IS NULL
04/05/06 20:30ID:S2jaAwgl0078NAME IS NULL
04/05/07 12:01ID:FHJB9r9E直接、またはサービス プロバイダを介して ADO アプリケーションにデータを公開するソフトウェア。
0079NAME IS NULL
04/05/10 16:55ID:p8dwGke5いままでAccess使ってたけど、Accessはまだ何とか思う様に使えてた
VB.NET+ADO.NETは今までの感覚で使おうとするとイメージがわかない
もっと実務的な説明をした本とかサイトとかない?
そもそもADO.NETってどれくらい使われてるの?
0080NAME IS NULL
04/05/12 13:13ID:ynkBniEJデータベースがごっちゃになってる方が気持ち悪いよ。
早いとこ、プログラム言語+DBMSという当たり前の
構文に慣れてくださいね。
0081NAME IS NULL
04/05/30 20:25ID:bMXmpqACおまいOODBはどうすんだ?
0082NAME IS NULL
04/05/30 23:14ID:???mdbファイルを扱うときに便利に使っていた Index を用いた Seek が出来ません。
Supportメソッドでチェックしても、Index/SeekともにFalseです。
そういうモノなんでしょうか? MSのサイトを探しても明確な説明を見つける事が出来ませんでした。
Googleも彷徨いましたが同じ結果でした。
サポートの不可情報を示したポインタをご存じでしたら教えて下さいです。
0083NAME IS NULL
04/06/13 09:47ID:???0084NAME IS NULL
04/06/13 12:37ID:rgRT/Ze1ADO 2.7 はwindows98では動かせないの?
今はXPは2.7 win98は 2.0を使って別々にBuildしている。
XPでADO2.0を参照してbuildしても動作しないし、よくわからん。
0085NAME IS NULL
04/06/14 21:54ID:???つ[ Dim x as Object: Set x = createObject("ADODB.foobar") ]
0086NAME IS NULL
04/06/16 16:15ID:OZVwZZ/3WIN98でも動くようになりましたよ。
>85
CreateObjectだと
Command、Recordset、Connectionに全部グローバルにしてクリエートしないと
いけないでしょ。おまけに参照をしないと、CursorPositionなんかの
パラメータが、UNKNOWNになるし、、、結局参照をしないといけんでしょ。
CreateObjectでやるメリットがわからん。
0087NAME IS NULL
04/06/16 16:35ID:???008885
04/06/16 22:33ID:???> CreateObjectだとCommand、Recordset、Connectionに全部グローバルにしてクリエートしないと
そうかな?自分はとりあえず使う関数内で個別に持たせたりしてるけど、まずいかな。
CreateObject だと、自動的に現地にあるものをバインドしてくれるから参照設定とかしなくて
いいので楽チンでええのね。
まあバージョン違いで動かないこともあるかもしれないけど、それはアーリバインディングでも
同じだし(バージョン相違を検知できると言えばメリットだけど…)
自分は VBScript か Access2000 VBA 使ってるから、前者はレイトバインディングのみ、
後者は ADOX とかをアーリバインディングで使うと参照設定してない環境でエラー吐くから
(はじめてでた時は「なんで date 関数しか使ってないところでエラーが…」とちと焦った)、
はじめから参照されてる ADO とかだけアーリバインディングで、ADOX や EXCEL とかは
開発中は参照設定しておいて、あらかたできるといちいち Dim objHoge as obj(ry とかしてみたり。
>87
こんなページ見つけた。難しいことは分からないけど、EBならデバッグが簡単で実行が速い、
LBなら多少バージョンとかが違っても適当にバインドしてくれるけど実行が遅いと言うことなのかな。
ttp://edocs.beasys.co.jp/e-docs/wls/docs81/jcom/overview.html#1107478
0089NAME IS NULL
04/06/17 00:02ID:???メッセージを出すのが楽だしな。Loopの中で毎回Createobject
でもしない限り、早さも大して変わらんよ。
っていうかみんなADO派なの?
おいらは今までDAO派だ。環境絡みのトラブルが少ないのと、
以前は大量の更新処理で明らかにレスポンスが良かったから。
(最近は違うのかな?)
009085
04/06/17 22:30ID:???自分は DAO は Access(Jet) 特化で ADO は汎用と聞いたので、
「なら ADO のほうが使いまわしができて得そうだ」と ADO に転んだのでした。
実際に使ってみるとたいていの操作は ADO でできるし、DAO がいると
思ってたメタデータの操作も ADOX でできる、ということで DAO は
あまり良く知らなかったり。
どうでもいいけど ADODB.Command のパラメタクエリを使うと手軽に
SQL Injection 攻撃を回避できると聞いたのだけど、これって更新可能な
RecordSet を取得したいときはどうするんだろう?
0091NAME IS NULL
04/06/18 11:16ID:???日付/時間型がどうしてもエラーになる。
JetだとDAOのほうが無難なのかな?
0092NAME IS NULL
04/06/18 13:12ID:???0093NAME IS NULL
04/06/18 15:55ID:???囲っても駄目。
項目名がSQLの予約語と同じ場合もこけます。
DAOに比べて制約が多いような感じ。
009492
04/06/18 23:14ID:???プロバイダは Microsoft.Jet.OLEDB.4.0 で、HTA(VBScript) から
CreateObject("ADODB.Connection") で ADODB.Connection の生成を行い、
Connection.Execute で実行。
---
CREATE TABLE hoge(
foo datetime,
[long] datetime
);
insert into hoge(foo, [long]) values(#2004/06/12#, #2003/12/12#);
select * from hoge;
---
009579
04/07/01 12:20ID:???自分のプログラミングスタイルみたいなものもできてきた。
しかしやっぱりADOでやってたときより手続きが多くて面倒に思う。
やってることはADOのときと変わらないのかもしれないが、
データセットへの読み込みと更新のタイミングを意識しないといけなかったり
考えることが多いように思う。
0096NAME IS NULL
04/07/02 10:12ID:dsBwbedd高速にすることはできますか?
テーブルにインデックスを設定しても rs.Supports(adIndex) はFalseになってしまいます。
rs.Index = "hoge" でエラーは出ないのですが速くはなりませんでした。
元々やりたかったのは、VBのDBグリッド上に全データを表示した状態で検索して
見つかったらその行に移動してハイライト表示、ということがやりたいのです。
(Accessのテーブル上で検索するようなイメージです)
0097NAME IS NULL
04/07/03 02:15ID:y02b0D0uオラウータンなどの
サルは自分と似ていない自分の子供を(子殺しする)殺す。
(立花隆『サル学の現在』平凡社より)
http://www.google.co.jp/search?q=cache:YzJwPXsiJZAJ:www.impala.jp/bookclub/html/dinfo/10110005.html+%E3%82%B5%E3%83%AB%E5%AD%A6%E3%81%AE%E7%8F%BE%E5%9C%A8%E3%80%80%E5%AD%90%E6%AE%BA%E3%81%97&hl=ja
0098NAME IS NULL
04/07/14 13:00ID:???俺はループ文が減ってかなりすっきりしたが。
データセットは無視してデータテーブルしか使ってないが。
0099NAME IS NULL
04/07/15 00:53ID:???0100NAME IS NULL
04/07/15 21:55ID:OWyB2Is10101NAME IS NULL
04/07/24 17:50ID:dguKW2A+つかって、PostgreやMySQLなど他社のストアドプロシジャー内のパラメタを
操作することって可能なのでしょうか・・。
例えばDilection,DataType,NumericalScaleなどを指定してAppendする等。。
0102NAME IS NULL
04/08/12 00:37ID:e6gyuWzUつかって、PostgreやMySQLなど他社のストアドプロシジャー内のパラメタを
操作することって可能なのでしょうか・・。
例えばDilection,DataType,NumericalScaleなどを指定してAppendする等。。
0103NAME IS NULL
04/08/24 13:20ID:UZpf6U5whttp://archives.postgresql.org/pgsql-odbc/2002-05/msg00042.php
0104NAME IS NULL
04/09/06 14:40ID:WwQRpaCJData Source=(local)
Integrated Security=SSPI
Initial Catalog=DBName
で接続できているものを
LAN上の別のマシンから接続するにはどこを直せばいいのでしょうか?
0105104
04/09/06 15:43ID:???0106NAME IS NULL
04/09/07 13:21ID:???でも、データベースとの接続を切って、ローカルで何でもできるようになったので、
融通が利くのは助かるよ。
カーソルにも縛られないしね。(場合によってはデメリットにもなるけど。)
0107NAME IS NULL
04/09/25 00:01:05ID:???これって実装はどうなってるの? 楽観的ロック手法を採ってるのか、
それとも平然とロストアップデートが発生するのか。
おれは更新する場合は、やっぱり更新ロックを獲得するほうが好き。
なので、非接続を使うのにはかなり抵抗がある。
0108NAME IS NULL
04/09/27 21:04:23ID:XNBYnVX20109NAME IS NULL
04/09/27 21:09:29ID:XNBYnVX20110NAME IS NULL
04/09/28 07:56:59ID:???0111NAME IS NULL
04/09/29 10:16:42ID:gfkc305QOLE DB データプロバイダってどこにあるんでしょうか?
0112NAME IS NULL
04/09/29 20:58:40ID:???|
∩___∩ | ぷらぷら
| ノ _, ,_ ヽ (( |
/ ● ● | (=)
| ( _●_) ミ _ (⌒) J ))
彡、 |∪| ノ
⊂⌒ヽ / ヽノ ヽ /⌒つ
\ ヽ / ヽ /
\_,,ノ |、_ノ
0113NAME IS NULL
04/10/24 23:33:58ID:ISxKwZ7m質問お願いします。
SQL Server2000をAccess2000のデータベースリンクでリンクを作ってDAOでアクセスしています。
この環境でデータのロックは可能でしょうか?
トランザクションは使えるのですがロックの仕方が分からなくて・・・
現在はフィールドに更新時間を持たせて、楽観的ロックみたいな感じで作っています。
しかし一部の画面で、開いた時に前もってレコードをロックしたいところがあるのです。
DAOでは無理だけどADOでは可能とか、そもそもAccessではそんな作り方はしないとか
何かアドバイスお願いいたします。
0114NAME IS NULL
04/10/24 23:49:21ID:???0115NAME IS NULL
04/10/24 23:57:18ID:???自前の排他テーブル作って管理すればいいんじゃないの?
0116113
04/10/26 21:35:09ID:???レスありがとうございます。
やっぱり無理ですか。
そういうものだと思って違う方法を考えたいと思います。
排他管理テーブルは落ちた時の復帰方法を用意しないといけないので・・・
ありがとうございました。
0117NAME IS NULL
04/10/27 12:49:55ID:???あるプログラムAがテーブルAまたは、テーブルAをレコード単位でのロック
をかけた場合、プログラムBからロックかけにいったらどうなるのでしょうか?
(VB6.0 + ADO + SQLServer2000)
くだらない質問ですが反応お願いします
0118NAME IS NULL
04/10/27 12:57:43ID:???0119NAME IS NULL
04/10/27 13:48:55ID:???>>118
こんな感じで行単位ロックかけてみたんですが
同じロックをプログラムA、次にプログラムBが実行しようとすると
Bはこけるのでしょうか?
0120NAME IS NULL
04/10/27 14:33:14ID:???↑間違い
mr.Open "select * from t from a <100", cn, adOpenDynamic, adLockPessimistic
↑○
でした。すいません。
両方ともリードしたレコードセットをアクセスに書き込み
それが成功すると、リードした内容だけにフラグを立てにいってます
そのフラグの立て方なんですがアクセスの内容とリード元を再度
開きなおしてつき合わせフラグ更新してます。
こんな感じでよいのでしょか?
0121NAME IS NULL
04/10/28 17:16:58ID:???ええ、そうです。
CommandBuilderクラスとかを利用してUPDATE文やDELETE文を自動生成させた場合は、
WHERE文で、全ての列が行を取得した時と全く同じ値か、という条件が指定された更新文が作成されて、それを実行するという仕組み。
基本的には、行が変更されていたら更新文により影響を受けた行は0ですから、それを基に例外が発生と。
それで不十分なら、更新文は自分で作成することになり、更新日付とかの列を作ってチェックすることになるのかな。
ま、楽観的ロックではまずい場合は、SQL Serverなら、SqlTransactionクラスを利用してトランザクションを開始し、
ロック ヒント付きでSELECT文を発行して、ロックを掛けることになりますね。
0122ちょっとかじった程度
04/11/05 12:24:51ID:pLWjdrlp立てたりできますよね?(知ってる人だけでいいです)
このピンを消したり、色を変えたりしたいのですが、何かいい方法しりませんか?
ゼンリンソフトのDBにアクセスして指示を与える感じになると思うのですが、、、
よくわかりません。当方、MSアクセスなら少々わかります。
その辺の説明の載っているサイト紹介でもいいです。
0123NAME IS NULL
04/11/06 17:21:30ID:???ここで聞くべき内容なのか?
0124122
04/11/06 23:53:31ID:sbgXvQudわかりました、よそで聞きます。
0125NAME IS NULL
04/11/08 20:08:59ID:???んで質問なんですがConnectionってcloseしないとまずいですか?
最初は画面更新のたびにopen&closeしてたのですが無駄っぽいので
今は起動時に開いて開きっぱなしにしています。
0126NAME IS NULL
04/11/12 19:28:42ID:???0127NAME IS NULL
04/11/12 20:16:10ID:???乗り換え先はADO.NETです。
0128NAME IS NULL
04/11/14 16:26:47ID:MDAlpVkUADOのトランザクション処理だけ借りて
その内側にDAOでデータにアクセスするというコードを見たことあるけど
それっていいの?
0129NAME IS NULL
04/11/15 11:32:55ID:???DAO にも、BeginTrans/CommitTrans/Rollback メソッドと、トランザクションはあります。
ADO のそれと実装に違いがあるかまでは調べたことないけど。
0130NAME IS NULL
04/11/17 20:51:58ID:/2/q9DVKあったんだ
知らなかった
0131NAME IS NULL
04/11/23 17:26:37ID:???確かめたわけじゃないけどどうなんだろう。
0132NAME IS NULL
04/11/23 17:28:50ID:4wCfCYNpデータを更新するならInsertやUpdateを投げろってことだよね。
DataAdapterやDataSetオブジェクト使って生成したソース見てると
ADOとかのダイナセットやリザルトセットは裏側でこんなことをしてたんだ〜
って妙に感心するよ。
0133NAME IS NULL
04/11/23 17:35:54ID:1rnKV2ymSQL鯖の特性に合わせてルール変更ウマー
とか妄想してまつww
0134NAME IS NULL
04/11/23 23:48:16ID:???トランザクション開始時点で更新をオンメモリで行うそうな。だからトランザクションで囲んだ方が直接更新するよりパフォーマンスが上がる。
0135NAME IS NULL
04/11/23 23:51:51ID:???大規模な更新をする場合、
メモリ不足→仮想メモリへいったん入って更新される→却って遅くなる ってのは無いの?
0136NAME IS NULL
04/12/06 13:18:53ID:???Dim o As Access.AccessObject
Dim o2 As Object
Set ac = CreateObject("c:\a.mdb")
For Each o In ac.CurrentProject.AllReports
Call ac.DoCmd.TransferDatabase(acExport, "Microsoft Access", "C:\c.mdb", acReport, o.Name, o.Name)
Next
For Each o2 In ac.CurrentDb.TableDefs
If o2.Attributes = 0 Then
Call ac.DoCmd.TransferDatabase(acExport, "Microsoft Access", "C:\c.mdb", acTable, o2.Name, o2.Name)
End If
Next
ac.CloseCurrentDatabase
ac.Quit
0137NAME IS NULL
04/12/07 20:11:20ID:???SQL文にVBAで定義した自作関数を使ったクエリを
VB6から開くにはどのようにすればいいのでしょう?
開こうとすると、VBA関数が未定義というエラーが出て
オープンできません。
どなたか、よろしくお願いします。
0138NAME IS NULL
04/12/07 20:21:14ID:FdgLyTNz0139NAME IS NULL
04/12/11 01:13:39ID:???無理。
0140デフォルトの名無しさん
04/12/23 10:22:10ID:???実行マシンにAccessが入っていないならそうするしかない。
0141NAME IS NULL
05/01/14 13:37:47ID:???Driver=SQL Server;
Provider=SQLOLEDB;
の2種類があると思うのですが両者の違い、使い分けはありますか?
0142NAME IS NULL
05/01/14 15:21:05ID:???Provider=OLEDBプロバイダ、Driver=ODBCドライバって感じだったかと。
SQLServer2005Betaをみてたらまたなんか増えてる模様。
.NET Framework Data Provider for SQL Server
0143NAME IS NULL
05/01/14 15:32:03ID:???>Provider=OLEDBプロバイダ、Driver=ODBCドライバって感じだったかと。
ということはDriverで指定するとODBC経由で、OLEDBに比べて遅い接続ってことですかね?
>SQLServer2005Betaをみてたらまたなんか増えてる模様。
ってことはその増えたものはODBC経由でってことで
Driver=SQL Server
Driver=NET Framework Data Provider for SQL Server
の2種類を選択できるわけですか?
0144NAME IS NULL
05/01/14 16:14:05ID:???ADOはOLEDB専用なので本来はProviderのみ指定可能です。
ADOからODBCを使う場合はOLEDB Provider for ODBC(MSDASQL)を指定する必要があります。
この場合MSDASQLに渡すパラメータとして接続文字列の途中にDSN=かDriver=が出てきます。
さらにProviderを省略すると暗黙でOLEDB Provider for ODBCを指定したことになるので、
実質ADOからODBCが直接呼び出せてるように見えます。
NET Framework Data ProviderについてはOLEDBのマネージドコード版らしくADO.NET
(それも.NET2.0以降と思われる)からのみ利用可能のようです。
ADOからSQLServer2005に接続する場合はOLEDBプロバイダのSQL Native Client(SQLNCLI)を
使うかDRIVER=SQL Native Clientと同名のODBCドライバを使う必要があります。
ADO.NET(.NET2.0以降と思われる)からOLEDBやODBCに接続するために次のドライバがあります。
NET Framework Data Provider for OLEDB
NET Framework Data Provider for ODBC
もうわけわかめwせdrftgyふじこlp;
0145NAME IS NULL
05/01/14 17:08:41ID:???勉強になりました
>ADOはOLEDB専用なので本来はProviderのみ指定可能です。
.NETではOLEDBプロバイダのSQL Native Clientを使えってことですね
0146NAME IS NULL
05/01/22 21:06:28ID:???この辺理解できると楽しいんだろうなー
0147NAME IS NULL
05/01/27 00:32:49ID:???主にDataGridで編集してるんですが、CommandBuilderで生成した
SQLを使って、DataAdapter.Updateを使いファイルに書き戻しを
しています。
このとき、「追加だけ」や「削除だけ」だと問題ないんですが、同
時に複数の操作をしてからVBアプリを再起動すると、追加した行が
DataGridに表示されません。DataViewで絞り込んだら出てくるん
ですが、なぜかテーブル全体表示だと見えないんです。
mdbファイルを自体をAccessで開いたら、きちんと書き込まれてま
す。そのままAccessで最適化を実行すると、それ以降はVBアプリ側
でもきちんと見えるようになるんですが、VBでいちいちJRO経由の最
適化をさせないといけないのでしょうか?
プログラムの起動時に力技を使って、JROからmdbファイルの最適化
をやったら、一応動くようにはなりました。でもこんな方法おかしい
と思うんで、私の知らない処理がまだあるのかと。
ttp://support.microsoft.com/default.aspx?scid=kb;ja;306287
ぐぐってもこの手の情報は少なくて苦労してます。 (´・ω・`)
VB.NET初心者スレではなんとなくスルーされてしまいました。
0148NAME IS NULL
05/01/27 01:38:35ID:???0149NAME IS NULL
05/01/29 10:13:27ID:???0150NAME IS NULL
05/02/07 20:48:25ID:51j7oZtE書き換えなければならないのですが、単純にFindFirstを使って書き換えると
データが多い場合死ぬほど遅くて使い物になりません。
OpenRecordsetにSQL文を指定して検索すれば早いけど、その後Move系を
使うので検索でレコードセットが絞られてしまっているとマズーです。
同等のプログラムを新たに書くつもりにならないとダメですかね?
プロジェクトが40個もあり、同名だがちょっとずつ分岐してるファイルが
たくさんあるような、いかにも馬鹿な作りになっているシロモノなので、
できるだけ機械的な書き換えで済ませたかったのですが・・・
0151NAME IS NULL
05/02/10 06:23:50ID:???0152NAME IS NULL
05/02/19 00:50:15ID:???日付範囲の抽出はこんな感じで出来てるんですが
Set cn = New Connection
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" _
& "Data Source = " & Path & "\DATA.mdb;" _
& "Jet OLEDB:Database Password=****;"
cn.Open
SelCmd = "SELECT * FROM TABLE00 " _
& "WHERE 日付 BETWEEN #" & Range("B3").Value & "# " _
& "AND #" & Range("B4").Value & "#"
Set rs = New Recordset
rs.Open SelCmd, cn
Range("D11").CopyFromRecordset rs
DATA.mdbのTABLE00に入ってるデータで
IDの一番大きいデータ(最新のデータ)のrsを取り出す時は
どうすればいいんでしょう
0153NAME IS NULL
05/02/19 00:57:09ID:???SelCmd = "SELECT * FROM TABLE00 " _
& "WHERE 日付 BETWEEN #" & Range("B3").Value & "# " _
& "AND #" & Range("B4").Value & "#" _
& " order by id desc"
0154NAME IS NULL
05/02/19 15:13:21ID:???有難うございます
order by 覚えました
Set rs = New Recordset
rs.Open SelCmd, cn
Sheet99.Range("D11").Value = rs(0)
153の後にこんな風に続ける事で最新の日付やIDを取得
できました、有難うございました
0155NAME IS NULL
2005/07/12(火) 13:15:18ID:qalQqGrp0156NAME IS NULL
2005/07/12(火) 14:42:06ID:???比べるならADOとRDO、OLEDBとODBCだろうな。
ADOを使うときOLEDB Provider for ODBCを呼び出してないか?
0157NAME IS NULL
2005/07/15(金) 21:55:46ID:0n9RIwcP0158NAME IS NULL
2005/07/20(水) 13:37:24ID:???0159NAME IS NULL
2005/10/16(日) 20:04:05ID:???中身からこちらの方なら、と思いましたので。
EXCEL上でADOでパラメータクエリを作成し、複数のアクセスMDBファイルから
クエリでデータを取得するプログラムを作っています。
このときいくつかのMDBには存在しないフィールドに対しても、クエリを実行するのですが、
当然エラーが出ます。
On Error Resume Next
Set rs = New ADODB.Recordset
Set rs = cmd.Execute
としても、次に飛んでくれないで、黄色い表示のデバッグになってしまうのですが・・・・エラーメッセージは以下です。
"実行時エラー'-2147217904 (80040e10)':
1つ以上の必要なパラメータの値が設定されていません。
クエリや他の部分はフィールドが存在するときは正しく動いています。フィールド名を事前に取得して
チェックさせれば良いのでしょうが、このエラーだけresumeが効かないのが理解できません。
ううADO.NET すれでも違うと言われ、こちらに来ました。orz
0160NAME IS NULL
2005/10/17(月) 19:47:41ID:???で飛ばせないエラーの条件って有ったな。具体的には忘れたが
やっぱ確認するのがいいと思うけど
*でとるとか
0161159
2005/10/17(月) 20:34:45ID:???初めてレスがつきました。!!!やはりそういう条件があるのですか。
応急処置でADOXのカタログでフィールドをチェックして、あるものしかSQLをやらないようにしてます。
そのへん(On Error Resume Next )で調べてみます。ありがとうございます。
0162NAME IS NULL
2005/10/27(木) 15:08:16ID:???まじめにこの問題と格闘した人っているかな。
まあ確かにアホかっていう命題ではあると思うんだけど。
で、目的はいわゆるコネクションを両者間で共有すること。
可能であるとかいうあいまいな話を聞いた。
理屈は以下のとおりらしい。
ADOでのOLEDBプロバイダはOracle製のものを使う。
Oracle Provider for OLE DBはOCI実装に依存している。
oo4oも然り。
ゆえにoo4oのクラスを駆使することにより可能になるとのこと。
確かにOraServerとかOraClientとかにその手の匂いが
しないこともないんだけど、なんとも眉唾なんだよね。
散々調べたけどそのような情報は見つからない。。。
誰かこの手の情報って聞いたことありますか?
0163NAME IS NULL
2005/10/27(木) 15:35:55ID:5e3kWZZu0164NAME IS NULL
2005/11/08(火) 16:19:44ID:???0165NAME IS NULL
2005/11/11(金) 00:10:29ID:???http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/jpado260/htm/mdrefodbcprovspec.asp
MDAC2.8では、ODBC Provider (MSDASQL)は、Deprecated Componentsである。
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/mdacsdk/htm/mdac_deprecated_components.asp
具体的には、Accessで同時複数レコードセットオープンをする部分で勝手にカーソルが閉じてしまう現象を確認。
0166助けて!
2005/11/14(月) 02:37:30ID:qOOpCT4QError40002というエラーです。データベース名が定義されていないと
書いてあるのですが、どういうことでしょうか?
困ってます。
そして挫折気味です。
詳しいかた、よろしくお願いします。
0167NAME IS NULL
2005/11/14(月) 06:35:28ID:qxPpoxFN具体的にね。これじゃ答えようがありません。IBM DB2スレ参照
0168NAME IS NULL
2005/11/14(月) 07:18:31ID:???0169ぷーさん
2005/11/28(月) 09:57:26ID:FbPpvjD8はじめて、書き込みさせています。
Win2000-Pro VC6の環境で、参考書を元にして
ADOを使ってmdbに接続するプログラムを作ってみました。
それをWinXP-Pro SP2の環境で動作させようとしたら、
データの書き込みが出来なくってしまいました。
WinXP-Pro SP1では、動作します。
Microsoftのページを見ていたら、SP2では、
「MDACのバージョンが2.8になり、既存のプログラムが動作しない不具合がある・・・・・」
との記述がありました。
自分のMDACのバージョンを調べたところ、2.7SP1でした。
参考書を元に以下の様なコードを頭に書いています。
****<参考書からの抜粋でつかっている部分>*****************
#include <comdef.h>
#define INITGUID
#import "c:\Program Files\common files\system\ado\msado15.dll" \
rename_namespace("AdoNS") rename("EOF","adoEOF")
using namespace AdoNS;
#include "icrsint.h"
*****************************************
ファイルのバージョンは、これを使う!
などありましたら。ご指導願います。
0170NAME IS NULL
2005/11/28(月) 16:37:54ID:???MDBが読取専用になっているとか。
発生しているエラーの内容や、MDBを開いているところ・クエリを発行しているところ等
を書いてないと詳細が分からないと思います。
0171ぷーさん
2005/11/28(月) 19:45:11ID:FbPpvjD8mdbは読取専用にはなっていません。
エラーが発生しているわけでも無く、いきなり落ちてしまいます。
デバック環境を整えているところで、整ったら、どこで落ちているかを確認しようかと思っているところです。
省略して分かりづらいかもしれませんが、
データベースを開くところ、書き込むところは、以下の様になっています。
void オープン関数
{
(省略)
hr = m_pConnection.CreateInstance(__uuidof(Connection));
if(SUCCEEDED(hr))
{
try
{
hr = m_pConnection->Open(_bstr_t(L"Provider = MSDASQL.1;Data Source = SYSDB;"),_bstr_t(L""),_bstr_t(L""),adOpenUnspecified);
if(SUCCEEDED(hr))
{
m_IsConnectionOpen = TRUE;
}
}
catch(_com_error &e)
{
ErrorDisp(e,1);
}
}
void 書き込み関数
{
//データベースオープン関数呼び出し
pRec->PutRefActiveConnection(m_pConnection);
hr3 = pRec->Open(_variant_t(bstrToQuery),vNull,adOpenForwardOnly,adLockOptimistic,adCmdText);
if(SUCCEEDED(hr3))
{
//フィールド名定義
COleSafeArray vaFieldList;
vaFieldList.CreateOneDim(VT_VARIANT,6);
long lArrayIndex[1];
lArrayIndex[0] = 0;
vaFieldList.PutElement(lArrayIndex,&(_variant_t("trtime")));
(省略)
//値リスト配列
COleSafeArray vaValueList;
vaValueList.CreateOneDim(VT_VARIANT,6);
lArrayIndex[0] = 0;
(省略)
pRec->AddNew(vaFieldList,vaValueList);
pRec->Close();
}
}
0172NAME IS NULL
2005/11/28(月) 20:09:47ID:???>エラーが発生しているわけでも無く、いきなり落ちてしまいます。
catchしていないところで例外が発生したってところでしょうかね。
サンプルコードだと書き込み関数が怪しそうです。
>デバック環境を整えているところで、
まずはこれですね。これが難しければ、
- こまめにログをファイルに出す
- 怪しいところをほんのちょっとずつ取り除く→落ちなくなったら最後に取り除いたところが悪い
とか。
サンプルコードについてはなんとも。ODBC経由でつないでいるのが気になりますが。
(JETで直結の方がパフォーマンスが良いですし、余計な問題が起こりにくいかと)。
関係ないですが、VC++でこの形式のAddNewは面倒くさいですね。INSERT文を直接実行するか、
AddNew()->Fieldに値設定→Updateの方が簡単のような気もします。
0173ぷーさん
2005/11/29(火) 09:07:36ID:X9SS2E6Zやはり、いろいろな方法があるんですね。
もっと勉強しなくては、いけないですね。
とりあえず、PC買わないと始まりませんね!
0174NAME IS NULL
2005/12/01(木) 23:39:35ID:???PC1 OfficeXP(2002) ADO参照設定の最新バージョン 2.8
PC2 Office2003 ADO参照設定の最新バージョン 2.5
これを2.8に統一したいけどどうやったらいいんでしょ?
0175NAME IS NULL
2005/12/05(月) 02:48:47ID:???0176NAME IS NULL
2005/12/05(月) 19:20:55ID:???thxです。
0177NAME IS NULL
2005/12/07(水) 23:52:14ID:???反映させずにそのレコードセット内だけで自在に変更、並べ替え
出来る様な方法ってあるでしょうか?
0178NAME IS NULL
2005/12/08(木) 00:01:03ID:???0179NAME IS NULL
2005/12/08(木) 04:01:47ID:???RecordSet#Open sql, connection, adOpenStatic, adLockBatchOptimistic
Set RecordSet#ActiveConnection = Nothing
0180NAME IS NULL
2005/12/08(木) 13:45:14ID:???どもです。
0181NAME IS NULL
2005/12/22(木) 22:27:01ID:???ADO接続でdeleteやupdateした時って結果セットを返しませんよね?
では、その時に何件deleteしたのかって拾う事はできないんでしょうか。
今、特に知りたいのはdeleteしたときの件数なんですけど。
環境
ADOライブラリ バージョン 2.8
WInxXP PRO
Excel2002_VBA+MySQL 4.1.15
strSQL = ""
strSQL = " delete from table where input_date < '" & del_date & "'"
MgDB.Execute strSQL
で、ここでこのdeleteした件数をしりたいなと思ってるんですけど。
0182NAME IS NULL
2005/12/24(土) 09:39:04ID:???発想の転換で、デリートする前に同じWHERE条件でカウントすればいいんでね?
0183181
2005/12/24(土) 18:00:58ID:???0184NAME IS NULL
2005/12/24(土) 19:24:20ID:+e0JmEtYMgDB.Execute sSql, recordCount, adCmdText
MsgBox recordCount & "件処理されました!"
↑こんなの出来なかったっけ?
0185181
2005/12/24(土) 19:55:06ID:???おおおっ〜。出来ました!ばっちり表示されました!
Executeメソッドのパラメータでこう言う事が出来るの、初めて知りました。ありがとですm(__)m。
0186NAME IS NULL
2006/01/31(火) 20:31:15ID:WTvW08xROS:XPPro ADO 2.8 RDB:MySQL
計算式や別名を使って列を導出してきた時、その列のコレクション名
ってどうなるんでしょうか?
例えば、
select tanka,suuryou,tanka * suuryou as kingaku
でこの3列をもってきたい時に、tanka * suuryou
の列をADOで持ってくるにはどうしたら良いのか?って事なんですけど。
0187186
2006/01/31(火) 21:17:53ID:WTvW08xRFor i = 1 To wkRs1.Fields.Count
MsgBox wkRs1.Fields(i - 1).Name
Next
で調べる事ができました。スレ汚しスマソです。
0188NAME IS NULL
2006/01/31(火) 21:51:45ID:???0189NAME IS NULL
2006/01/31(火) 22:18:21ID:???0190NAME IS NULL
2006/02/08(水) 11:10:59ID:6NVxJKpsOLEDBプロバイダ名は Microsoft.Ject.OLEDB.4.0
SOLServerの
OLEDプロバイダ名は SQLOLEDB
MySQLの
OLEDプロバイダ名はなんですか?
0191NAME IS NULL
2006/02/08(水) 19:45:20ID:???データリンクで接続のテストに成功しただけで
それ以上のことはしていないけど、
Micorsoft OLD DB Provider for ODBC Drivers
で接続のテストには成功した。
0192190
2006/02/09(木) 10:03:09ID:UltP/RAlそれでやってみたんですけど、無理でした。
ちなみに現在利用してるのはADOオブジェクトです。
0193NAME IS NULL
2006/02/09(木) 19:06:25ID:???ちなみにODBCの登録はしてる?俺がテストした時に出てきたものは以前に
ODBCデータソースアドミニストレータで登録したものだったんだけど。
0194190
2006/02/10(金) 09:41:06ID:5yjslb7y0195NAME IS NULL
2006/02/10(金) 09:56:32ID:???試しに、別の名前で作ってやってみては
0196190
2006/02/10(金) 10:23:39ID:5yjslb7y0197190
2006/02/10(金) 15:47:37ID:5yjslb7y間違ったMyODBC3.51だった・・・。
0198NAME IS NULL
2006/02/13(月) 18:58:03ID:E7M2TLQb基本日本語で登録するのナシだ。
やめたほうがいい。
0199NAME IS NULL
2006/02/25(土) 17:51:01ID:nYYp/Tznリファレンスのありかを、教えてください。
サンプルは見つかったのにな〜
0200NAME IS NULL
2006/02/27(月) 09:25:22ID:???0201NAME IS NULL
2006/03/09(木) 01:18:38ID:5GyLyggH0202NAME IS NULL
2006/04/10(月) 11:11:27ID:pQlDyqlMAccessに関してはDAOを通じて接続したほうが良いと聞きましたが、ADOと比べると顕著に差が出るものでしょうか?
0203NAME IS NULL
2006/04/21(金) 22:53:05ID:???新規に DAO の知識いらん
って思ってたが今は逆に ADO の方が中途半端かもな
その知識を今後ほかに使うかで決めたらいい
0204NAME IS NULL
2006/05/01(月) 18:48:21ID:KAhBcSSh先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0205NAME IS NULL
2006/05/04(木) 20:05:30ID:KcnoTl2z先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0206NAME IS NULL
2006/05/05(金) 01:14:09ID:IZ0aEEXg先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0207NAME IS NULL
2006/05/05(金) 04:15:57ID:VKIiqqFA以前話に出てたmdbのトランザクションはcommitまで更新を
先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
で1000を目指すスレになりました。どぞ〜
0208NAME IS NULL
2006/05/05(金) 10:15:54ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0209NAME IS NULL
2006/05/05(金) 21:55:20ID:Psn81xYP先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0210NAME IS NULL
2006/05/06(土) 10:23:11ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0211NAME IS NULL
2006/05/06(土) 22:01:05ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0212NAME IS NULL
2006/05/07(日) 13:38:13ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0213NAME IS NULL
2006/05/12(金) 22:16:26ID:uN6drA26先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0214NAME IS NULL
2006/05/13(土) 06:32:04ID:???それでいいよ。
0215NAME IS NULL
2006/05/13(土) 09:31:58ID:vLyhAGGy先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0216NAME IS NULL
2006/05/13(土) 10:12:42ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0217NAME IS NULL
2006/05/13(土) 21:51:08ID:SXEY6q8j先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0218NAME IS NULL
2006/05/15(月) 17:09:47ID:???0219NAME IS NULL
2006/05/16(火) 00:03:22ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0220NAME IS NULL
2006/05/16(火) 08:48:21ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0221NAME IS NULL
2006/05/16(火) 09:12:16ID:???0222NAME IS NULL
2006/05/16(火) 22:20:56ID:Z+Em7r5T先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0223NAME IS NULL
2006/05/16(火) 22:27:14ID:???0224NAME IS NULL
2006/05/16(火) 23:54:57ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0225NAME IS NULL
2006/05/17(水) 00:36:36ID:kz3A1JaC注意点はありますか・・・というかもうRDOのすれないのね・・・
0226NAME IS NULL
2006/05/17(水) 00:43:49ID:RkaJHsQI先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0227NAME IS NULL
2006/05/17(水) 09:21:42ID:???大きくは接続型と非接続型の違い。
DataReaderはDynaSetみたいに書き換えられるわけじゃない。
1.0の場合、DataReaderを同じ接続から複数開けない。
0228NAME IS NULL
2006/05/17(水) 23:48:07ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0229NAME IS NULL
2006/07/17(月) 00:27:36ID:OBhgddDBDAOを使用して、元MDBと別のMDBがある状態で別のMDBに新規テーブルを作成し、元MDBの検索条件にあったレコードだけコピーしたいと思っています。
そこでcreatetableでテーブル作成を行った時に元MDBのフィールド名が変更もしくは追加された時、新規テーブル作成時にその変更されたフィールド名を自動で反映させたいとおもっています。
今の私の知識ではフィールド名が変更された時に毎回DAOのプログラム側からフィールド名を変更する方法しか思いつきません。
自動でフィールド名を変更して新規テーブル作成方法を行う良い方法はありませんでしょうか?
よろしくお願いします。
0230NAME IS NULL
2006/07/17(月) 13:32:35ID:???元テーブルと同じ構造のテーブル作成すれば、勝手に
望む状態になるだろ。
0231NAME IS NULL
2006/07/17(月) 17:12:34ID:???レプリケーションでも使ったら?
ほとんど使い物にならないけどね
0232NAME IS NULL
2006/07/17(月) 22:07:00ID:wmWL8u64先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0233NAME IS NULL
2006/07/17(月) 22:23:06ID:???0234NAME IS NULL
2006/07/17(月) 23:32:53ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0235NAME IS NULL
2006/08/23(水) 19:43:10ID:???読み込みたいのですが、有効なプロバイダがみつからん。
OFFICFE12(Beta2)のACEDBエンジンでも読めん(x86は可)
カムバックDAO
0236NAME IS NULL
2006/08/23(水) 22:21:33ID:recwsTl7先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0237NAME IS NULL
2006/09/02(土) 20:17:50ID:???間違いなく
VIPPERだお
0238NAME IS NULL
2006/09/02(土) 22:30:37ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0239NAME IS NULL
2006/09/05(火) 17:15:25ID:E+yZn0H6阿藤
0240NAME IS NULL
2006/09/05(火) 21:17:00ID:TPRsHbjl先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0241NAME IS NULL
2006/09/08(金) 19:31:21ID:SP8mweQ9日本最古の通貨は(ry
0242NAME IS NULL
2006/09/08(金) 21:56:59ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0243NAME IS NULL
2006/09/09(土) 23:18:33ID:6onR8YSU江角マキコ主演
0244NAME IS NULL
2006/09/10(日) 17:59:34ID:???優先して見せている。詳しくはググれ。
0245NAME IS NULL
2006/09/11(月) 00:29:50ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0246NAME IS NULL
2006/09/11(月) 16:44:22ID:???江角マキコ主演
0247NAME IS NULL
2006/09/11(月) 22:38:18ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0248NAME IS NULL
2006/09/11(月) 22:39:29ID:???そういう理解でいいよ。
以上。
0249NAME IS NULL
2006/09/12(火) 00:11:01ID:O2wvSQ9g先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0250NAME IS NULL
2006/09/12(火) 10:29:32ID:???0251NAME IS NULL
2006/09/12(火) 21:06:12ID:LJRVWfZm先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0252NAME IS NULL
2006/09/13(水) 00:40:03ID:???このスレを常駐監視して、カキコがあるとすかさず>251を突っ込むスクリプトかね?
0253NAME IS NULL
2006/09/13(水) 01:06:23ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0254NAME IS NULL
2006/09/14(木) 14:25:20ID:???先延ばしにしてるだけっていうのはホント。
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいい。ムシャクシャしてやった。今は反省している
0255NAME IS NULL
2006/09/14(木) 21:54:58ID:???先延ばしにしてるだけっていうのはホント。
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいい。ムシャクシャしてやった。今は反省している
0256NAME IS NULL
2006/09/25(月) 15:51:00ID:???0257NAME IS NULL
2006/09/26(火) 01:17:37ID:ZVOC/hTI先延ばしにしてるだけっていうのはホント。
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいい。ムシャクシャしてやった。今は反省している
0258NAME IS NULL
2006/09/26(火) 23:05:53ID:V6th5YyT先延ばしにしてるだけっていうのはホント。
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいい。ムシャクシャしてやった。今は反省している
0259NAME IS NULL
2006/10/27(金) 00:54:38ID:qqiDK9pM先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0260NAME IS NULL
2006/10/27(金) 06:44:08ID:fdSJiprVこのDB間でのSQLはどう書けばいいのか、解らず悩んでます。
dsn:foo1/ table1( field/ No,Value )
dsn:foo2/ table2( field/ No,A,B,C )
wwDBCon.open "foo1"
wwadoRS = Open "SELECT No,Value,A,B,C FROM ....",wwDBcon,0,1
No=No でさがして、レコードセット取得したいのです。
出力 No,Value,A,B,C です。
参考になりそうなリンクでも結構です。
0261NAME IS NULL
2006/10/27(金) 09:50:31ID:???0262NAME IS NULL
2006/12/30(土) 00:34:38ID:EWYGuIG6create table test.dbf ( col numeric(20,10) )とやっても、
DBFファイルを見ると、整数部20の小数部5桁になってしまいます。
小数部が必ず5桁で定義されてしまいます。
これはどうすれば任意の小数部桁数が指定できますでしょうか?
言語はVC++ MFCです。
0263NAME IS NULL
2007/01/27(土) 12:48:38ID:???ADOを使用して、オラクルサーバーのデータをSELECT文でオラクル内の
複数のテーブルを結合してListViewで表示するプログラムを作成中です。
オラクルサーバーにメインデーターがあり
各クライアントにMDB形式でマスタデータがあります。
MDBのマスタデータにはたとえばですが、テーブル名 [商品テーブル]
フィールド名[コードナンバー]、[商品名]...
となっており、サーバーには、テーブル名[商品コード]
フィールド名[コードナンバー]、[受注日]....があるとします。
クライアントからADOを使用して、サーバーのデータをSELECT文でオラクル内の
複数のテーブルを結合してListViewで表示するのはできます。しかし
[コードナンバー]は取得できるのですが、サーバーのテーブルには、
[商品名]がないためとうぜん表示できません。
この場合、オラクルから取得したデータをマスタデータのあるMDBに新しくテーブルを
作りそこに一度格納して再度ADOで結合処理して
商品名を表示する方法しか考えつかないのですが、
ほかに良い方法はありますでしょうか?
ADOで接続MDBに保存再度ADOで接続して表示では
レスポンスが悪いかなと思いまして...
異種ソースの結合ができると、SQLすれから誘導されたのですが...
よろしくお願いいたします。
*VB6 winXP-pro オラクル9i
0264NAME IS NULL
2007/01/27(土) 13:27:30ID:???0265NAME IS NULL
2007/01/29(月) 23:04:46ID:???DAOをいま使う奴はおらんやろ。
0266NAME IS NULL
2007/01/29(月) 23:17:08ID:C323aaTa先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0267NAME IS NULL
2007/01/30(火) 00:08:20ID:???プログラム中でカラのMDBを生成するときたまーに……
ADOXめどいもんorz
0268NAME IS NULL
2007/01/30(火) 00:39:14ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0269葉猫 ◆Jz.SaKuRaM
2007/03/13(火) 22:56:59ID:???いけないのかよ (´・ω・`)
そろそろ漏れもADO.netに移るか。。。。。。。。。。。。。。。
0270NAME IS NULL
2007/03/15(木) 00:25:08ID:s8ccNWrH先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0271NAME IS NULL
2007/03/17(土) 11:37:43ID:???何で自分で試そうとしないんだろうか.
今ならOracle,SQLServer(sqlって略すな)辺りなら,
その辺のPCにだってインスコできるんだから実記で試せばいいのに.
今その辺がムショウに気になってる.
0272NAME IS NULL
2007/03/19(月) 23:52:52ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0273NAME IS NULL
2007/05/10(木) 09:21:56ID:???保守ってかくかわりに別の定型文が決まったってやつ?
0274NAME IS NULL
2007/05/10(木) 22:39:30ID:A3ER/LT2先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0275NAME IS NULL
2007/05/11(金) 11:14:37ID:???最後の書き込みから1年経過したようなスレでも落ちないこの板に於いて
保守目的のコピペしてるんだとしたら、それはそれで間抜けではあります。
0276NAME IS NULL
2007/05/11(金) 23:03:19ID:mToTNIlR先延ばしにしてるだけっていうのはホント。
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいい。ムシャクシャしてやった。今は反省している
0277NAME IS NULL
2007/05/12(土) 10:19:32ID:0rDpdX72先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0278K
2007/05/29(火) 12:00:49ID:HHLpu5GUhttp://homepage2.nifty.com/inform/vbdb/
上のサイトのソースを参考にしてもつながってくれませんm(--)m
何か方法はないものでしょうか?
教えていただければ幸いですm(__)m
0279K
2007/05/29(火) 12:02:07ID:HHLpu5GUhttp://homepage2.nifty.com/inform/vbdb/
上のサイトのソースを参考にしてもつながってくれませんm(--)m
何か方法はないものでしょうか?
教えていただければ幸いですm(__)m
0280NAME IS NULL
2007/05/29(火) 14:09:37ID:???>「参照設定」で [Microsoft DAO 3.5 Object Library] に参照します
を理解してない可能性80%
自分のやった手順とかせめてどんなエラーが出てるかぐらい書けよ。
0281NAME IS NULL
2007/05/29(火) 15:59:21ID:???0282NAME IS NULL
2007/09/24(月) 04:13:50ID:PG25xm5wそのメモリ上のRecordsetにSQLで集計かけてRecordset
抽出とかできないのですか?
ファイル保存して再度OpenするときにSQL指定すれば
いいみたいなのですが、パフォーマンス的にオンメモリが
望ましいので・・
0283NAME IS NULL
2007/09/24(月) 07:53:07ID:???つ Linq
0284NAME IS NULL
2007/09/24(月) 10:46:12ID:MJmYlvF+先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0285NAME IS NULL
2008/03/31(月) 12:15:19ID:sr9oKigw98や2000、Xpでは問題なく動作してるんだけど
Vistaで動かすと、速攻MDBが壊れるのはどんな理由が考えられますか?
0286NAME IS NULL
2008/03/31(月) 13:35:54ID:???よくわからんけどエスパーすると
Program Filesの下にmdbファイルを置いてるとか。
0287NAME IS NULL
2008/03/31(月) 14:00:40ID:???rootにフォルダ作ってその中で実行してます
mdbはaccess97ど2000の形式です
うまく動くVista(Office2007なし)もあり、Office2007との
共存ができないのかなぁとか疑ってます
0288NAME IS NULL
2008/03/31(月) 19:10:32ID:???0289NAME IS NULL
2008/03/31(月) 21:33:24ID:???Vistaで97型式の使用は論外。
2000も対象外です
偶然うまく動いてもどっかでおかしくなる。
Office2007入れたら、DAOやADOのDLLがごっそり入れ替わるから、まったく動きません。
0290NAME IS NULL
2008/04/06(日) 09:51:03ID:???0291NAME IS NULL
2008/04/06(日) 17:01:20ID:???してないしてない
バージョン番号が付いてるってだけで複数バージョン共存できないし
Windows Installer使ってれば、古いものの上書きはチェックされるけど
新しいものを上書きする分には基本素通し
それでDLL Hellを激化させたって叩かれまくった結果
.netはアセンブリにバージョン管理機構付けたんだから
0292NAME IS NULL
2008/04/06(日) 19:18:45ID:woM9Lw83先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0293NAME IS NULL
2008/04/06(日) 23:09:39ID:???0294NAME IS NULL
2008/04/06(日) 23:37:34ID:???先延ばしにしてるだけっていうのはホント。
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいい。ムシャクシャしてやった。今は反省している
0295NAME IS NULL
2008/04/07(月) 19:07:21ID:???0296NAME IS NULL
2008/04/07(月) 23:08:40ID:XmpIvrdx先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0297NAME IS NULL
2008/06/22(日) 19:04:46ID:uy5eGQxV0298NAME IS NULL
2008/06/23(月) 01:12:15ID:???先延ばしにしてるだけっていうのはホント?
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいいの?今その辺がムショウに気になってる
0299NAME IS NULL
2008/06/23(月) 10:48:50ID:???ま た お ま え か !
スレを変えて何度同じ質問をするつもりだ?マルチ禁止。
0300NAME IS NULL
2008/06/24(火) 01:51:56ID:???いまさらADOを覚えなおすのめんどくさいんだけど
将来性を考えたら移行すべきかね
0301NAME IS NULL
2008/06/24(火) 07:09:11ID:???ADOの将来性ねえ、うーん
0302NAME IS NULL
2008/06/24(火) 11:38:29ID:???0303NAME IS NULL
2008/06/25(水) 00:59:45ID:???先延ばしにしてるだけっていうのはホント。
また、oracle、sql、db2等はそれら製品が順番に処理してくれるという
理解でいい。ムシャクシャしてやった。今は反省している
0304†ドラム神§TAKAHIKO†
2008/09/09(火) 03:08:56ID:GtjxzMNf0305NAME IS NULL
2008/10/04(土) 12:08:10ID:???ExcelからODBC経由でDB2/400に接続すると遅いのですが、
ADOだと速くなりますか。
外部データとしてDB2/400のDBから10万レコード以上を読みたい。
i5/OS V5R4M0、WinXP SP2+Excel2003 SP3
0306NAME IS NULL
2008/10/04(土) 22:56:40ID:???ボトルネックはミドルよりネットワークじゃないかなぁという気がするので
劇的な改善は期待できないような。
もっとも、今ODBCを直接叩いてるんでなくて、ADO→ODBC→DB2ってしてるなら
間飛ばす分、多少マシかもだけど。
可能なら1000件位で比較ベンチ取ってみるとか。
というか、Excel2003は1シート65535行までの制約生きてなかった?
0307NAME IS NULL
2009/02/08(日) 14:20:49ID:ML93ELzY2.5じゃないと問題あるの?
0308NAME IS NULL
2009/04/09(木) 20:31:03ID:???ま た お ま え か !
自治厨乙
0309NAME IS NULL
2009/05/28(木) 13:39:30ID:???XPで作成したソースがVista環境ではエラーになってしまう。
(VistaではADOX6.0の為)
両方で使用するにはDAOに戻すしかない?
0310NAME IS NULL
2009/06/04(木) 08:56:44ID:ICQ7EzZo0311NAME IS NULL
2009/06/22(月) 00:33:53ID:???参照設定しなおせばいいよ。
0312NAME IS NULL
2009/11/04(水) 20:27:39ID:???Postgresにデータを移し、AccessからADOで繋ぐといったスタイルに変更したところ、
重くてどうにもならないという事態になっております。
基本的にデータベースもADOも初心者なので、
元々無理があるのか、PCスペックが悪いのか、ADOの設定等が悪いのかがよくわかりません。
何か見るべきところがあればご教示いただけないでしょうか。
共通環境
OS:WindowsXP
CPU:アスロンの結構古い物
メモリ:300M位しかありません
旧環境:
フロントエンド:Access2007
バックエンド:Access2007 ( フロントと同一、データがそのまま入っている )
接続方法:特になし直接
速度:
単純に全データをデータシートビューに表示する場合は数秒
単純なWHERE句入りの検索時間も数秒
新環境:
フロントエンド:Access2007
バックエンド:Postgres( Windows版、フロントと同一PC )
接続方法:ADO(Postgres付属のOLE DB プロバイダ)
速度:
単純に全データをデータシートビューに表示するだけで硬直( OFFSET 0 LIMIT 3000等としても同様 )
検索:無理
※硬直時Windowsのページファイルサイズが1.5G位に・・・
※ちなみにpgAdminのツールで直接全データを表示するSELECTを実行した場合は30秒位で一応表示されます。
0313NAME IS NULL
2010/02/04(木) 17:26:55ID:???0314NAME IS NULL
2010/04/07(水) 22:00:21ID:???特定のDBを指定すると「ファイルが無い」と言われる。
BDEがインストールされていると、そちらのドライバを経由するらしく、
「ファイルが無い」と言われるDBにも接続できる。
Jetだけだと、何か制約がアルノ?
0315NAME IS NULL
2010/04/21(水) 14:49:44ID:???結局DAOの方が使いやすいし合理的じゃないか?
ADOは構文が長くなるしAccessの生成クエリをそのまま流用できないのがなんとも。
0316NAME IS NULL
2010/05/03(月) 15:47:09ID:???MSSQL相手ならADOでいいんじゃね
0317NAME IS NULL
2010/05/25(火) 20:10:20ID:p38fnkcgaccess97とVC++でデータベース(DAO)のテストプログラムを作っています。
データベースファイルをオープンする時にロックファイルが出来ると
思う出のですが、*.mdbファイルを単体で開くと*.ldbはできるのですが、
プログラムから 例えば
CDaoDatabase mdb;
CDaoRecordset mrs(&mdb);
mdb.open(dbName,TRUE,FALSE);
mrs.Open(dbOpenDynaset, (LPCTSTR)sqlCmmandString,dbDenyWrite);
と実行しても排他的に機能せず、2個のプログラムを走らせ一方でオープン
しているのにもかかわらす、もう1つのプログラムからも開き更新することが出来て
しまいます。
openの第二引数の説明文が
「データベースを排他 (非共有) アクセスで開くときは TRUE を、共有アクセスで開くときは FALSE を
指定するブール値。この引数を省略すると、データベースは共有モードで開かれます。 」
となっています。
dbDenyWrite : ほかのユーザーはレコードを変更または追加できません
なにか別の所で排他的にアクセスする手続きをするのでしょうか?
0318NAME IS NULL
2010/06/07(月) 17:43:37ID:???SQLServerは@有?
0319NAME IS NULL
2010/06/08(火) 15:24:26ID:???0320NAME IS NULL
2010/06/17(木) 21:27:34ID:???Dim wksp as DAO.Workspace
Dim db as DAO.Database
Set wksp = DBEngine.Workspace(0)
Set db = wksp.OpenDatabase("MDBファイル名")
VB6からMDBファイルにアクセスしてるけど
こんな感じだな
0321SUPER
2010/12/21(火) 15:53:58ID:efFYFRegテーブルをオープンしていますが
このテーブルにデータが大量にあっても速度的には問題ないでしょうか?
SELECTで絞ったほうがいいでしょうか?
rs.Open "T_sample", cn, adOpenKeyset, adLockOptimistic
rs.AddNew "売上日", #12/31/2004#
0322NAME IS NULL
2011/01/03(月) 22:11:24ID:Lq5mfyx5ADOでのSQL文で、
WHERE field1 like '%keyword%'
のような部分一致検索をする場合、
'%'や'_'などのワイルドカード文字そのものをキーワードに使いたい場合は
どのように記述すればいいのでしょうか?
0323NAME IS NULL
2011/01/04(火) 00:46:56ID:???任意の文字列%KEYWORD%任意の文字列
を検索したい場合
WHERE field1 like '%[%]keyword[%]%'
で良いのでは?
[ ] でくくる事によってエスケープしています _ も同様に[_]でOKのはず
0324322
2011/01/04(火) 23:00:11ID:6ly9qemnありがとうございます。
ワイルドカード文字を[]で括ればいいんですね。
そこでもうひとつ質問をしたいのですが、like句の中で
'[' や ']' を含む文字列を検索したい場合はどういう書き方をすればいいでしょうか?
0325NAME IS NULL
2011/01/26(水) 20:04:51ID:mxoKvC5iありがとう。
DAOのほうが楽だ。
0326NAME IS NULL
2011/02/14(月) 12:55:38ID:ia59wzr3外部接続するならADOって漠然と認識してる
どっち使おうが大して変わらないって感じだけど、ADO.NETは全然違う
どっちの知識も役に立たない
0327NAME IS NULL
2011/05/25(水) 16:41:58.62ID:???DelphiだとPELが一般的なんだろうが、俺は.Net派なんで詳しくないが、DDOはもう使われなくなったのか?
詳しい奴情報たのむ。
そんなことよりもなによりもSQL Serverの新しいやつはLEO使えだって・・・orz...
この業界変化早すぎ・・・
0328NAME IS NULL
2011/05/26(木) 09:51:04.32ID:???まじか!!!!!ABDじゃなかったのか、SLOがいいって噂だったよな・・・・。
じゃあSunもKDOになるのか?
0329NAME IS NULL
2011/05/27(金) 10:01:48.92ID:???0330NAME IS NULL
2011/05/27(金) 10:03:26.57ID:???SKCとVDOが今後の主流。
それ以外はアホ
0331NAME IS NULL
2011/05/30(月) 16:40:44.58ID:???0332NAME IS NULL
2011/05/30(月) 16:44:49.18ID:???なんでだろ?
教えてエロい人
0333NAME IS NULL
2011/05/30(月) 23:23:49.10ID:???LMEなんて時代遅れ
今QAO
0334NAME IS NULL
2011/05/31(火) 10:25:06.99ID:???PQEでぐぐれ
0335NAME IS NULL
2011/05/31(火) 10:27:06.59ID:???クォート処理みんなどうしてる?
やっぱFCO使うべき?
0336NAME IS NULL
2011/05/31(火) 10:29:00.50ID:???0337NAME IS NULL
2011/05/31(火) 10:31:39.31ID:???>>334トンクス
KSMがDVSしててEQBを使うってことね。
あとTMAってどうすればいいんだろう?
0338NAME IS NULL
2011/06/01(水) 07:51:17.15ID:???とっとと消えろカス
0339NAME IS NULL
2011/06/01(水) 23:56:07.78ID:???SODに就職が決まったので消えます
0340NAME IS NULL
2011/06/07(火) 09:12:16.51ID:???0341NAME IS NULL
2011/06/12(日) 23:05:55.06ID:???0342NAME IS NULL
2011/06/13(月) 10:52:06.08ID:???0343NAME IS NULL
2011/06/13(月) 23:16:21.45ID:???0344NAME IS NULL
2011/06/14(火) 13:08:18.97ID:???0345NAME IS NULL
2011/06/14(火) 22:38:14.84ID:???0346NAME IS NULL
2011/06/15(水) 00:43:32.76ID:???0347NAME IS NULL
2011/06/15(水) 09:46:35.92ID:???0348NAME IS NULL
2011/06/17(金) 22:25:14.30ID:???0349NAME IS NULL
2011/06/20(月) 16:44:48.92ID:???0350NAME IS NULL
2011/06/20(月) 18:14:27.97ID:???w
0351NAME IS NULL
2011/06/21(火) 08:28:32.47ID:???http://www.youtube.com/watch?v=7Wj60j1dWzY
0352NAME IS NULL
2011/06/30(木) 13:10:11.26ID:???0353NAME IS NULL
2011/06/30(木) 22:12:11.27ID:???PaiostuKade
0354NAME IS NULL
2011/07/01(金) 10:17:27.78ID:???GPMやSMOもこのスレですか?
0355NAME IS NULL
2011/08/02(火) 10:59:51.82ID:???0356NAME IS NULL
2011/08/02(火) 23:31:55.12ID:???↑↑↑フジ炎上とADO・DAOの相関図
0357NAME IS NULL
2011/09/29(木) 10:10:50.52ID:???■ このスレッドは過去ログ倉庫に格納されています