程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Access數據庫 >> Access數據庫入門 >> 如何學好數據庫編程?

如何學好數據庫編程?

編輯:Access數據庫入門

  好像武俠小說裡邊說的:“你的招式忘了沒有?”,回答:“差不多忘了”,“忘了就好”。

  這與數據庫編程有什麼關系?關系可大了。同志們學過Pascal、BASIC、C(C++)沒有?如果沒有,FOXBASE、FOXPRO應該學過吧?按以上這些語言編程,都是過程化的,說白一點就是一個數據一個數據、一條記錄一條記錄去處理(FOXBASE、FOXPRO不完全這樣,但書上也經常是這樣介紹的),當初我接觸ACCESS 97時,一下子沒有了IF、FOR這些語句(指數據處理),都用SQL語句,真是找不到北了,好在我學SQL語言時,也盡量忘掉這個IF、FOR,到我忘得差不多時,功夫也進了一大步,原來要編一大段程序,現在一兩條SQL語句搞定,就算用多幾條SQL語句,由於是在圖形界面下做,可視化操作,拉拉扯扯,再修改一下生成的SQL語句,也就省事多了。

  由於ACCESS具備完整的SQL語言(FOXBASE沒有、FOXPRO不完整),我從ACCESS 97開始用ACCESS編程,到現在為止,DAO、ADO很少用,加上最近從愛賽思上接觸的一些技術,基本上不用DAO、ADO都可以了,可以從我的“未完工的庫存管理”中看出,只是在特殊情況下才偶爾用一下。(少用,但不是不用,還得學,不要誤解)

  如何學好數據庫編程?下面介紹一下本人的一些經驗,僅供參考:

  1.首先要把原來一個數據一個數據、一條記錄一條記錄的數據處理方式忘掉,越徹底越好。

  現在用成批處理了。少用記錄集一條記錄一條記錄地處理,盡量用SQL語句。

  2.學好關系數據庫的理論,尤其是規范化理論,表的設計一定要規范化,最起碼要規范化到第三范式。集合運算(並、交、差)。關系運算(選擇、投影、連接)。其中連接與規范化是緊密結合的。

  3.運用面向對象的技術:面向對象的分析OOA、面向對象的設計OOD、面向對象的編程OOP,根據表的關系,用窗體和子窗體、報表和子報表,仿真面向對象,這樣可以增加程序的可讀性和可維護性。(這是高級技術,同志們不要輕視,做大項目你就知道有用了)

  4.用查詢時,通常一步做不出來,可以分幾步做,本人通常是這麼做的,從我給網友回復的例子中也可以看得出。為什麼要這樣做?(1)有些是SQL語言的限制,沒辦法一步做出來,逼的;(2)可以檢查每一步查詢的結果,容易調試;(3)增加可讀性,便於日後維護。

  5.查詢的結果用窗體顯示或用報表打印,兩者的技術差不多。通常改變打開窗體或報表的條件就可控制顯示或打印的記錄范圍。另外用查詢做數據源時,動態改變查詢中的SQL語句,比在查詢中引用窗體的控件要方便,因為SQL語句生成是在VBA中,可以先存放在字符變量中,然後再更新查詢的SQL語句,這樣就可以用斷點來檢查變量值對不對,如果在查詢中引用窗體的控件,尤其是包含IIF()函數時,調試是很困難的。

  6.開發一個系統,首先要解決技術問題,即算法,用簡單例子,把算法弄懂了,再詳細設計,這一點從網友的提問中可以看出,有很多人問題表達不清楚,有的人其中夾了很多與算法無關的東西,尤其是很專業的東西,別人不容易看得明白,由於算法沒搞清楚,程序就無法編了。

  7.不要使用過多的工具特性,使用過多的工具特性會使可讀性降低,可維護性差,要別人幫忙時難以得到幫助,更要命的是可移植性差,從MDB到ADP就可以體會到了,所以在編程時可讀性很重要,可移植性更重要,你甘心自己的程序就固定在一個環境下運行嗎?你甘心永遠用一個工具搞開發嗎?為了你的“錢途”,不要玩弄太多的技巧,當然技術研究是另外一碼事。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved