我有一個只有讀取器權限的SQL DB,因此我無法添加我唯一存儲的proc或函數,並且正在尋找一種方法來完成我的任務沒有獲得管理員權限(該軟件只對開發者具有讀者權限,並且不允許完全訪問權限,這就是爲什麼我正在尋找另一種方式)SQL select語句使用函數而無需訪問SQL數據庫中的.Net
我所擁有的是我想從中拉出記錄的表,但要做到這一點,有必要對領域做一些計算來計算長度。
在.Net中有沒有一種方法,或者使用一個SQL腳本文件,我可以運行這將實現這一目標? 不知道我需要做的所有的想法來獲得所需的結果 - 創建臨時表 -insert到從表和計算值的臨時表中的字段 -where計算值小於100
(現我可以使用CREATE語句做到這一點,但這並不好,因爲上面沒有DB訪問來創建任何東西..所以它需要是某種類型的動態代碼,它不能在兩者中選擇和功能)
這裏是我打字的SQL代碼的示例.Net代碼
BEGIN
CREATE TABLE #Listings
(
AddressID varchar(50), Street varchar(50), City varchar(50), State varchar(50),
Zip varchar(50), ZipCalculatedValue Decimal(18,12)
)
INSERT INTO #Listings (AddressID, Street, City, State, Zip, ZipCalculatedValue)
SELECT AddressID, Street, City, State, Zip, Name, bo.CalcZip(@ZIP) AS ZipCalculatedValue
FROM tbl_Addresses
WHERE dbo.dbo.CalcZip(@ZIP) <= @maxZIP
ORDER BY Distance ASC
SELECT *
FROM #Listings
和功能看起來像
DECLARE @ZIP FLOAT
SET @ZIPCalc = (@ZIP - 1000) --more code but removed to simplify
SET @ZIPCalc = (@ZIPCalc * 10) --result above more workings removed
RETURN @ZIPCalc
所以在.net中我可以連接到數據庫,並得到結果,但我如何能使用函數使用SELECT語句來拉任何結果的想法?
感謝
你可以在另一個SQL調用中計算max zip,然後將它傳遞給你原來的sql select嗎? – Paddy 2010-11-18 09:39:57
嗨稻田..但我如何包括功能在選擇語句,使其返回設置其一部分..它的功能部分的工作,我堅持與 – Greg 2010-11-18 10:34:37