SQL Server的一些操作:
1、判斷一個表是否存在:
if exists(select * from sysobjects where id=OBJECT_ID(N'[' + @tableName + ']') and OBJECTPROPERTY(id,N'IsUserTable') = 1)
相對於這個資料庫來說,OBJECT_ID根據表名得到ID,N表示顯示的將非Unicode字元轉化為Unicode字元,來自SQL-92 標準中的 National(Unicode)資料類型。OBJECTPROPERTY:返回當前資料庫中對象的有關資訊。1表“真”。
2、int轉為Char
@char = cast(@int as varchar)
3、使用遊標
--定義遊標declare MyCursor Cursor forselect CompanyId from dbo.Company where CompanyID in (7,29,16)--開啟遊標open MyCursor--迴圈遊標declare @index intfetch next from MyCursor into @indexwhile @@FETCH_STATUS=0beginexec('drop table dbo.C' + @index + '_DisplayPattern')fetch next from MyCursor into @indexend--關閉遊標close MyCursor--釋放資源deallocate MyCursor
4、選擇前幾條,並且把相同的留下
select TOP 4 with ties * from dbo.T_Personorder by FAge
5、SQL的控制符列表
--ms sql裡的控制字元列表:
--Tab char(9)
--換行 char(10)
--斷行符號 char(13)
--單引號 char(39)
--雙引號 char(34)
6、得到一個表的行數
set @sqls='select @a=COUNT(*) from [DemoSite_0213_OldCSV].[dbo].[C' + @company + '_Proposal]'exec sp_executesql @sqls,N'@a int output',@oldNumber output