検索結果
DB
- 全てのカテゴリ
- 全ての質問
- DAO エクセルvbaからアクセスのレコードの件数
DAOで、エクセルvbaからアクセスのレコードの件数を取得したいのですが Dim ac As Object Dim db As DAO.Database Dim rs As DAO.Recordset Set ac = CreateObject("Access.Application") Set db = ac.DBEngine.OpenDatabase("D:\あああ.accdb", False, True) Set rs = db.OpenRecordset("SELECT * FROM Tマスタ WHERE masterkey like '*四*';") i = rs.RecordCount Debug.Print rs("masterkey") rs.Close: Set rs = Nothing db.Close: Set db = Nothing ac.Quit: Set ac = Nothing をすると、抽出するレコードが1000件でも、必ず1が返ります。 masterkeyフィールドは文字列型です。 なぜ実際はたくさんのレコードがあるのに、1が返るのでしょうか?
- ベストアンサー
- オフィス系ソフト
- AQRIKQPYKEN
- 回答数1
- PostgreSQLのリンクテーブル?について
はじめまして、yossy136kgと申します。 下記の件、ご教授をお願いします。 ・TEST1というDBがあったとして、psqlより\dでテーブル一覧を参照すると、「No relations found.」と表示されます。 ・MS AccessからODBC経由でTEST1のDBのリンクテーブルを作成する際、別のDB(TEST2)のテーブルが参照できます。 例)TEST2.HOGE1、TEST2.HOGE2・・・ 【質問】 TEST1のDBからTEST2のDBのテーブルをリンクさせるようなことは可能なのでしょうか? ちなみにPostgreSQL8.2.3、CentOSです。
- ベストアンサー
- PostgreSQL
- yossy136kg
- 回答数1
- ボタンを押した後の動作について
下のサイトで配布されている スケジュール帳(データベース連携版)db_calendar.php について教えてください。 新規登録するときに日付を指定しています。 登録ボタンを押したときにその指定した月のカレンダーを表示するようにしたいのですが。 どのあたりを変えたら良いでしょうか? 現在は、現在の日付分を表示しています。 [PHPスクリプト無料配布コーナー] http://www.komonet.ne.jp/script.htm ソース:http://www.komonet.ne.jp/script/db_calendar/db_calendar.phps サンプル:http://www.komonet.ne.jp/script/db_calendar/db_calendar.php
- ベストアンサー
- PHP
- hiromu0103
- 回答数1
- この名前は既にあるモジュール、プロジェクト、オブジ
Sub test() Dim db As Database と宣言しているコードがあるのですが、 いきなり使えなくなりました。 コンパイルエラー プロジェクトではなく、ユーザ定義関数を指定してください。 というエラーになります。 http://okwave.jp/qa/q465366.html を参考に 「Microsoft DAO X.X Object Library」(X.Xはバージョン) にチェックを入れようとすると 「この名前は既にあるモジュール、プロジェクト、オブジェクトライブラリで使われています」 になります。 オブジェクトブラウザーで「db」を検索すると Excel.WorksheetFunction のメンバー にdbというメソッドがありました。 Dim db As Database のdbという名前が原因かなと思い、dbを違う名前に変えてみても同じです。 win8、アクセス2010です。 原因わかる方ご回答よろしくお願いします。
- ベストアンサー
- Visual Basic
- hkudmlxd
- 回答数1
- 仕事で使用している3つの顧客管理表(xlsファイル)をDB(Acces
仕事で使用している3つの顧客管理表(xlsファイル)をDB(Access)に統合し運用する案があります。 DB化は問題ないのですが、運用管理についてある問題をかかえています。 ・3つの離れた拠点で1つのDBを共有しなければいけない ・ファイルサーバーがどの拠点にも存在しない ・全てワークグループ環境で存在している という状態です。 どこかの拠点にサーバーを立てることができないため 月々かけられる管理費が数千円までなので ASPを利用する方が現実的だと思うのですが、 何か他に良い案またはDBを共有できるASPサービスを ご存知であれば教えて頂けないでしょうか。
- 締切済み
- レンタルサーバ・ASP
- takuo425
- 回答数1
- Webページから入力された情報をDBに蓄積する方法について
Web初心者です。 現在、簡単なWebページを作成しようと思っています。 Web Pageにアクセスした人が入力した情報を簡単にデータベースに登録したいと思っているのですが、市販のホームページビルダーなどで、簡単にできるものなのでしょうか。また、DBは規模にもよりますが、accessなどを利用することができるのでしょうか。 以上、ご教示の程宜しくお願い致します。
- ベストアンサー
- その他(データベース)
- ds1977
- 回答数2
- ウェブサイト及びDBサーバの負荷が高い状況への対策方法をお教えください
御世話様です。 今、ある新サイト構築をシステム開発会社へ外注しているおります。 で、Webサーバ1台(仮に、「マシンA」とします)、DBサーバ1台(仮に、「マシンB」とします)という構成です。 ですが、ホームページにアクセスしたときの表示速度が異常に悪く、 また、DBサーバの負荷も高く(バックエンドでCSVからDBへの取り込みを定期的(cron)で行っているため)、 「負荷分散」をしているとのことです。 で、「負荷分散」として具体的にやっていることは、 「マシンA」上の必要なファイル郡を「マシンB」にもコピーし、 サイトにアクセスした人によって、ランダムに「マシンA」と「マシンB」へと、 アクセス先を振り分けているとのことです。 ですが、マシンBにあたった人は、前述のようにマシンBの負荷がそもそも高いので、 やはり、ホームページの表示速度が遅くなってしまうとのことです。 「で、マシンをもう1台増設したほうがいいかもしれない」と言っています。 -- 自分は、あまりシステム開発(特にネットワーク関連)には詳しくないのですが、 かなり矛盾しているように思われます。気のせいでしょうか? 「ホームページにアクセスしたときの表示速度」が遅いといっても、 SQL文が無駄に長いものになっているため、DBの負荷が高くなっているんじゃないの?とも思うのですが。 正直、システム開発会社の言っていることも、 正確なことを言っていない可能性が高いです。 (でも、諸事情により、システム開発を他の会社に変えるということはできません) こういった状況の場合、本来は、具体的に、どのように負荷の対策をはかるべきなのでしょうか? 以上、お助け願えれば幸いでございます。
- ベストアンサー
- ハードウェア・サーバー
- daisuke_ja
- 回答数3
- テキストボックスに番号入力→番号の商品ページへ移動するのにDBは必要?
タイトルのままなのですが、ホームページ上のテキストボックスに番号入力 →その番号の商品ページや画像へ移動するのにやはりDBは必要なのでしょうか? テキストボックスの中から数字を選ぶ→ジャンプする、というものはありますが、 入力→ジャンプ、という形にしたいと思っています。 よろしくお願いします。
- ベストアンサー
- その他(データベース)
- dreddy
- 回答数2
- SJISからUTFに変換してのDB登録がある文字だけうまくいかない。
PHPとPostgresでデータベース構築中の初心者です。宜しく御願いします。 今現在なんとかSJIS(windows)からUTF(linux)へ文字コードを変換してDBへデータを入力できるようになり、テスト中なのですが、問題が発生しました。 データがある文字で終わる場合のみデータ追加ができない、という問題です。 今分かっているのは、「表」という文字です。 しかも、文字列の最後に来た場合のみエラー(SQLでINSERTできない)がでます。 例えば、「方針発表」と入力した場合、エラーですが、 「方針発表出席」と入力すればデータ追加可能です。 いろいろ調べている途中ですが原因、解決策ともにまだ不明です。 どなたか御教授願います。 ちなみに、文字コード変換は次の関数cnvで行っております。 function cnv($string, $enc){ $det_enc = mb_detect_encoding($string, "UTF8, SJIS"); if ($det_enc and $det_enc != $enc){ return mb_convert_encoding($string, $enc, $det_enc); }else{ return $string; }}
- accessのテーブル再リンク
access2000のデータベース(DB)で DBを開ける際に 同ホルダーにある特定のDBに 再リンクさせるようにしています。 現在、DAOで組んでいるんすが ADOに切り替たいと思い 方法を教え下さい。
- ベストアンサー
- その他(データベース)
- koganeton
- 回答数1
- accessのmdbが勝手にできている?
accessXPで、mdbを開いてデータを修正したときに、いつの間にかdb1、db2とmdbのコピーができていたんですが、何もした覚えが無いのです。 どんな原因が考えられるでしょうか。
- 締切済み
- その他(データベース)
- satopyon
- 回答数2
- DB(予約システム)が入っているPCの保守でデフラグはしないほうがいいのですか?
ACCESSで作成したDBが入ったPCの保守において、デフラグはしないほうがいいのでしょうか? (DBが入っている場合しないほうがいいと聞いたので。。。) どうかよろしくご教授お願い申し上げます。
- ベストアンサー
- その他(データベース)
- kimimy1
- 回答数3
- Access2002 VB で「ユーザ定義型は定義されていません」
Access2002で ------------------------------- Private Sub 起動パスの確認_Click() Dim db As DAO.Database Dim strPass As String Set db = CurrentDb strPass = db.Name Me.起動パス = strPass db.Close: Set db = Nothing End Sub ------------------------------- を実行すると コンパイルエラー: ユーザ定義型は定義されていません。 と表示されます。 他の方の質問の回答で、 ツール-参照設定 で「Microsoft DAO 3.6・・・」にチェックをつけてください。 とありましたが、ツールの中に「参照設定」が見つかりません。 この場合、どうしたら良いのでしょうか? 初歩的な質問ですみません。 教えてください。
- ベストアンサー
- その他(データベース)
- kunkuma
- 回答数1
- 関数の存在を確認したい
mysqlのあるデータベースの中に、既にcreateしたはずのfunctionが、 show tables from [db.name]; で表示された中にありませんでした。 show function from [db.name]; のような働きをするコマンドはありませんでしょうか?
- 文字と変数の結合方法について
下記の構文で「100」の値を変数にしたいのですが、どのように記述すればよいでしょうか? UCHAR select[] = "SELECT * FROM DB WHERE 番号 = 100;"; VBみたいに"SELECT * FROM DB WHERE 番号 = " & bangou & ";"のように簡単に出来ないでしょうか?
- ベストアンサー
- C・C++・C#
- poohpiglet2
- 回答数2
- CRCの使い方、mysqldumpについて
先日、社内DBのcronによる定期バックアップのデータが圧縮により破損したらしく、 顧客データを数日前まで戻さなくてはいけなくなりました。 私の所属している部署ではなかったのですが、同様の問題が発生するかもしれないので、 cronで毎日取っているバックアップデータをチェックするなどの方法を求められました。 ただ、私は経験もないため何をどうすればいいのか分かりません。 CRCでチェックすればいいのでは?と言われたのでCRCについて調べたのですが、 ググってみたのですが、CRCエラーの対処法や、CRCの解説がほとんどで、実際の使い方が見つかりません。 どのようにすれば、CRCでチェックサムを付加することができるのでしょうか? 付加したデータは専用の通信をするのでしょうか? scpやrsyncのようなコマンドがあると思っていたのですが、見つかりません… CRCでやりたいことは以下になります。 「DBサーバ 」と「DBバックアップサーバ」があり、 OSは「DBサーバ」が CentOS release 6.3 (Final) で、 「DBバックアップサーバ」が CentOS release 6.5 (Final) です。 「DBバックアップサーバ」上で mysqldump {「DBサーバ 」} {DB名} > {hoge.sql} をcronで実行しています。 この {hoge.sql} が正常か異常かを確かめたいのです。 サーバ上で障害等ない場合、mysqldumpで異常なデータが出力されたりすることはあるのでしょうか? HD上の空きには余裕がある状態で、他に特にサーバ上での問題もない場合、圧縮でデータが破損することはあるのでしょうか? CRCでできないのであれば、他にどのような手法があるのでしょうか? 完全に丸投げの質問で申し訳ないのですが、どうぞご教示をお願いいたします。
- ベストアンサー
- その他([技術者向] コンピューター)
- commocommo
- 回答数3
- 最適化について
WinServer2003 のタスクスケジュールを使用して毎日曜日にDB(SQLServer2005)の最適化とHDDのデフラグを行うように設定しています。 タスクのログから起動した形跡はあるのですが最適化が実施されません。 Windowsにログインしている状態でbatを実行すると処理されます。 通常はログオフ状態になっており、このタスクもログオフの状態で起動(0:00起動)するように設定してあります。 また、DBの最適化なのですが、設計段階の見積容量と実際のデータ容量が大きく異なり、DBの初期サイズが実サイズを超過しています。 DB元となるデータは、20種類程のCSVファイルからINPORTするため、全部を合計しても800MB程度しかありません。 DBの初期サイズ (DATA:10G LOG:5G) を変更したいのですがどうすればよろしいでしょうか? 以下のbatからDBの最適化を行っていますが、次のメッセージが表示され最適化されません。(HDDの空き容量は15GBあります) ※DB停止中はDBの最適化はできませんでした。 以上、なぜ実施されないのか分かりませんのでお教え願います。 <DB最適化結果> DBCC SHRINKDATABASE:データベースID 7 のファイルID 1 がスキップされました。ファイルに再利用する空き容量が不足しています。 ログファイル2 (PSSDB_Log)を圧縮できません。すべての論理ログファイルが使用中です。 <タスク設定> 毎週日曜日:0:00 実行ファイル:hdddef.bat <hdddef.batの内容> cls rem == DB 最適化 == osql -E -i d:\comp.sql rem == DB 停止 == net stop mssqlserver /Y rem == C HDD 最適化 == defrag -f c: rem == D HDD 最適化 == defrag -f d: rem == DB 起動 == net start mssqlserver /Y exit <comp.sqlの内容:pssdbはDB名です> use pssdb dbcc shrinkdatabase("pssdb",1) go
- 締切済み
- SQL Server
- Jam06
- 回答数1
- MYSQLのレコードを上書きしたいのですが…
phpからMYSQL5に接続して以下のようなデータベースを作りました。 no name comment ←カラム名 1 山田 起きる 2 山田 叫ぶ 3 山田 寝る これを上書きして、 no name comment 1 山田 食べる 2 山田 遊ぶ 3 山田 寝る というようにレコードを更新したいのです。 しかし、どうやっても1、2、3の後に4、5、6と続いてしまいます。 「no」カラムにはauto_increment+primary keyを設定しています。 phpで構文を送る前に mysql_query("alter table db1 auto_increment=0"); を設定してみたり、 mysql_query("insert into db1 (name,comment) value ('山田','$comment')"); や mysql_query("replace into db1 (name,comment) value ('山田','$comment')"); を試してみましたが、上手く行きませんでした。 現在は、 mysql_query("delete from db1"); mysql_query("alter table db1 auto_increment=0"); ---php処理--- mysql_query("insert into db1 (name,comment) value ('山田','$comment')"); というように、二度目の書き込みを行う前に一旦テーブル内のレコードを すべて削除して書きなおすという方法を取っています。 しかし、数が多くなると一旦削除する作業を行うと処理が遅くなってしまうと思いますので、上書きしてデータベースを更新したいと思っているのですが、どのようにすればよいでしょうか?
- ACCESSの SELECT SUM
SELECT SUMを 計算させると ゼロしか 出てきません。 どこが悪いのでしょうか? 日付 出金 氏名 2012/12/10 540 安田 2012/12/10 1020 斉藤 2012/12/10 970 TOM 2012/12/11 650 池田 2012/12/11 2010 南 2012/12/12 350 林田 2012/12/12 1200 加藤 のようなテーブルがあり Private Sub コマンド_click() Dim Db As Database Dim SQL As String Dim rs As Recordset Dim gokei As Long Set Db = CurrentDb SQL = "SELECT Sum(出金) as gokei FROM テーブル WHERE 日付= #" & [Forms]![フォームアルファ]![テキスト] & "# " Set rs = Db.OpenRecordset(SQL) MsgBox gokei End Sub を フォームアルファに 新しく作ったコマンドボタンのクリック時に 書きました。 これを テキストの日付を変えておいて いろいろ試しても ゼロのメッセージしか出ません。 WHERE以下が 間違っていないか 試しに Private Sub コマンド_click() Dim Db As Database Dim SQL As String Dim rs As Recordset Dim Count As Long Set Db = CurrentDb SQL = "SELECT (出金) FROM テーブル WHERE 日付= #" & [Forms]![フォームアルファ]![テキスト] & "# " Set rs = Db.OpenRecordset(SQL) If rs.EOF Then Count = 0 Else rs.MoveLast Count = rs.RecordCount End If MsgBox Count End Sub を 実行すると ちゃんと 正しいレコード数が 表示されます。 「出金」のデータ型は 長整数になっています。 どこが 悪いのでしょうか? 目的は 指定した日付の 出金の合計を取り出したいのです。 . . .