1. 程式人生 > >sql動態新增欄位

sql動態新增欄位

if exists(select * from syscolumns where id=object_id('bairong_Users') and name='JxsShow') 
begin
--alter table bairong_Users drop column Token  --刪除欄位
print '已存在'
end
else
begin
alter table bairong_Users add JxsShow nvarchar(255) null
update [dbo].[bairong_Users] set JxsShow = 'Y'

end

新增預設值

ALTER TABLE Asset add IsReturnAAA NVARCHAR(100) null 
ALTER TABLE [dbo].[Asset] ADD  CONSTRAINT [DF_Asset_IsReturnAAA]  DEFAULT (N'abcd1234快快快') FOR [IsReturnAAA]

ALTER TABLE Asset add IsReturnBBB INT null 
ALTER TABLE [dbo].[Asset] ADD  CONSTRAINT [DF_Asset_IsReturnBBB]  DEFAULT ((1)) FOR [IsReturnBBB]

ALTER TABLE Asset add IsReturnCCC BIT null 
ALTER TABLE [dbo].[Asset] ADD  CONSTRAINT [DF_Asset_IsReturnCCC]  DEFAULT ((0)) FOR [IsReturnCCC]

修改欄位

ALTER TABLE [USER] ALTER COLUMN [NAME] VARCHAR(35) NULL

新增欄位備註資訊

EXEC sp_addextendedproperty N'MS_Description', '輸入您的備註內容', N'user', N'dbo', N'table', N'表名稱', N'COLUMN', N'欄位名稱'
EXEC sp_addextendedproperty N'MS_Description', '使用者姓名11111111', N'user', N'dbo', N'table', N'Employee', N'COLUMN', N'EmployeeName'

修改欄位備註資訊

EXEC sp_updateextendedproperty 'MS_Description','輸入您的備註內容','user',dbo,'table','表名稱','column',欄位名稱
EXEC sp_updateextendedproperty 'MS_Description','使用者姓名22222222','user',dbo,'table','Employee','column',EmployeeName

新增主外來鍵關聯關係

/********* 新增主外來鍵關聯關係 *********/
ALTER TABLE TestQQ  WITH CHECK ADD CONSTRAINT [FK_TestQQ_Switch] FOREIGN KEY([SupplyId])
REFERENCES Switch ([Id])
GO

ALTER TABLE TestQQ CHECK CONSTRAINT [FK_TestQQ_Switch]
GO

--語法
--ALTER TABLE 外來鍵表名 WITH CHECK ADD CONSTRAINT [約束名稱] FOREIGN KEY([外來鍵欄位])
--REFERENCES 主鍵表名 ([欄位名稱(主表id)])
--GO

--ALTER TABLE 外來鍵表名 CHECK CONSTRAINT [約束名稱]
GO