1 名前:1 [01/10/03 17:04] 今までACCESSのみでフォームやレポートを作成するときワーク テーブルを作成しそれをレコードソースとして作成していました。 しかし、ADOではクライアントにワークテーブルを作成する事が できないですよね。 皆さんはこの辺をどういう方法で処理していますか? 本によるとストアドプロシジャーを使って対応できるとか書いてあり ますがいまいち方法はわかりません。
2 名前:ACCESS超初心者 [01/10/03 20:57] 私もこれ やりかた探してるんですが・・・ Transact-SQLのヘルプで CREATE TABLE ってあるんですが、ここに「一時テーブル」っていうのがあるんです。 クライアント側に作るんじゃないけれど 同じような使い方ができそうなんですけれど・・・ ストアドの中で作ってその間だけしか使えないと プログラム全体(フォームとか)をストアドの中で 呼ばないと使えないのかな? とか・・・ よくわからないのです。 ヘルプの意味もよくわからない・・・ (/_;) どなたか詳しい方いらしたら教えてください!! わたしからも よろしくお願いします!! m(u_u)m
3 名前:名無しさん@そうだ選挙にいこう mailto:sage [01/10/03 22:48] クライアントにワークのmdb作るだけじゃないのか? ado接続もできるんだし。
4 名前:ACCESS超初心者 [01/10/04 02:09] あれ? 私は1の方の書いてる意味を 勘違いしてたみたいです。 ワークテーブルってテンポラリーのテーブル=一時テーブルのことだと思っちゃいました。 スミマセン 自分が一時テーブル使いたくて探してたもので「同じ質問の人がいる〜」って 思ってしまいました。 こちらも ご存知でしたら 教えてください、お願いします。
5 名前:名無しさん@そうだ選挙にいこう [01/10/04 02:33] >>1 フォームのレコードソースにするだけならビューを使えばいいのでは。 またはSQL文を直接レコードソースにいれれば。 >テンポラリーのテーブル=一時テーブル って何のために??フォームをストアドで呼ぶというのもよくわからん。 ストアドはデータベース側で動くもので、 クライアントはコマンドとパラメータを渡すだけだよ。 何がやりたいかを書けばレス付くのでは?
6 名前:名無しさん@そうだ選挙にいこう [01/10/04 05:52] >>2 一時テーブルはクライアントがDBを閉じるまで有効だったと思います。 ストアドの実行方法を理解されてることを前提に書きます。 SELECT ・・・ INTO ##テーブル FROM テーブル WHERE 1 = 2 とか CREATE TABLE ##テーブル (・・・) とかで、とにかく'##'の付いたテーブルを作ると一時テーブルができるわけで、 ##テーブルをフォームのレコードソースにできます。 ストアドの中でデータ作って参照だけならそれだけでいいけど、 フォームでデータを編集する場合、主キーが必要だったように思います。 ALTER TABLE ##テーブル ADD CONSTRAINT PK_テーブル PRIMARY KEY (キー) って感じで主キーを作ります。 フォーム閉じる時は一時テーブルを消さないといけませんね。 DROP TABLE ##テーブル 間違ってたらスマン
7 名前:1 [01/10/04 10:02] 早速たくさんの人たちに書きこんで頂いて喜んでおります。 >>2 多分、同じ悩みだと思いますので問題解決にご協力をお願いします。 >>3 現在の開発環境はAccess2000を.adpで作成し使用しています。.adpで使用すると 接続できるデーターベースはSQL Serverのみでクライアントにワークテーブルも 作れないし、他のmdbとも接続できないようなのです。 ここが間違いで何かの方法があれば教えて頂きたいのです。 今日から、Accessを.mdbで作成し、SQL Serverのデータをodbc接続してDAOで 開発しようかなーとも思っています。 >>5 例えば、フォームのレコードソースにビューやSQL文をいれて使用した時、同じ フォームを別のパソコンでも開いたときに問題が生じるという事はないのでしょ うか?まだ、実験まで至ってなく頭の中で考えて多分問題が起きるのではないか と迷っています。 フォームをストアドで呼ぶという事の質問なのですが、ストアドのレコードセット をフォームやレポートにいれて使用できる。みたいな事が書いてあるのですが、 この方法が理解できないし、他のパソコンでも同じストアドを使用されたときに 問題がおきるのではないかと思うのです。 >>6 この時、テーブルはクライアントに出来るのでしょうか? もし、サーバー側に出来たとした場合、他のパソコンでも同じ処理をしたときに 同じテーブル名が作成され問題を生じるという事はないのでしょうか? Accessでは実績があるのですが、SQL Serverは今回が初めてで困っています。 最初からACCESS2000を.adp(プロジェクト)+SQL Server2000と書くべきでした 納期が迫っているので今回は.mdb+SQL Server2000で行こうと思います。 ただ、この件は解決方法を見つけたいと思っていますので、チョットしたきっかけ でもいいですので今後とも宜しくお願いします。
8 名前:6 [01/10/04 12:54] >>1 一時テーブルはサーバー側に出来ます。 クライアント毎に作成され、他のクライアントからは見えません。 同じテーブル名の問題はありません。 >>6 の方法は、私は明細型の伝票入力等で使っています。 ・フォームオープン前にストアドで一時テーブル作成 ・伝票修正・削除の場合はストアドで該当レコードを一時テーブルに転送 ・連結型の帳票フォームオープン(サブフォームだったりします) ・明細編集後の決定ボタンのアクションで明細テーブル更新処理のストアドを実行 ・フォームクローズ時に一時テーブル削除 といった感じです。 mdbは分散型アプリケーションで、adpはホスト集中型アプリケーションの ような感じですかね。 adpで大量のレコードを処理する場合に、ローカルマシンでやるような VBAだけでの処理なんてことをさせると、ネットワークに負担を掛けて しまいますので、少々面倒ですが適切にストアドを使う必要があります。 adp+SQLはmdb+SQLに比べてテーブルのオープン等の処理が速いように 思います。 ついでに、 ストアドをフォームやレポートのレコードソースにする場合、 Alter Procedure ストアド ( @パラメータ1 nvarchar(10), @パラメータ2 nvarchar(10) ) As SET NOCOUNT ON CREATE TABLE ##テーブル (・・・) <処理> SET NOCOUNT OFF SELECT ・・・ FROM ##テーブル ・・・ ORDER BY ・・・ DROP TABLE ##テーブル といったストアドを書き、フォームやレポートの入力パラメータプロパティに、 @パラメータ1 nvarchar(10) = [Forms].[フォーム]![パラメータ1], @パラメータ2 nvarchar(10) = [Forms].[フォーム]![パラメータ2] のような設定をします。 他のパソコンで同じストアドを使用しても問題は起きません。
9 名前:名無しさん@そうだ選挙にいこう mailto:sage [01/10/04 13:49] ここなんてどう? 参考になると思う。 www2p.biglobe.ne.jp/~sakurait/cstrue/cl1999/cl1999c4.html
10 名前:1 [01/10/04 14:58] 6番さん、9番さん、ありがとうございます。 >>8 「mdbは分散型アプリケーション adpはホスト集中型アプリケーション」って素晴らしい表現ですね。 サーバー側で作成する一時テーブルは名前が同じでも他のクライアントには全く 関係無い。という事、これで納得し安心しました。 クライアントの台数が多くなるとサーバーに負担が掛かるのでサーバーの負担を 軽くする意味でクライアントにワークテーブルを作成した方がいいのではないかと 思っていましたが、この考えだと逆にネットワークに負担がかかり遅くなるんです ね。なるほど良くわかりました。 サンプルで記述されたストアドもこれから時間をさいて実験してみます。 結果はまたご連絡致します。 >>9 ここも凄く役にたちました。探している時は中々見つける事が出来ないけど、 素晴らしい情報ってたくさんありますね。 2ちゃんねるって凄いですね。みなさんに感謝感激です。 これからも宜しくお願い致します。
11 名前:名無しさん@そうだ選挙にいこう [01/10/04 21:33] 3がとても正しいと思う今日この頃なのでした
12 名前:1 [01/10/05 11:02] >>11 11番さん、こんにちは、 adoとmdbを一緒に使えるのでしょうか? お忙しいと思いますのでヒントでも結構です。宜しくお願い致します。
13 名前:名無しさん@そうだ選挙にいこう [01/10/05 12:30] >>8 サーバーでテーブルを作ったり削除したりして サーバーの負荷は重くならないのでしょうか? またSQLサーバーのばあい データエリアがフラグメントしたりしないのでしょうか?
14 名前:8 [01/10/05 20:48] >>13 自己流なので、間違ったことを書くかも知れませんが >サーバーでテーブルを作ったり削除したりして >サーバーの負荷は重くならないのでしょうか? 参考書を読んだことがないので何とも言えませんが、 一時テーブルはこのような使い方をするために あるのだと思っています。 どうしても一時テーブルが必要な場合があります。 SELECTだけで出来ることであれば、なるべく避けた方が いいのでしょう。 最近納品したアプリケーションは8台のクライアントで 使ってますが、遅いと感じたことはありません。 クライアントやネットワークのトラブルで処理が中断 した場合に、勝手にリカバリ(削除)してくれるので、 便利です。 ローカルのmdbにアクセス中、クライアントがダウンすると、 どの様なトラブルになるか、予想がつきません。 WINDOWSを使ってる限り、クライアントがいつダウンするか 分からない、突然ネットワークが切断される場合があるという ことを考慮して、アプリケーションを作るべきだと思います。 でないと、頻繁ユーザーに呼ばれ、にトラブル対応することに なりますからね。 >またSQLサーバーのばあい >データエリアがフラグメントしたりしないのでしょうか? ACCESSと違って、勝手に最適化してくれてるようです。
15 名前:名無しさん@そうだ選挙にいこう [01/10/05 22:31] sqlで作成した方がいいお勧めの本は ナツメ社のaccess2000sqlハンドブック
16 名前:名無しさん@そうだ選挙にいこう [01/10/05 23:15] >ACCESSと違って、勝手に最適化してくれてるようです それに、一時テーブルはtmpdbに作成されるから、直接ユーザのDBには影響しないしね。
17 名前:1 [01/10/05 23:28] >>14 皆様のおかげでSQL Serverの良い所やプログラミングする時の注意点等が 少しづつ分かってきました。ありがとうございます。 実をいいますと、前回、教えて頂いたストアドプロシージャでのフォーム の作成がまだ理解出来ていないのです。 CREATE TABLE #テーブル を使用するとテーブルの定義が面倒みたいなので SELECT INTO #テーブルが簡単でいいかなと思いこの方法を実験しているの ですがなかなか難しいですね。 ・フォームを開くとき SELECT INTO #テーブルを使用して一時テーブルを作成する。 作成されたテーブル名をフォームのレコードソースに代入する ・データの入力、編集などを行う。 ・登録で#テーブルからサーバー側のデータを更新する ・フォームを閉じる 一時テーブルを削除する この様な考えなのですが、大丈夫でしょうか?もし、考えが間違っていたら 教えて下さい。宜しくお願い致します。
18 名前:6 [01/10/06 01:07] >>1 ほぼ大丈夫だと思います。 私も行き当たりばったりでやってますので、なんとも言えません。 とりあえず、フォームでテンポラリを参照するところから 始めてはどうでしょう? (もうこの辺は理解されてるかもしれませんが・・・) 1.ストアドを2つ作る −−−−−−−−−−−−−−−−−−−−−−−−−−−−−− Alter Procedure TEST_テンポラリ作成 As --とりあえずテーブルをデータ毎コピー SELECT * INTO ##テンポラリテーブル FROM test1 --テストに使うテーブル名 return −−−−−−−−−−−−−−−−−−−−−−−−−−−−−− Alter Procedure TEST_テンポラリ削除 As DROP TABLE ##テンポラリテーブル return −−−−−−−−−−−−−−−−−−−−−−−−−−−−−− 2.新規フォームを作成する (作成を始める前に TEST_テンポラリ作成 を実行して一時テーブルを作っておいて下さい) コントロールソースプロパティを ##テンポラリテーブル と設定する。 後はACCESSと同じ要領でテキストボックスをいくつか作って下さい。 (フォームを閉じた後は TEST_テンポラリ削除 を実行して一時テーブルを削除して下さい) 3.テスト TEST_テンポラリ作成 実行 フォームを開く TEST_テンポラリ削除 実行 で、これらの動きが見えると思います。 レコードが編集できないことも確認出来るかと思います。 それから、データ編集する仕組みにも挑戦してみて下さい。 一時テーブル作成時に主キーを作ることをお忘れなく>>6 データ編集で私がよく忘れてしまうのは、フォームでの編集では、レコード移動時に レコードがテーブルに書き込まれるため、最後に編集したレコードがテーブルに 反映されないままストアドを実行させてしまうことです。(ACCESSでも同じですね) ストアド実行前にレコードを保存することをお忘れなく。 DoCmd.RunCommand acCmdSaveRecord だったかな。 頑張って下さい。
19 名前:1 [01/10/07 14:24] >>6 TESTテンポラリー作成について質問なのですが 1.RecordSource = "#TEST" RecordSource = "##TEST" #TESTで実験した場合、テーブルが無いとメッセージが出ます。 これはどうしてでしょか? 2.表形式のフォームに##TESTを張りつけたとき、データは正常に表示されるので すが、最終行に空白が空かないため追加データの入力が出来ません。 TESTにはインデックスはセットしているのですが何が問題なのでしょうか? >>18 で「レコードが編集できないことも確認出来るかと思います。」と説明し てある事がこの事でしょうか? お忙しいのに申し訳ございませんが、教えて頂けないでしょうか?
20 名前:名無しさん@そうだ選挙にいこう [01/10/07 19:09] だれかSQLserver2000のCDキーを教えて下さい!! 明日までにわからないとぼくはもうダメなんです!!!
21 名前:名無しさん@そうだ選挙にいこう mailto:sage [01/10/07 20:51] WR-W50292-M1G9M52-UA107
22 名前:1 [01/10/09 09:50] >>19 SELECT INTO ##TESTで一時テーブルを作成した場合の件ですが 元となるテーブルにインデックスがセットしてあれば##TESTにも自動的に インデックスがセットされると思っていました。これが間違いだったのですね。 CREATE TABLE でインデックスも含めて##TESTで一時テーブルを作成し その後、INSERT INTOでデータを代入して一時テーブルを作成したらうまく行きま した。 SQL ServerはAccessに比べて機能が多いのでマニュアルがとても見にくいですね シンプルなサンプルがたくさんあるといいと思います みなさん、今後とも宜しくお願い致します。
23 名前:1 [01/10/09 13:53] SQL ServerにTM_GYOといううマスタがあります。 ACCESS2000の表形式のフォームで、TM_GYOのデータを追加、修正、削除等が出来るようにしたいのです。 下記のような方法で、登録、修正、削除など行えるようになりました。 しかし、下記の問題が発生しました。 1.#TN_GYO では一時テーブルが作成できない。 2.同時にほかのパソコンで同じフォームを開くと##TN_GYOが既に存在します。になります。 3.マニュアルには 『ローカル一時テーブルが、複数ユーザーが同時に実行できるストアドプロシージャ またはアプリケーションで作成される場合、SQL Server は、異なるユーザーが作成 する個々のテーブルを区別できなければなりません。SQL Server は、各ローカル 一時テーブル名の末尾に数値サフィックスを内部的に追加することによって、テーブル を区別します。』 と書いてありますが、数値サフィックスは自動的に作成されるものではないのでしょうか? ACCESSのフォームを開くのイベント内 Set COMD.ActiveConnection = CN01 With COMD .CommandText = "ST_3010TMPSKS" .CommandType = adCmdStoredProc .Execute End With RecordSource = "##TN_GYO" ストアドプロシージャー Alter Procedure ST_3010TMPSKS As CREATE TABLE ##TN_GYO (GYO01 NCHAR(2) NOT NULL,GYO02 NCHAR(16),GYO03 NCHAR(2),GYO04 NCHAR(2),GYO99 INTEGER) ALTER TABLE ##TN_GYO ADD CONSTRAINT TN_GYOK01 PRIMARY KEY(GYO01) INSERT INTO ##TN_GYO (GYO01,GYO02,GYO03,GYO04,GYO99) SELECT TM_GYO.GYO01,TM_GYO.GYO02,TM_GYO.GYO03,TM_GYO.GYO04,0 FROM TM_GYO return 宜しくお願い致します。
24 名前:6 [01/10/09 20:17] >>23 >2.同時にほかのパソコンで同じフォームを開くと##TN_GYOが既に存在します。になります。 確かにそうですね。 何かで読んだのと、他のシステムの経験によって、一時テーブルについて間違った 思い込みをしてました。 申し訳有りません。 1さんのレスを読んで、ユーザーで実験し、脂汗をかいております。 クライアントの多くが遠隔地にあり、エラーが起きても知らせて来なかったのかもしれません。 明日は、この対応になりそうです。 一時テーブル名をユニークにするにはどうすればいいのかは、いくつか思いつきはしますが、 このような場合の「定石」を知りたいと思います。 私の作ったアプリケーションでは、一時テーブルはトランザクション内で作成・削除を行ってますが、 同時に同じトランザクションが実行された場合の「排他制御」の考え方についても知りたいと思います。 どなたかご指導、宜しくお願いします。
25 名前:名無しサン@ボの牛丼 [01/10/10 02:07] テーブル名のおしりにHOST_NAME()、つまりコンピュータ名を入れればいい。 動的SQL(SQL文をSQLで作って実行)は少々面倒だけど。
26 名前:6 [01/10/10 03:55] >>25 とても勉強になりました。 ホストネームがこんなに簡単に取得できるとは知りませんでした。 有り難うございます。 Alter Procedure TEST_テンポラリ作成 @file_name nvarchar(128) OUTPUT As SET @file_name = '##テンポラリテーブル_' + HOST_NAME() EXEC ('SELECT * INTO ' + @file_name + ' FROM test1') return Alter Procedure TEST_テンポラリ削除 As DECLARE @file_name nvarchar(128) SET @file_name = '##テンポラリテーブル_' + HOST_NAME() EXEC ('DROP TABLE ' + @file_name) return <開く時> Private Sub Form_Open(Cancel As Integer) Dim Cnn As ADODB.Connection Dim Cmd As New ADODB.Command Dim par As ADODB.Parameter Set Cnn = CurrentProject.Connection Cmd.ActiveConnection = Cnn Cmd.CommandText = "TEST_テンポラリ作成" Cmd.CommandType = adCmdStoredProc Set par = Cmd.CreateParameter(, adVarWChar, adParamOutput, 128) Cmd.Parameters.Append par Cmd.Execute Me.RecordSource = par.Value End Sub <閉じる時> Private Sub Form_Close() DoCmd.RunSQL ("TEST_テンポラリ削除") End Sub
27 名前:1 [01/10/10 09:33] >>25 マニュアルに「数値サフィックス」とは書いてありましたが、「HOST_NAME()」に ついては見つける事ができませんでした。 どうもありがとうございます。 >>6 詳しくサンプルまで書いて頂いて助かります。 どうもありがとうございます。 皆さん、遅くまで頑張ってらっしゃるんですね。関心します。 体には充分注意して下さいね。 これから早速、実験してみます。今後とも宜しくお願い致します。
28 名前:唐 [01/10/15 00:34] 揚げ
29 名前:名無しさん@そうだ選挙にいこう [01/10/27 04:07] #2つだとグローバル一時テーブルになるから #1つでやらないと駄目なんじゃなかった?
30 名前:名無しサン@ボの牛丼 [01/10/27 10:03] #1つだと、ストアド終了時に消えてしまったと思う。 #2つだとグローバルだけど消えないから、あとはテーブル名を端末毎にユニークな名前を付けておけば区別できるという話。
31 名前:2 [01/11/03 17:52] 皆様すごくて ついていけていませんでした・・・ やっと 試してみまして、気が付いた事がひとつあったので ご報告します。 ホストネームに'-'を使用しているPCがあると 一時ファイル作成時に ファイル名のエラーになるようです。
32 名前:名無しサン@ボの牛丼 [01/11/03 23:18] >>31 それならホスト名をQUOTENAME関数で変換した結果をテーブル名にすればいい。
33 名前:31 [01/11/05 02:06] 32>> QUOTENAME関数・・・ですか? 調べて明日試してみます。 ありがとうございました!! m(u_u)m
34 名前:名無しさん@そうだ選挙にいこう mailto:sage [01/11/06 19:49] >>31 [ ]で囲むと良い
35 名前:31=2 [01/11/11 04:36] >>32 別な問題が発生してしまって 試せていません。 せっかく教えていただいたのに申し訳ありません。 >>34 []ですか… ##の後ろを囲んでも大丈夫なのかな?##も含めるのかな?? やってみます。 って言いながらまた時間かかりそう(泣 ところで、皆様 MSDEのバックアップってどうなさっていますか? ACCESS2000との組み合わせだと ツール>データベースユーティリティー>バックアップ ってありますが これだと別のサーバとかコンピュータに取っておけるのですが、 文字通り「元に戻す」しか出来なくて、1テーブルだけ戻すとか出来ないですよね? MSDEのデータ変換サービスウィザードを使うと テーブル単位にバックアップ取れるけどMSDE自体が 同一のものだから(?) 別のサーバにバックアップを取る事が出来ません。 (MSDEのインストール時に作られる「Data」っていうフォルダに××.ldfと××.mdfっていう 2つのファイルが出来てしまい、結局同じMSDE内に出来てるって事かな?と解釈したのですが…違うでしょうか?) いろいろ試したのですが、どれも 今ひとつでした。 @テーブル単位に戻すことが出来て、 A安全の為に別のサーバ(別のMSDE)に、 B元のadpファイルに戻すだけでなく 他の場所、他のadpファイルに、 Cできれば ビューやストアドも といったことが出来るようなバックアップの取り方&戻し方ご存知の方いらっしゃいましたら 教えてください。 よろしくお願いします。m(u_u)m
36 名前:名無しさん@そうだ選挙にいこう [01/11/11 08:54] >>35 ボクもMSDEのバックアップについてちゃんと勉強したいと思っていますが、 今やってる方法を書きます。 ユーザーにツールバーのバックアップを操作させるのは危険なので、 バックアップ用のフォームからストアドを実行してもらっています。 ちなみにストアドは、 Alter Procedure バックアップ @file_name nvarchar(200) As BACKUP DATABASE XXXX TO DISK = @file_name return です。 バックアップ用のホルダーにバックアップファイルを作り、手動でバックアップ メディアにコピーしてもらっています。 リストアは「元に戻す」でやっています。(ユーザーがリストアすることはありません) 「元に戻す」は、現在接続中のデーターベースに上書きするようです。 既存のデーターベースを残したまま、新たにテスト環境を作りたい場合は、 ウィザードの「プロジェクト(新しいデータベース)」で別のデータベースを作り、 出来上がったADP(運用中のADPでは接続先を変更して)から「元に戻す」で リストアしています。 バックアップ先デバイスと違うフォーマットのデバイスへのリストアは出来ないので、 あらかじめCD-ROM等からハードディスクにコピーしてリストアしています。 ボクのユーザーのデータベースはそれほど大きくないので丸ごとコピーで 自宅に持って帰っていますが、大きい場合はテーブル持ち帰り用のデーターベースを 作った方がいいのでしょうね。 >@テーブル単位に戻すことが出来て、 データベース間のコピーペーストで (キーの情報はコピーされない・・・中途半端ですね) >A安全の為に別のサーバ(別のMSDE)に、 >B元のadpファイルに戻すだけでなく 他の場所、他のadpファイルに、 adpファイルを作ることによってデータベースが出来上がりますが、 adpファイルとMSDEのデータベースは独立したものです。 ××.ldfと××.mdfがデータベースの実体ですが、そのファイルを 意識することはないでしょう。 前の方に書いた方法で出来ます。 >Cできれば ビューやストアドも ビューはコピーペースト出来ないのでSQL文を表示させて手動コピー (MSの手抜きですかね・・・) ストアドはコピーペースト出来ないのでテキストを手動コピー (これもMSの手抜きですかね・・・) もっといい方法がありましたら、どなたかご指導お願いします。
37 名前:名無しさん@そうだ選挙にいこう [01/11/11 22:21] ADOレコードセットとテキストボックス等を連結してUPDATEメソッドで更新する方法無いですか? フォームのレコードセットに指定すると元データも更新されてしまいます。 関数作って地道に更新するしかないですか?
38 名前:名無しさん@そうだ選挙にいこう [01/11/11 23:30] >>37 関数作って地道に更新するしかないでしょうね やはり非連結フォームですよね コピーしたいコントロール名を、 Link_商品コード Link_商品名 の様な名前にして、Link_の付いたコントロールをADOレコードセットから 全てコピーする関数を書けば、少しは楽になるのかも 他でも使えるし コントロールからADOレコードセットへも同じ方法で 念のため、 コントロールの数 Forms(フォーム).Count コントロール名 Forms(フォーム).Controls(数値).ControlName
39 名前:名無しさん@そうだ選挙にいこう mailto:難しいですね [01/12/18 12:35] データを登録しようとすると、『 エラー 3146: ODBC--呼び出しが失敗しました。』 というエラーメッセージが出るのですが、原因がわかりません。 どのような場合に、このようなエラーメッセージが表示されるのかを、 ご存知の方がいらっしゃいましたら、どうかヒントをよろしくお願いします。
40 名前:名無しさん@そうだ選挙にいこう mailto:sage [01/12/18 13:13] >1 mdbに慣れていて、クライアントがAccess限定ならローカル一時テーブルの作成は クライアントマシンにワーク用のmdb作って ADO(DAO)でRecordsetオブジェクトをグローバル変数に取得 Form_Loadの時にrecordsourceプロパティに取得したオブジェクトを設定でもいけます。 SQLのほうでテーブル名の問題が出るよりは楽だとおもうんだけどどうかな?
41 名前: mailto: [02/02/12 06:58] 勉強になるな
42 名前:名無しさん@そうだ選挙にいこう [02/02/12 13:12] >>15 の >sqlで作成した方がいいお勧めの本は >ナツメ社のaccess2000sqlハンドブック とはどれでなんだろう? www.natsume.co.jp/Natsume/PC.html
43 名前: mailto: [02/02/26 07:12] あげ
44 名前:名無しさん@そうだ選挙にいこう [02/04/09 00:06] Access+SQLServer でいろいろ実験してるんだが・・・ なんかいい書籍とかないのかなぁ〜
45 名前:名無しさん@そうだ選挙にいこう [02/04/13 17:03] MSのサイトに落ちてますよ。 www.microsoft.com/JAPAN/sql/evaluation/exercises.asp 只だし。これでだめならこれよりやさしそうなものを立ち読みしてから買おう。
46 名前:44 mailto:sage [02/04/13 19:19] >>45 ありがとう! さっそく見てみます!
47 名前:名無しさん@そうだ選挙にいこう [02/05/21 00:12] 良スレage
48 名前:名無しさん@そうだ選挙にいこう [02/06/20 00:40] 保守
49 名前:名無しさん@そうだ選挙にいこう [02/06/20 22:47] ぼっきあげ
50 名前:名無しさん@そうだ選挙にいこう [02/06/25 19:59] >>30 >#1つだと、ストアド終了時に消えてしまったと思う。 ストアドを使っているのが間違い。 ExecuteでSQL文をサーバーに投入すれば良いのでは
51 名前:名無しさん@そうだ選挙にいこう [02/07/23 08:26] はじめてSQLServer2000とフロントエンドAccess97でシステムを構築します。 サーバーとクライアント間は64kbps専用線を使います。 しかしテストをしたところ、サブフォームつきのフォームで、レコードの読みこみに 時間がかかることがわかりました。 テストデータは親側30レコード、子側で平均各10レコード(合計300レコード) フォームを開くのに5秒、更新・レコード移動に2秒ほどです。 1)Access2000 or 2002にするだけでもパフォーマンスが改善されますか? 2)ここは定石どおり、テンポラリテーブルを介して必要なレコードだけ抜き出して作業をする (移動ボタンを使ったレコード移動をあきらめる)のがよいのでしょうか?
52 名前:名無しさん@そうだ選挙にいこう mailto:sage [02/07/23 08:36] >>51 1) しない。低下するかも。 2) はい。
53 名前:51 mailto:sage [02/07/23 10:49] >>52 ありがとうございます
54 名前:名無しさん@そうだ選挙にいこう [02/09/03 10:19] すみません。質問させてください。 現在Access2000+SQL-SERVER を使っていますが、 MDBで開発してた時には、あるクエリーを元にして またクエリーを作成して、それにパラメーターを 与えてレポートから開けたんですが、ADPの場合 はどのようにするんでしょうか?。 簡単なストアドプロシージャにパラメーターを与えて、 レポートなどを実行する方法はわかったのですが、 そこで行き詰まっています。 あるストアドを元に、さらにストアドを作るようなことは できるでしょうか?。
55 名前:名無しさん@そうだ選挙にいこう [02/09/03 12:54] >>54 >簡単なストアドプロシージャにパラメーターを与えて、 >レポートなどを実行する方法はわかったのですが、 >そこで行き詰まっています。 う〜〜ん、そこまで分かってるのなら完璧じゃないですか。 何に行き詰まってますか? >あるストアドを元に、さらにストアドを作るようなことは >できるでしょうか?。 ストアドはテキストですのでコピーして張り付けだと思いますが。 ストアドはクエリよりも色々なことが出来て便利だと思ってます。
56 名前:名無しさん@そうだ選挙にいこう [02/09/03 13:13] >>54 レポートでパラメータを使いたいのなら、 1.従来クエリで作ってた部分をストアドプロシージャとして作る。 2.クエリのパラメータはストアドの引数に置き換えて作る。 (例)fooというテーブルのCODEフィードで絞り込みする場合 Create Procedure test ( @code int ) As SELECT * FROM foo WHERE CODE=@code return 3.パラメータ入力用のフォームを作る。 (例)form1というフォームにtxtCodeという名前のテキストボックスを付ける 4.そのストアドプロシージャをレコードソースにしたレポートを作る。 レポートの「入力パラメータ」プロパティを設定する。 (例)@code int=Forms!form1!txtCode 5.あとはそのフォームを開いてテキストボックスにコードが入っている 状態で、4.のレポートを開くとコードで絞り込まれてレポートが開かれる。 実際には3.のフォームにレポートを開くボタンを付けるとよい。 ストアドプロシージャをソースにしたストアドプロシージャは作れない ので、SQL文を工夫してストアド一つにまとめるしかないと思われ
57 名前:54 [02/09/03 16:31] >55さん、56さん レスありがとうございました。ACCESSで7年ほど飯を食ってきましたが、 ここにきてまた新たに勉強しなおします。 MDBのように、Aクエリーを元にしてBクエリーを作成して、集計結果の レコードセットを得る、というやり方に慣れてしまったので、 ストアドでも同じことをしたいと思って質問させていただきました。 現在、MDBのクエリビルダのSQLソースをストアドに貼り付けて 地道に作業していますが、繰り返すうちにやっと構文の基本くらいは わかってきました・・・。 >ストアドプロシージャをソースにしたストアドプロシージャは作れない >ので、SQL文を工夫してストアド一つにまとめるしかないと思われ これが答えなんですね・・。とりあえず、SQLの結果を テーブルにINSERTして、そのテーブルを元にまたSQLを書く、という 方法で回避することにします。モジュールの中で発行するので 直接SQL?とかいうやつになっちゃうんですが・・。 >ストアドはクエリよりも色々なことが出来て便利だと思ってます。 そう思えるようにがんばります。 ちなみにACCESS2002も手元にありますが、ためしにインストールしたら 早速落ちました。
58 名前:名無しさん@そうだ選挙にいこう mailto:sage [02/09/13 16:15] >57 AccessのクエリがレコードソースのクエリのようなものをSQLサーバーなんかで作る場合は 1. ストアドの中のSQLの中にインラインで書く 2. ストアドの中で一時テーブルに結果のレコードを入れて、 同じストアドの中でそれを元にしたSQLを作る 3. VIEWをレコードソースに使う とかいろいろ手があります。 データ操作に関してはAccessでクエリ+(マクロ or VBA)でやっていたことのほとんどは ストアドのみでやれると思っていいかと。 同時アクセスの場合の処理とかを考えるとストアドがおすすめ。 あとSQL Server 2000の場合はAccess2002を使ったほうが ユーザー定義関数に対応している等でイイと思う。 (Access2002でDBを作成した場合、デフォルトのセキュリティが甘甘なのには注意)
59 名前:名無しさん@そうだ選挙にいこう [02/09/22 16:19] 今までLANでAccess97使用しているんですが、電話接続環境でもAccess使用すること になったらSQLserver等もっとしっかりしたデータベースソフト入れないといけませんか? それとも、なんとかしてAccessだけでも電話接続環境でも使用できるんでしょうか? 初歩的な質問ですいませんが よろしくお願いします。
60 名前:名無しさん@そうだ選挙にいこう mailto:sage [02/12/10 00:01] 10000レコードのテーブルから20件を抽出するクエリをリモートから実行した時、 レコードすべてをリモート側に引っ張ってきてから20件を抽出するのがAccess、 抽出結果の20件だけをリモート側で引っ張れるのがSQLserver。 どちらでも動くが効率はSQLの方が断然良い。
61 名前:山崎渉 mailto:(^^)sage [03/01/15 16:53] (^^)
62 名前:名無しさん@そうだ選挙にいこう [03/01/24 00:46] www.isis.ne.jp/ www.maromaro.com/ www.tomita.net/ 本を読もう
63 名前:名無しさん@そうだ選挙にいこう mailto:sage [03/01/27 15:34] 試験
64 名前:名無しさん@そうだ選挙にいこう [03/02/05 06:50] SQLServer7.0を最近触り始めたのですが教えてください。 あるマシンで作ったデータベースなんですが、C:\MSSQL7\DATA\hogehoge.MDF ファイルを別のマシンにコピーしてデータベースとして認識させるにはどうやっ たらいいんですか?インクルードで取り込もうとしても、元マシンはSQL-Server のシステムは消してしまって接続できずデータだけ残っているので…
65 名前:名無しさん@そうだ選挙にいこう [03/02/05 06:55] homepage3.nifty.com/digikei/ten.html いいね〜 これ♪
66 名前:名無しさん@そうだ選挙にいこう [03/02/07 16:58] >>64 sp_detach_dbを調べて味噌
67 名前:64 [03/02/07 17:50] >>66 w(゚o゚)w オオ〜。これこれ。無事解決。 ありがとうございました。
68 名前:名無しさん@そうだ選挙にいこう [03/02/25 17:59] 教えてください・・・。 パラメータが設定されたストアドプロシージャの結果を エクセルに書き出す方法は無いでしょうか?。 DoCmd.OutputTo acOutputStoredProcedure, "ストアドプロシージャ名", acFormatXLS, _ EXCELファイル名, True だと、パラメータの内容を入力するウィンドウが表示されます。 これを自動化したいのですが。 よろしくお願いします。
69 名前:名無しさん@そうだ選挙にいこう [03/02/26 10:59] 明細を伴う伝票入力で、明細部をワークテーブルにして一括確定する場合 新規入力(追加)の場合と削除の場合はいいのですが、修正(更新)の場合は どのようなやり方が一般的なのでしょうか? 入力したレコードが既にあれば更新、なければ追加すると聞いたんですが これだと一件一件レコードごとに処理しなければならないですよね。 私は修正を行う明細行を全て削除して、その後ワークテーブルのデータを全て追加する というやり方をしてたら、普通はそんなやり方をしないと会社の人に言われました。 皆さんはどのようなやり方をしているのでしょうか?
70 名前:タダで!? [03/02/26 11:32] YAHOO!BBのユーザーへの特報!!! 今YAHOO!BBでADSLを利用されてる方。 月額料金を無料にできる方法をお教えします。確実な方法です し方法も一つではなく何通りお教えしますので、ヤフーbbのユ ーザーである限り料金発生なくずっと使えます。 興味のある方は以下のメールアドレスに連絡ください。 料金をとめる方法は少しの謝礼でお教えします。 ryoukinn5000@yahoo.co.jp ryoukinn2003@yahoo.co.jp よろしくお願いします。
71 名前:名無しさん@そうだ選挙にいこう [03/02/26 12:40] >69 私自身は最近コーディングはほとんどしないのですが、明細形式のデータを変更する 時はワークのDelete-Writeを一括で行いますね。他者に依頼するときも仕様書にもそう 明記します。 パフォーマンス的にどうとはケースバイケースなので正直なんともいえませんが、 アフォな人 or 新人君に1行づつcommitされたりするような変なコーディングを防ぐため です。
72 名前:名無しさん@そうだ選挙にいこう mailto:sage [03/02/26 21:35] 最近はセキュリティーが不安で使えない。
73 名前:名無しさん@そうだ選挙にいこう [03/02/26 23:50] この辺読んだ?? 入門 www.sqlpassj.org/bunkakai/begin/series/default.aspx SQLServerテーブル回転! support.microsoft.com/default.aspx?scid=kb;ja;JP175574 MSDE を含む ADP の配置方法 support.microsoft.com/default.aspx?scid=kb;ja;jp240293 SQL Server 2000 自習書シリーズ www.microsoft.com/japan/sql/techinfo/sqleval/self_doc.asp MSDE による Access ソリューションの作成および展開 www.microsoft.com/japan/msdn/officedev/officexp/odc_modmsde.asp Transact-SQL の概要 www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/tsqlref/ts_tsqlcon_6lyk.asp
74 名前:名無しさん@そうだ選挙にいこう [03/02/27 21:30] ADOで非連結のフォームを使ってConnectionを接続するのはどのタイミングで 行うのが良いのでしょうか? 書籍等を読んでも、フォームを開くときに接続して、閉じるときに接続を切るやり方 と、起動時に接続してずっと接続したままのやり方とあってケースバイケースだとは 思うのですが、皆さんはどのようにしているのでしょうか? また、フォームを開いたときとかにはまだ接続せず、登録ボタン等を押下して はじめてconnectionを接続して、登録が確定したらすぐまた接続を切るようなやり方は 良くないのでしょうか?
75 名前:名無しさん@そうだ選挙にいこう mailto:sage [03/02/28 21:20] >>74 ttp://www.users.gr.jp/ml/archive/access/Access81.asp ここの08145からは参考になりませんか?
76 名前:山崎渉 mailto:(^^) [03/03/13 16:45] (^^)
77 名前:名無しさん@そうだ選挙にいこう mailto:sage [03/04/05 13:16] 64.246.31.103/FREE/20030404/@@@@@@@@@@@@@@@@@@@@/&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&/ ((((((((((((((((((((/1234567890.0987654321/1234567890.0987654321/1234567890.0987654321/G267AB.asf
78 名前:名無しさん@そうだ選挙にいこう [03/04/11 12:01] >>74 神後輪!!
79 名前:名無しさん@そうだ選挙にいこう [03/04/11 12:37] SplServerです。 dtsパッケージで固定長txtでエクスポートすると一行の長さがずれるのですが。 ちなみに全角半角混在カラムがあります。 バグでしょうか?
80 名前:名無しさん@そうだ選挙にいこう [03/04/12 01:54] >>79 バグです support.microsoft.com/default.aspx?scid=kb;ja;271247
81 名前:79 [03/04/12 22:15] うわSplだって。。 携帯からだったのでスマソ。。。 >> 80 レスThx! うーん、インポートでなくエクスポートなんですけどね。。 とりあえずDTSでは固定長でデータのやり取りするな、ということでしょうかね。。 ショボイなぁ。。。
82 名前:山崎渉 mailto:(^^) [03/04/17 11:35] (^^)
83 名前:山崎渉 mailto:(^^)sage [03/04/20 06:11] ∧_∧ ( ^^ )< ぬるぽ(^^)
84 名前:名無しさん@そうだ選挙にいこう [03/04/21 21:24] すいません。SQL-server 7.0 についてお教え下さい。 業務のため Desktop Edition を各クライアントマシンに導入したい のですが台数の制約は何台までなのでしょうか? 参考までにここを見たのですが... support.microsoft.com/default.aspx?scid=kb;ja;207809 接続クライアント数モード ライセンス (CAL) により、 カバーされているクライアント コンピュータにおける使用の場合に限り、 ライセンスが与えられています。 ・・・・・一応条件を満たしているのですが、100台近くの クライアントマシンには適用できるかはちょっとわからないのです。
85 名前:動画直リン [03/04/21 21:35] homepage.mac.com/hitomi18/
86 名前:名無しさん@そうだ選挙にいこう mailto:sage [03/04/21 21:50] >>84 どんなシステムなんだろう? 非常に気になる
87 名前:名無しさん@そうだ選挙にいこう [03/04/22 01:39] >>86 いや、たいしたことないのです。 鉄鋼メーカーで、あるシミュレーションをしたいとの要望がありまして 現行は中央のSQLサーバーでマスタデータを保管し、 クライアント端末にはAccessベースのシステムを置いています。 クライアントは中央からマスタデータを取り込んで クエリーで処理し、結果をまたSQLサーバへ反映という具合にしていました。 しかし、遅い・不安定等で大幅改善を命じられてしまいました。 このため、Accessを Desktop EditionのSQLサーバを置き換え、 プロシジャーで高速化を図ろうとしています。 でこのシミュレーションを行うクライアントが100,200台ほどあるのです。 中央で全て処理すればいいのでは、という意見もありがちですが システムの性格上、設計者のパソコン内で完結させないといけないという 制約もあり、ちょっと厄介になっております。 MS製品は品質は良いのですがライセンスに縛られるので 十分な下調べが必要と思い書き込みさせていただきました。 所有する、一つのSQLサーバ7.0で複数のクライアントに Desktop Editionは導入できるものでしょうか ご存じでしたらどうかよろしくお願いいたします。
88 名前:bloom [03/04/22 02:05] homepage.mac.com/ayaya16/
89 名前:名無しさん@そうだ選挙にいこう [03/04/22 04:52] SQL Server2000のクエリアナライザでクエリを発行する時に, 「統計」オプションを選ぶと実行時間みたいなのがでてくると 思うのですが,それの時間の単位ってなんでしょうか? ご存知の方いらっしゃいませんか? ミリ秒かマイクロ秒か・・・・ 例えばこんな感じなんですが・・・・ {合計,平均} クライアントの累積処理時間 4 1.46667 サーバー応答の累積待機時間 6 1.86667
90 名前:名無しさん@そうだ選挙にいこう [03/04/22 04:53] {合計,平均}じゃなくて{値,平均}でした... しかも一個のクエリでの問い合わせでも 値=平均 にならないのが 怪しい・・・・・なんだろ・・・
91 名前:名無しさん@そうだ選挙にいこう [03/05/15 20:51] Win2K + Access2002 + MSDE でテスト開発をしています。 が、オブジェクトバーにストアドプロシージャの項目がないんです! 新しいプロジェクトを作成してもでてきません。 何か裏コマンドでもあるのでしょうか?
92 名前:山崎渉 mailto:(^^) [03/05/22 01:52] ━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―
93 名前:山崎渉 mailto:(^^) [03/05/28 16:58] ∧_∧ ピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。 =〔~∪ ̄ ̄〕 = ◎――◎ 山崎渉
94 名前:名無しさん@そうだ選挙にいこう [03/06/17 17:29] Access2002 + MSDEを使ってます。 フォームにある日付範囲を基に一時テーブル(##TEMPTABLE)をプロシージャで作りました。 ##TEMPTABLEをレコードソースとしてレポートに表示させようとするとエラーが出ます。 「このフォームまたはレポートで指定されているレコードソース ##TEMPTABLE は存在しません」 ##TEMPTABLEをレコードソースとしてフォームを開くとうまく動作します。 レポートだけは特別なにかすべき事がありますか? 詳しい方の回答待っております。
95 名前:名無しさん@そうだ選挙にいこう [03/06/17 18:16] (σ・∀・)σゲッツ!!ならココね www3.kcn.ne.jp/~barozza/ 荒らすの楽しいね
96 名前:名無しさん@そうだ選挙にいこう mailto:sage [03/06/17 19:52] >>94 www.horikawa.ne.jp/msde/gihyo/sql04/sql04_03.html
97 名前:94 [03/06/19 20:07] >>96 レスありがとうございます 結局、フォームから呼び出されたストアドによって作られた一時テーブルを レポートのレコードソースにすることができなさそうですね。 レポートのレコードソースをストアド名にしてパラメータを渡すとうまく 動作するのですが、それだったら一時テーブルを作る意味がないですしね。。。
98 名前:名無しさん@そうだ選挙にいこう [03/07/06 21:01] Win2K,Access2K,MSDEを使っています。 抽出したデータ(Recordset)を区切り形式のtxtファイルとしてエクスポートしたいのですが、 何か良い方法はありませんか?
99 名前:名無しさん@そうだ選挙にいこう mailto:sage [03/07/07 01:24] >>98 ストアドでbcpを起動してエクスポートする bcpとかxp_cmdshellを検索すれば分かると思う ストアドとフォーマットファイル作る ストアド例 EXECUTE master.dbo.xp_cmdshell 'c:\mssql7\Binn\bcp mydb.dbo.mytb out c:\test.txt -PXXXXXX -fc:\test.fmt'
100 名前:名無しさん@そうだ選挙にいこう [03/07/14 22:05] 皆さん、フィールド名付きのcsvへのエクスポートって、どのような 方法でやっているんですか?bcpじゃ出来ないみたいなんですけど。 txtボックスにWHERE句以降を書き、コマンドボタンクリックで上記の ようなcsvにエクスポートしたいのですが、良い方法がありましたら 教えてください。
101 名前:名無しさん@そうだ選挙にいこう mailto:sage [03/07/15 00:58] >100 自分で考えろ
102 名前:名無しさん@そうだ選挙にいこう mailto:sage [03/07/15 09:13] 100じゃないが、自分で考えろじゃ掲示板の意味ねーw
103 名前:名無しさん@そうだ選挙にいこう mailto:sage [03/07/15 09:43] ところで>>100 と>>98 って同一人物?
104 名前:山崎 渉 mailto:(^^) [03/07/15 11:15] __∧_∧_ |( ^^ )| <寝るぽ(^^) |\⌒⌒⌒\ \ |⌒⌒⌒~| 山崎渉 ~ ̄ ̄ ̄ ̄
105 名前:ぼるじょあ ◆ySd1dMH5Gk mailto:(^^) [03/08/02 05:28] ∧_∧ ∧_∧ ピュ.ー ( ・3・) ( ^^ ) <これからも僕たちを応援して下さいね(^^)。 =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕 = ◎――――――◎ 山崎渉&ぼるじょあ
106 名前:名無しさん@そうだ選挙にいこう [03/08/04 06:23] WinXP,Access2K,MSDEから質問です。 サーバーのバッチファイルを呼び出してバックアップおよびレストアを試みたいのですが 「osqlは無効なコマンドです」 と蹴られてしまいます。 サーバー上で直接バッチファイルを起動するときちんと動作します。 クライアント側からサーバーのosqlを使うことはできないのでしょうか? ご存知の方 教えてください m(__)m バッチファイルの中身は下記の通りです。 [ backup.bat ] osql -U sa -P -d sampledb -i backup.sql [ backup.sql ] BACKUP DATABASE sampledb TO DISK = 'c:\sampledb_bak.dat' GO
107 名前:名無しさん@そうだ選挙にいこう [03/08/10 22:39] SQL Sever Standerd Editin か Enterprise Edition を普通の Win2K か WinXP 上で動作可能でしょうか?お教えください。 マイクロソフトではサーバ以外では対応してないようです。 よろしくお願いします。
108 名前:名無しさん@そうだ選挙にいこう [03/08/11 00:19] >>107 ライセンスの問題があるので無理。M$はWindows Workstation(Win2000Pro, WinXP等)上でSQL Serverを稼働して欲しくないようだ。 Windows Workstation上でどうしても動かしたいのなら、vmwareかVirtualPC使え。 仮想マシン上にWindows ServerとSQL Serverをインストールすればいい。
109 名前:名無しさん@そうだ選挙にいこう [03/08/11 08:59] どちらにも Personal Edition が同梱されているはずなので それ使え。
110 名前:_ mailto:sage [03/08/11 09:03] homepage.mac.com/hiroyuki45/
111 名前:名無しさん@そうだ選挙にいこう [03/08/11 09:07] >>108 ,>>109 レス、ありがとうございました。自分で試してみましたが インストールではじかれました。 とりあえず Personal Edition を入れて試してみます。 Thanks again !
112 名前:山崎 渉 mailto:(^^) [03/08/15 22:06] (⌒V⌒) │ ^ ^ │<これからも僕を応援して下さいね(^^)。 ⊂| |つ (_)(_) 山崎パン
113 名前:山崎 渉 mailto:(^^) [03/08/15 22:42] (⌒V⌒) │ ^ ^ │<これからも僕を応援して下さいね(^^)。 ⊂| |つ (_)(_) 山崎パン
114 名前:名無しさん@そうだ選挙にいこう [03/10/14 23:41] yada
115 名前:Take2Ch mailto:sage [03/10/18 00:25] 保守
116 名前:Take2Ch mailto:sage [03/10/19 21:27] 保守
117 名前:名無しさん@そうだ選挙にいこう [03/10/21 13:11] みなさんADPで明細型の伝票入力行う時、 #のついた一時テーブルをレコードソースにしているのですか? 通常のテーブルを用意しておいて、HOST_ID関数でクライアントごとに 抽出を行うってやり方が定説だと思ってたんですが、 どうなんですかね?
118 名前:名無しさん@そうだ選挙にいこう mailto:sage [03/10/21 21:27] >>117 自分は一時テーブルをレコードソースにしている この方法で明細型入力を部品化してるので自分はこれが一番簡単 運用中にネットワークやクライアントがダウンしても、一時テーブルが無くなるだけで手間いらずだし 普通のテーブル使っても方法は有るんだろうけどね
119 名前:名無しさん@そうだ選挙にいこう mailto:sage [03/10/21 22:30] >>117 接続数が多いとローカル一時テーブル(#)の作成数も増えるので 臨機応変に。 おいらはグローバル一時テーブル(##)多用。 HOST_ID関数使うのは同じ。
120 名前:117 mailto:sage [03/10/22 09:55] >>118 ,119 そうですか。MSDEのメーリングリストで一時テーブルは クライアントのダウンに弱いから通常のテーブルを使用しましょう との事でしたので、今までそうしてたのですが、 ところで既に出ているのですが、118さんは#の一時テーブル使った時 主キーの制約名はどのように設定してますか?
121 名前:118 mailto:sage [03/10/22 21:05] >>120 あまりマニュアルを読んだことが無く、深く考えたことも無いので間違ってるかもしれません 自分も>>119 さんと同じようにグローバル一時テーブルで、HOST_IDでテーブル名を作ってました 何か理由有ってローカル一時テーブルを使えなかったのだと思いますが、当時のことを思い出せません 主キーを設定してる部分を抜き出してみるとこんな感じです EXEC (' ALTER TABLE ' + @temp_name + ' ADD CONSTRAINT PK_' + @temp_name + ' PRIMARY KEY (伝票番号,伝票行番号) ') 答えになってないかな?
122 名前:Take2Ch mailto:sage [03/10/24 01:01] 保守
123 名前:Take2Ch mailto:sage [03/10/24 01:02] 保守
124 名前:名無しさん@そうだ選挙にいこう [03/10/28 22:40] 質問お願いします。 SQLServer+Accessプロジェクト(ADP)で開発をしております。 Accessで開発していたものをSQLServerにアップサイジング する際に、クエリに連結していた帳票フォームを、ストアド プロシージャで作成したグローバル(##)一時テーブルに 連結したフォームに変更しようと思ってそのようにしましたが フォームを開くと参照のみで更新ができません。 (フォーム一番下の→*ボタンが使用不可になっています) ユーザーにテーブル作成の権限を与えて一時テーブルではなく 通常テーブルを作成してそのテーブルをフォームに連結すると 更新が可能となります。 一般ユーザーではなくdboでは上記の一時テーブルでも更新可能 となりました。 WEBで調べたところ Use tempdb GRANT ALL ON ##(テーブル名) TO guest を実行すればいいということで、クエリアナライザから実行した 後にはフォームから変更することができましたが、これをVBAの モジュール内でどのように記述すればよいのかわかりません。 ストアドプロシージャ内でuseコマンドは使えませんでした。 よろしくお願いいたします。
125 名前:名無しさん@そうだ選挙にいこう [03/11/11 23:30] naruhodo
126 名前:名無しさん@そうだ選挙にいこう [03/11/13 09:26] [使用OS]:XP HomeEdition [AccessVer]:2002 SP-2 SQL Serverで開発をしています。 突然、「データリンクプロパティ」の「パスワードを保存する」にチェックが入らなく なってしまいました。何度チェックをつけても、開いた時には消えてしまいます。 ソフトを開いた時にもパスワードを要求されます。 アプリケーションの自動修復もしましたが、何も異常はありませんでした。 何が原因でしょうか?
127 名前:名無しさん@そうだ選挙にいこう mailto:sage [03/11/14 01:42] >>126 NT認証になってるからとか?
128 名前:126 [03/11/14 08:18] >>127 レス、ありがとうございます。 どこで調べればいいんでしょう? ちなみにSQLServerは、同じPCに入っています。
129 名前:126 [03/11/14 15:44] あ、分かりました。NT認証にはなってないです。 ユーザー名は、sa で、パスワードは、ブランクです。 どうして保存できないんでしょうか・・・。
130 名前:名無しさん@そうだ選挙にいこう mailto:sage [03/11/18 13:12] saにパスワード設定してやってみるとか。 Accessとは関係ないけどsaにはパスワード設定したほうがよいのでは?
131 名前:名無しさん@そうだ選挙にいこう [04/02/03 10:43] SQL2000+Aceess2000環境で複数の人数で、互いにadpを作ってプログラムしていたのですが、 統合しようとしてテーブルやフォームはインポート、エクスポート出来るんだけど、 クエリー(ビュー)はインポート出来ないんですよね。 統合環境で、クエリーを作る直さないとダメなんでしょうか?
132 名前:名無しさん@そうだ選挙にいこう mailto:sage [04/02/03 11:02] pc2.2ch.net/db/
133 名前:名無しさん@そうだ選挙にいこう mailto:sage [04/02/07 21:33] >>131 EnterpriseManager でスクリプト吐き出す。
134 名前:名無しさん@そうだ選挙にいこう mailto:sage [04/02/08 11:14] 「最新の情報に更新」で済むんじゃないの?
135 名前:名無しさん@そうだ選挙にいこう [04/02/29 02:12] ADPで明細型の伝票入力を行うときサブフォームのレコードソースは ワークテーブルをそのまま割り当ててますか? それともストアド?ビュー? ストアドやテーブル直接だと数量や金額を入力しても サブフォームのフッターの合計金額がレコード移動しないと変わらないし、 ビューだと並び替えできないし・・ やっぱり、金額を入力したあとのイベントで合計を表示させるように コード書かなきゃだめかな? みなさんどうしてます?
136 名前:名無しさん@そうだ選挙にいこう [04/05/09 18:55] え
137 名前:名無しさん@そうだ選挙にいこう [04/05/11 18:35] ふむふむ
138 名前:名無しさん@そうだ選挙にいこう [04/06/08 20:41] >>135 レコード移動で金額が出れば充分じゃん
139 名前:名無しさん@そうだ選挙にいこう mailto:sage [05/02/02 23:39:59 ] >>135 requeryじゃダメなの?
140 名前:名無しさん@そうだ選挙にいこう [2005/06/27(月) 15:38:41 ] >>135 それをやるならVBのほうが良いと思うよ
141 名前:名無しさん@そうだ選挙にいこう [2006/02/21(火) 20:31:41 ] Microsoft office 2000のAccessのイベント管理や家計簿などのデータベースの ファイルは何処からダウンロードできますか?知っている人は教えてください。
142 名前:名無しさん@そうだ選挙にいこう mailto:sage [2006/02/21(火) 20:52:26 ] お前ら、一年前の質問にレスつけんなよ
143 名前:名無しさん@そうだ選挙にいこう [2006/02/23(木) 08:35:25 ] そういうお前も半年前の(ry
144 名前:名無しさん@そうだ選挙にいこう mailto:sage [2006/02/23(木) 18:29:31 ] 二日前のイチャモンにレスt
145 名前:名無しさん@そうだ選挙にいこう [2006/02/24(金) 05:06:29 ] 息の長いスレの存在を知らしめるべくAge
146 名前:名無しさん@そうだ選挙にいこう [2006/03/08(水) 00:03:42 ] ACCESS+SQL ServerでADO開発を行うのですが、お勧め本とか あったら教えて下さい。 特に、排他制御等のトランザクション制御に関して、詳しい情報を 探しています。
147 名前:名無しさん@そうだ選挙にいこう mailto:sage [2006/03/08(水) 00:21:11 ] >>146 ★Microsoft Access★ pc8.2ch.net/test/read.cgi/tech/1064900050/228 【まだまだ】Microsoft Access クエリ3【使える】 pc8.2ch.net/test/read.cgi/db/1120779000/562 お前はどんだけマルチすりゃ気が済むんだ?
148 名前:名無しさん@そうだ選挙にいこう [2006/03/11(土) 13:12:51 ] VPN経由で本社DBサーバを使用する拠点アプリをSQL+ACCESSで考えてますが、 やっぱCITRIXとか必要?
149 名前:名無しさん@そうだ選挙にいこう mailto:sage [2007/01/25(木) 12:34:32 ] a
150 名前:名無しさん@そうだ選挙にいこう mailto:sage [2007/01/25(木) 12:35:27 ] i
151 名前:名無しさん@そうだ選挙にいこう [2007/05/15(火) 08:58:44 ] SQL Server 2005 Express の話題ちーとも出てないけど、みんなスルー? それともダンマリ(笑)?
152 名前:名無しさん@そうだ選挙にいこう [2007/08/29(水) 17:56:34 ] ACCESS2000何も分かりません。 なんか教えろ
153 名前:名無しさん@そうだ選挙にいこう mailto:sage [2007/08/30(木) 00:36:43 ] >>152 ACCESS2000は、Office2000Parsonalには入っていません。 バージョンは9.0です。
154 名前:名無しさん@そうだ選挙にいこう mailto:sage [2008/01/19(土) 05:39:36 ] Accessは超初心者です。 mdbファイル内で定義されている各種のオブジェクト、プロパティ定義、VBAを一気に 全部テキストファイルに書き出すことはできるのでしょうか? よろしくお願い致します。
155 名前:名無しさん@そうだ選挙にいこう mailto:sage [2008/01/19(土) 09:27:55 ] それぞれのオブジェクトをこんな風に書けばできる。 Sub AllTables() Dim obj As AccessObject, dbs As Object Set dbs = Application.CurrentData ' AllTables コレクションの開いている AccessObject オブジェクトを検索します。 For Each obj In dbs.AllTables Debug.Print obj.Name Next obj End Sub msdn.microsoft.com/library/ja/default.asp?url=/library/ja/vbaac11/html/accolAllForms.asp
156 名前:名無しさん@そうだ選挙にいこう mailto:sage [2008/01/23(水) 06:26:43 ] >>155 貴重な情報をいただき、ありがとうございましら。
157 名前:名無しさん@そうだ選挙にいこう mailto:sage [2008/06/25(水) 21:18:54 ] hoge.mdbをwクリックするとデータを入力するダイアログが出ます。 このデータを入力するダイアログをコピーして改造したいのですが、 alt+f11は通用しませんでした。 プログラムがどこにあるかわかりません。エキスパートの皆さまお教えください。
158 名前:名無しさん@そうだ選挙にいこう [2009/01/21(水) 14:28:53 ] age
159 名前:名無しさん@そうだ選挙にいこう [2009/01/22(木) 17:24:11 ] 68 名前:名無しさん@そうだ選挙にいこう[] 投稿日:2009/01/21(水) 10:44:20 特許庁のシステムとか、西武百貨店のシステムとか、三井リハウスのシステムとか アクセス→QSLサーバー接続で作ったシステムです それぞれ、プロが数千万円の助成金で作ったシステムです 見本としてドゾー 469 名前: すずめちゃん(アラバマ州)[sage] 投稿日:2009/01/21(水) 10:37:01.88 ID:dHGJSy0O ほれ全部うpした 解凍したら6Gになるから ipa-giwaku.com/filebank/3.rar 拡張子.dbxは下のフリーソフト使えば見れるようになるよ www.asahi-net.or.jp/~tz2s-nsmr/soft/dbxview/ne03ws.htm 拡張子.mdbはエクセルで開ける パスは DD`(4Y か test で だいたい開ける それでもダメなら報告してね まずかったら消す 71 名前:名無しさん@そうだ選挙にいこう[] 投稿日:2009/01/21(水) 16:16:15 >>68 分割してダウンロードしやすいのはコッチ 特許庁のシステムとか、西武百貨店のシステムとか、三井リハウスのシステムとか アクセス→QSLサーバー接続で作ったシステムです それぞれ、プロが数千万円の報酬や助成金で作ったシステムです プログラム作成のお勉強見本としてドゾー www.megarotic.com/jp/?d=5QJSGGIV www.megarotic.com/jp/?d=Y6UWMAXE www.megarotic.com/jp/?d=XL71JT2W 基本はnews
160 名前:名無しさん@そうだ選挙にいこう [2009/01/25(日) 12:08:21 ] 313 名前: すずめちゃん(アラバマ州)[sage] 投稿日:2009/01/24(土) 17:19:53.45 ID:97CqafnI 特許庁のシステムとか、西武百貨店のシステムとか、三井リハウスのシステムとか アクセス→SQLサーバー接続で作ったシステムです それぞれ、プロが数千万円の報酬や助成金で作った、総額ん億円のシステムです プログラム作成のお勉強見本としてドゾー [殺人] Administrator(20081230-101522)のキンタマ.zip 2,263,376,860 09ed98f10653c3fc2555621ceeed6bc33e8f6228 [殺人] Administrator(20081230-101522)のメール.zip 59,426,579 4da9459b30eec31f58b86530dbb48d1cf86ef4be [写真集][IV] Administrator(20081230-101522)のアルバム.zip 2,205,946,474 9d87cc0e08dc0e3afd959fcead6c48d569787cee 476 名前: すずめちゃん(アラバマ州)[sage] 投稿日:2009/01/25(日) 12:02:20.71 ID:pNrDVo49 解析班のために岡ちゃんが流出させた上のファイル全部うpしとく パスは 135 ね 解凍したら全部で6Gあるから注意してね ウイルス削除済み (p)www.adrive.com/public/7d08fe24675fa758db8ab29ba4cae136e10a2d9958ce415d2f248de84871eb52.html (p)www.adrive.com/public/a300a6e3cecf155dda7f8c1843a9280da156b41119f79d58644217407ad6652d.html (p)www.adrive.com/public/002efa3ac3b17864e3839888a0de348b1c565c1f24f226e403086491af4adb71.html (p)www.adrive.com/public/945451d37fe9b7c3e609f5915f7abf0c9afaa1d78149ede318b38ac1724a79bc.html 負荷分散のため分けた。 全部同時にDLすれば早いぞ1時間位 全部DLしてから解凍してくれ 拡張子.dbxは下のフリーソフト使えば見れるようになるよ (p)www.asahi-net.or.jp/~tz2s-nsmr/soft/dbxview/ne03ws.htm 拡張子.mdbはエクセルで開ける 起動フォームでテーブルがブロックされるものは シフトキー押しながら起動で解除してテーブル見る 中のファイルのパスは DD`(4Y か test で だいたい開ける それでもダメなら報告してね 皆で解析するからw 後、個人情報を悪用したらダメだよw解析用だけにつかってねw
161 名前:名無しさん@そうだ選挙にいこう [2009/06/03(水) 01:56:55 ] >>156 ましらって妖怪がいなかったっけ
162 名前:名無しさん@そうだ選挙にいこう [2009/10/22(木) 23:34:46 ] lotte-fits.jp/dance/play_dance.php?v=7m58J5-N0Dw accessの新曲公開!?に、ちなんで最新情報♪
163 名前:名無しさん@そうだ選挙にいこう [2009/12/18(金) 22:42:03 ] age
164 名前:名無しさん@そうだ選挙にいこう [2010/01/17(日) 13:22:58 ] 良スレ。