程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 避免Access和SQL Server的空值沖突

避免Access和SQL Server的空值沖突

編輯:關於SqlServer

在鏈接到一個SQL Server數據庫的Access項目(即.adp文件)中,你平時經常使用的Access函數通常是不支持的。但大多數時候,都可換用SQL Server支持的一個Transact-SQL(T-SQL)函數。一個特例是Access的空值(Null)函數Nz和IsNull;它們的功能相似,但並不是Access和T-SQL都能支持它們。本文要討論在什麼時候以及如何使用這兩個函數來處理空值。

空值的重要性

空值是完全合法的數據庫錄入項,它們能提供的信息可能超過你的想象。空值指明一個值是未知的,但這並不是說該值不可接受或者不存在。空值表明一個值尚未確定,而且除非確定了合適的值,否則該值將保持未知狀態,也就是為一個空值。

開發者的職責是判斷空值可能在什麼時候出現,並針對性地處理那些值。一個方案是在數據輸入時拒絕空值,從而完全回避它們。但這樣一來,你的數據將完全禁止空值,所以該方案的缺點在於,在你創建一條記錄時,所有數據都必須是已知的。遺憾的是,對於大多數人來說,這個方案都不現實。以醫院急診室的數據庫系統為例,是不是因為數據錄入員不知道一個病人的中間名,就拒絕為其創建一條記錄呢?所以,對空值進行妥善處理可提供更靈活的方案,因為即使數據錄入員當時不知道所有數據,也能成功地創建記錄。

認識到空值無法避免之後,你的職責就是正確處理它們,確保它們不會導致錯誤。正確處理空值有兩方面的好處:

可與用戶共享有意義的信息。

可提前捕捉空值,避免空值在後續的表達式中返回錯誤。

Access 中的空值

Access提供大量工具來操縱空值:

Is Null——在條件表達式和SQL WHERE子句中使用Is Null。

IsNull——將IsNull用於Visual Basic for Applications(VBA)。

  1. 上一頁:
  2. 下一頁: