在Access和SQLServer中使用SQL語句對數據表進行增刪改的處理方法

Access和SQLServer雖然都是微軟的產品,但它們在SQL語句的用法上是有一些差別的。用到Access時,要這麼寫;SQLServer則要那麼寫,確實有點煩。

本文將它們的共同點都給總結了出來,實際應用時只要遵照這一種寫法就可以啦,再不用考慮它們之間的差別了。

新建數據表

新建數據表的SQL語句格式如下:

Create Table TableName(ColName Type, ColName Type, ColName Type……)

例如,創建一個名為“交費名錄”的數據表,SQL語句如下圖所示:

在Access和SQLServer中使用SQL語句對數據表進行增刪改的處理方法

創建數據表時,還可對指定列設置以下屬性:

primary key:設為主鍵列。

identity:設為自動編號列。它有兩個可選參數:第一個參數表示開始編號的值,第二個參數表示自增步長。例如,identity(3,5)就表示從3開始編號,步長為5。默認為從1開始編號,每次增加1。

not null:不允許為空值(默認為null)。

default:默認值。

例如,以下SQL語句將創建新表“test”,共包含5列:

create table test(id int identity primary key,姓名 nvarchar(6) not null,性別 bit,出生日期 datetime,交費金額 numeric(5,2))

其中,“id”列的數據類型為int,同時還設置為自增型的主鍵(當指定identity自增屬性時,Access數據源可以省略列類型,SQLServer則不能省略);“姓名”列不允許為空。

修改數據表

對於數據源中的現成表,可使用alter table語句對其結構進行修改。關於表結構修改,主要包括以下三個方面:

【修改列】例如,將test表中的“姓名”列長度改為10,同時允許空值:

alter table test alter column 姓名 nvarchar(10) null

【增加列】例如,在test表中增加“交費日期”列:

alter table test add 交費日期 datetime

【刪除列】例如,刪除test表中的“交費日期”列:

alter table test drop column 交費日期

刪除數據表

例如,將新增的test表刪除:

drop table test

重命名錶

Access和SQLServer都沒有可以直接重命名錶的SQL語句,一般都是採取建新表、刪舊錶的方式解決。不過,SQLServer數據庫內置了一個SP_RENAME的存儲過程,通過執行此存儲過程可實現重命名錶的目的。例如,將表“交費名錄”改名為英文的“jfml”:

exec sp_rename '交費名錄','jfml'

以上就是在Access和SQLServer數據庫中使用SQL語句操作數據表的最常見用法,同樣的代碼在兩種數據庫中全部運行通過!


分享到:


相關文章: