程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL開發中容易忽視的一些小地方(一)

SQL開發中容易忽視的一些小地方(一)

編輯:關於SqlServer

做開發三年來(B/S),發現基於web 架構的項目技術主要分兩大方面:

第一:C#,它是程序的基礎,也可是其它開發語言,沒有開發語言也就不存在應用程序.

第二:數據庫,現在是信息化世界,大多數信息都可以通過數據庫存儲來交換信息.常與應用程序互相交流信息.

但在SQL開發應用時,我們往往只觀注些常用的方法(insert delete select update),對些小細節方面(系統存儲過程,函數的應用,優化分析)研究的並不多或者是知其一不知其二,所以本人想把在學習工作當中遇到的問題總結些,希望還沒有重視這些方面的朋友會有幫助,少走些彎路.

SQL中的null的用法及要注意的方面

【英文辭典】 null:無效的, 無價值的, 等於零的.

【SQL定義】SQL中, NULL 與空格, 零, 都不相同. 是指為未定義或是不可用的.

構成因素:造成某一列成為NULL 的因素可能是:

(1),值不存在;

(2), 值未知;

(3), 列對表不可用.

它與普通的值最大的異同是:

相同點:

1:統統屬於值范疇.數字1是一個值,字符串'aaa'同樣是一個值,同理 null也是一個值.

2:都是合法的值,普通的數字,字符可以存在於表中字段,null也可以,而且是有意義的.

不同點:

先創建測試表:

USE [myTestDB]

GO

/****** 對象:Table [dbo].[testNull] 腳本日期:10/11/2008 13:45:14 ******/

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[testNull](
[ID] [int] IDENTITY(1,1) NOT NULL,
[a] [nchar](10) COLLATE Chinese_PRC_CI_AS NULL,
[b] [nchar](10) COLLATE Chinese_PRC_CI_AS NULL,
CONSTRAINT [PK_testNull] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]

插入相關測試值:

insert into testNull
values('1','')
insert into testNull

values('2',null)

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