問題:上級單位要來檢查資料,我的服務器的資料庫是SQLserver2000,上級單位要求我用SQL語句在伺服器端隨機查詢50條資料出來。可是我的伺服器裡有些錯誤資料不希望他們看到,能不能有什麼辦法不讓他們看到。
SQL語句:selecttop50xfroma_1wherec=xxxx
語句就是要求這樣寫,然後他們來執行,怎麼辦,有什麼辦法可以在sqlserver上設定,然後使得這50條資料只在我找出的資料(比如正確的.資料400)裡隨機查詢出。儘量不要改動SQL語句。
PeakWong:
可用檢視:
對方抽取時:
selecttop50*fromt_view--檢視名
orderbynewID()
在生成檢視時,把不顯示出來的排除。檢視在查詢時,也就是一個表名的方式//只要對方不知道資料庫表就行了。
SQLcode
複製程式碼 程式碼如下:
selecttop10ID,Name
intoT--生成測試表
fromsysobjects
go
createviewTest--生成檢視名
as
select*fromTwhereID>5
go
selecttop2*fromtestorderbynewID()--隨機取兩條
說明:檢視名,最好與表名比較相似就行了。createviewTest--生成檢視名
withENCRYPTION--加密一下,讓對方看不到你的檢視語句
as
select*fromTwhereID>5
go