BIT, DECIMAL, NUMERIC, TIMESTAMP
以下的“標準”數據類型不被Access支持:
BIT, CHARACTER, DATE, NUMERIC, SMALLINT, TIMESTAMP
這樣,只有以下的數據類型可以保證在各類數據庫上都能使用:
DOUBLE PRECISION, FLOAT, INTEGER, NUMERIC, REAL, SMALLINT, VARCHAR, CHAR
主/外鍵
假設某個表內有兩個字段,創建這個表的語法如下:
CREATE TABLE [MyTable] ([FieldA] VARCHAR, [FieldB] VARCHAR);
為了添加主鍵以便表內的每一條記錄都唯一標識你可以采用PRIMARY KEY 表達式:
CREATE TABLE [MyTableA] ([RecordID] VARCHAR PRIMARY KEY, [FieldA] VARCHAR, [FieldB] VARCHAR);
在創建另一個表,其中一個字段索引第1個表,你可以把該字段定義為同第1個表的字段具有關系的外鍵:
CREATE TABLE [MyTableB] ([RecordID] VARCHAR PRIMARY KEY, [FieldA] VARCHAR, [FieldB] VARCHAR, [FieldC] VARCHAR REFERENCES [MyTableA]([FieldA]))
在以上例子中,所有的字段都是VARCHAR類型;但是你得記住,某一數據類型字段只能索引同一數據類型的字段。
ODBC 和 JDBC
如果你在編寫的應用程序要用到SQL數據庫連接,那么你可以用ODBC完成該功能。如果它是一個Java應用程序則可以用JDBC(簡而言之就是ODBC的Java接口)。
因為你希望自己的應用程序最好不要引起管理員的注意,所以你應該為你用戶的DBMS包括所有必要的ODBC驅動程序。這樣,如果用戶從一個平臺轉移到另一個平臺,它們所需要的驅動程序卻已經事先擁有了。
你的應用程序應該通過編程的方式決定當前用到的ODBC驅動程序對應何種DBMS。這樣你才能用上那些數據庫服務器上強大的、同特定平臺相關的命令。
另類瀏覽器之戰
最流行的瀏覽器當然是微軟的Internet Explorer和Netscape的Navigator了。但是,不管你手頭用的是哪一種,它能保證支持現有的所有網站嗎?錯!很多花哨的東西,比如DHTML、框架以及多媒體等等都各自受到兩類瀏覽器中非標準的HTML標簽的支持。
因為程序在這兩種國際標準的岔路口無所適從,所以你必須為兩種瀏覽器編寫代碼或者編寫最具普遍性的功能代碼而放棄大量的動態內容。
數據庫服務器也面臨同樣的問題。ANSI SQL-92是人人贊同的標準。然而,Oracle、微軟以及其他數據庫廠商還自作主張加入了很多破壞SQL代碼的特性。因此,你不僅得編寫遵從基本規范(SQL-92)的代碼,而且的代碼還得根據具體用到的產品實現不同的特性。
在你自己的應用程序內,你必須正確地決定應用程序將使用什么類型的數據庫,而且數據庫應該定位在哪里。你還得老練地處理應用程序或用戶產生的任何錯誤。你當然不希望僅僅因為文件被刪除或者網線連接松弛就導致程序崩潰(或服務器崩潰)。在經過精心設計的網絡上,數據庫服務器通常同工作站和Web服務器、應用服務器在物理上相分離,因此斷開連接是很常見的。
小結
作為Web開發者,你需要對應用程序使用非標準SQL命令的危險保持高度的小心。這篇文章的中心思想是建議用ANSI SQL編寫跨平臺的應用程序。利用ANSI SQL減少商業數據庫系統的非標準方言所帶來的頭疼問題。
文章來源于領測軟件測試網 http://www.kjueaiud.com/