Office Access のバックアップ(No.4) - PukiWiki

技術メモ?

パスワードを修正・最適化
[edit]

Accessのパスワードを修正
http://topic.csdn.net/t/20050121/19/3744752.html

Visual C# .NET を使用して Microsoft Access データベースを最適化する方法
http://support.microsoft.com/kb/306538/ja

try
{
    JRO.JetEngine jro = new JRO.JetEngine();

    string OldDb = "Provider=Microsoft.Jet.OLEDB.4.0;" +
          "Data Source=" + accessPath_ + "ZxrOffice.mdb;Jet OLEDB:Database Password=123456";
    string NewDb = "Provider=Microsoft.Jet.OLEDB.4.0;" +
           "Data Source=" + accessPath_ + "newZxrOffice.mdb;Jet OLEDB:Database Password=tthtth";
              
    jro.CompactDatabase(OldDb, NewDb);
               
    Console.WriteLine("Finished Compacting Database");
}
catch (Exception ex)
{
    MessageBox.Show("The following error occurred: " + ex.Message);
}
このページのトップへ

外部Accessファイルの参照
[edit]

Access に外部データの指定に相対パスの利用はできない。必ず本番環境と同じ用に、構成しなければ、ならない。
#利用しないほうがいいでしょうね

Microsoft Access 英語のサイトの情報によって、VBAで外部ファイルへのリックを相対パスで書けるようです
http://en.wikipedia.org/wiki/Microsoft_Access

下記は参考サイト:
http://vba.officehp.com/article/98176821.html

http://bytes.com/topic/access/answers/496621-make-linked-table-have-relative-path

Access のマクロ機能で外部リンクを追加する動作を記録して、様子をみようか

Microsoft Access VBA集
http://nydela.sakura.ne.jp/vb/vb_2.htm#vb_1
外部データベースのフルパス記述

外部データベースのテーブルを参照したり、外部データベースのテーブルにレコードを追加したりする場合の方法は二つあって、リンクする FROM ... IN でデータベース名を指定するわけですが、リンクするのはともかくとしてこれまで IN 句で外部データベースを指定したことがありませんでした。

 まあ、要するに参照したい外部データベースと参照するデータベースのテーブル名が同じ(でもレコード数はちがう)というわけで、今回初めて IN 句を使ってみたわけですが半日はまりましたので解法を記述しておきます。

   Dim SQL As String

   SQL = "SELECT company.c_lng_index, company.c_str_namae " & _
                       "FROM company IN 'd:\access\shows\sj2004\sales_t.mdb' " & _
                       "ORDER BY company.c_str_kana;"

みたいな。

 参照されるデータベースと参照するデータベースが同じディレクトリにあればパス指定は省略できます。この場合、引用符はなくても通る場合があるみたいです。  問題は、コロン (:) とか、バックスラッシュ (\) らしいです。これらの文字列を含むと、引用符でくくらない限り実行時エラーを引き起こします。  このトピックは、ずいぶん Google で捜したのですがとうとう見つからず、自力で試行錯誤をくり返した結果、やっと解決できましたのでもしかしたら役に立つかもしれません。

このページのトップへ

ひとつテーブルの内部結合
[edit]

SELECT
 t2.id as id , 
 t2.categoryname as categoryname,
 t1.id as parentid,
 t1.categoryname as parent
FROM
 categorytable as t1 inner join categorytable as t2 on t1.id = t2.parentid";

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

G|Cg|C@Amazon Yahoo yV

z[y[W yVoC[UNLIMITȂ1~] COiq COsیI