解答Perl下如何連接Access數(shù)據(jù)庫_Access數(shù)據(jù)庫教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:Access 2007基礎(chǔ)入門手冊
      這本入門手冊是否合適你? 我只想告訴你我非常喜歡這本書。我對Microsoft Access的經(jīng)驗足以讓我跳過這本傻瓜系列教材,但是實際情況是,我非常享受于這本書中介紹Access 2007新的用戶界面的時候被過分寵壞的感覺。當然,我已經(jīng)安裝了它,并且已經(jīng)試了試新的Ri

      首先需要安裝Win32-ODBC模塊,具體的步驟如下:

      1:從TOOLS欄目中下載Win32-ODBC.zip,下載完后用winzip解開到一個temp目錄,共有三個文件:

      Readme

      Win32-ODBC.ppd

      Win32-ODBC.tar.gz

      2:在DOS窗口下,temp目錄中運行下面的DOS命令:ppm install Win32-ODBC.ppd。

      然后準備測試用數(shù)據(jù)庫(Access)

      1:啟動MS ACCESS,建立一個新空數(shù)據(jù)庫,命名為odbctest.mdb,保存在某一目錄中(記住路徑)。

      2:然后新建一個表,建立三個字段:

      字段名稱 數(shù)據(jù)類型 長度

      Name 字符, 長度50

      Email 字符, 長度50

      Age 數(shù)字、長整型

      將這個表保存為address(注意這個例子中,沒有用自動增加的ID。輸入若干記錄:

      以下為引用的內(nèi)容:

        Nighthawk nighthawk@163.net 20 1234567

        John jt@163.net 24 0284393293

        kit kit@21cn.com 18 3948932

      保存后,關(guān)閉數(shù)據(jù)庫文件。

      3:打開控制面板中的 ODBC數(shù)據(jù)源(32位),在用戶DSN欄中,找到用戶數(shù)據(jù)源列表,選中名稱為“MS Access 97 Database”的一行,然后按“配置”鍵。

      在Database框中按“Select..”,選擇步驟1.2中建立的數(shù)據(jù)庫文件odbctest.mdb,按OK即可。ODBC設(shè)置中的其它項目全部采用缺省設(shè)置,然后就是OK,確定,關(guān)閉對話窗口。

      最后進行測試:

      以下為引用的內(nèi)容:
        #!/usr/bin/perl
        use Win32::ODBC;
        $DSN = "MS Access 97 Database";
        $DBase = "access.mdb";
        #連接數(shù)據(jù)庫
        if (!($db = new Win32::ODBC($DSN))){
        print "連接數(shù)據(jù)庫失敗.n";
        exit();
        }
        else{
        print "連接數(shù)據(jù)庫成功 (連接號:", $db->Connection(), ")nn";
        }
        #數(shù)據(jù)庫中的表
        print "數(shù)據(jù)庫中的表:";
        @tables = $db->TableList;
        print @tables;
        print "n";
        #選擇數(shù)據(jù)表
        if (! $db->Sql("SELECT * FROM [address] WHERE age>=20") ){
        @FieldNames = $db->FieldNames();
        $Cols = $#FieldNames 1;
        #表中字段數(shù)
        print "表address字段數(shù):$Colsn";
        #字段列表
        for ($i = 0; $i < $Cols; $i ){
        print "$FieldNames[$i]t";
        }
        print "n";
        #列出年齡大于20的記錄
        while($db->FetchRow()) {
        @values = $db->Data();
        print @values;
        print "n";
        }
        }
        ##### sql #########
        #添加記錄
        $sqlinsert = "INSERT INTO address
        VALUES ('Euler', 'euler@21cn.com', 28, '021-345689')";
        #更新記錄
        $sqlupdate = "UPDATE address SET age = age 10 ";
        #刪除記錄
        $sqldelete = "DELETE FROM address WHERE name='jimtyan'";
        $rc = $db->Sql($sqlinsert);
        die qq(SQL 失敗 "$sqlinsert": ), $db->Error(), qq(n) if $rc;
        $rc = $db->Sql($sqlupdate);
        die qq(SQL 失敗 "$sqlupdate": ), $db->Error(), qq(n) if $rc;
        $rc = $db->Sql($sqldelete);
        die qq(SQL 失敗 "$sqldelete": ), $db->Error(), qq(n) if $rc;
        #關(guān)閉鏈接
        $db->Close();

      分享:解析為何Access數(shù)據(jù)庫的精髓不在VBA之中
      Access愛好者以會VBa為榮。我覺得這不是好現(xiàn)象。vba只是vb的子集,有著很多限制,比如不支持繼承,不支持指針,不支持子界類型等。使用vba操作Office家族之外的數(shù)據(jù)結(jié)構(gòu)是非常困難的。 vba只是Access的一個特性。實際上沒有vba微軟也可以照舊大賣access。有

      來源:模板無憂//所屬分類:Access數(shù)據(jù)庫教程/更新時間:2009-05-25
      相關(guān)Access數(shù)據(jù)庫教程