--為表新增具有預設值的一列
if not exists(select * from syscolumns where [name]='website'
and objectproperty(id,'isusertable')=1 and object_name(id)='tbbrowser')
begin
alter table [tbbrowser] add [website] nvarchar(50) default('')
end
--刪除表中的一列在沒有預設值約束的情況下刪除
if exists(select * from syscolumns where [name]='website'
and objectproperty(id,'isusertable')=1 and object_name(id)='tbbrowser')
begin
alter table [tbbrowser] drop column [website]
end
--如果刪除列存在預設值約束則首先刪除約束再刪除列
alter table [tbbrowser] drop constraint df__tbbrowser__websi__060deae8
--假如你不知道預設約束的名字 你可以直接執行刪除表中的列,然後檢視錯誤提示,就可找到約束名稱,然後執行正常操作先刪除預設約束
--也可使用系統自帶的查詢約束條件的儲存過程,然後你就可以看到你需要刪除的列的約束的名稱
exec sp_helpconstraint [tbbrowser]
--表中新增的新列是否可以為空
alter table table_name add column_name data_type null [not null]
--修改表中列的資料型別
alter table table_name alter column column_name new_data_type
--判斷要新增列的表中是否有主鍵
if exists(select * from sysobjects where parent_obj=object_id('[tbbrowser]') and xtype='pk')
begin
print '表中已經有主鍵,列只能做為普通列新增'
--新增int型別的列,預設值為0 不能為空
alter table table_name add column_name int default 0 not null
end
else
begin
print '表中無主鍵,新增主鍵列'
--新增int型別的列,預設值為0主鍵自動不能為空
alter table table_name add column_name int primary key default 0
end
修改sql server2005的系統時間
多說一句,以前我一直以為sql server裡的時間和sql server所在計算機的時間是一致的,直到乙個小時前才發現不是這樣的.修改前時間 print getdate 開啟高階系統控制選項 exec master.dbo.sp configure show advanced options 1 ...
SQL Server2005複製實現
一 準備工作 1 在發布伺服器上建立乙個共享目錄,作為發布快照檔案的存放目錄。例如 在d 盤根目錄下建資料夾名為pub 2 設定sql 發布伺服器和訂閱伺服器均設定 步驟 開啟服務 控制面板 管理工具 服務 右擊sqlserver agent 屬性 登入 選擇 此帳戶 輸入或選擇第一步中建立的win...
SQL Server 2005完全解除安裝
sql server 2005的解除安裝是乙個非常頭疼的問題。我曾經嘗試過直接使用 新增或刪除程式 工具解除安裝 清除安裝目錄 刪除登錄檔內容等等各種方式綜合解除安裝,勉強成功。現在終於找到了乙個事半功倍的方法,多次嘗試,未有失敗,具體如下 第一種是微軟官方提供的工具 msicuu2.exe 微軟官...