erişilemeyen bir FUNCTION kullanarak deyimi kullanarak yalnızca saklı proc veya işlevleri ekleyemediğinden, yalnızca okuyucu izinlerine sahip bir SQL DB var ve tamamlamak için bir yol arıyorum benim görevim yönetici izni olmadan (yazılım sadece geliştiricilerin okuyucu izinlerine sahip ve tam erişime izin vermiyor, bu yüzden başka bir yol arıyoruz)sql SQL deyimi .net
Kayıtlarımı almak istediğim bir tablo var. Ancak bunu yapmak için, uzunlukları belirlemek için alanlar üzerinde bazı hesaplamalar yapılmasına ihtiyaç vardır.
.Net'in bir yolu var mı, yoksa bunu gerçekleştirebilecek bir SQL komut dosyası kullanarak mı? Şimdi (bir tablo VE hesaplanan değerden geçici tablo alanlarına -takın nerede hesaplanan değer az 100
olan bir geçici tablo -Create gerekli sonuçları elde etmek için tüm düşünceleri yapmanız gerekiyorsa Emin değilim Ben bunu CREATE deyimlerini kullanarak yapabilirim, ancak yukarıdaki gibi iyi bir şey yoktur, herhangi bir şey oluşturmak için DB erişimi yoktur. Bu nedenle, hem seçip hem de işlevlerini yerine getiremeyen dinamik kodun bir türü olması gerekir)
Burada çalışmak için yazdığım şeyin SQL kodunun bir örneğidir. Net kodu
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
ve fonksiyon
DECLARE @ZIP FLOAT
SET @ZIPCalc = (@ZIP - 1000) --more code but removed to simplify
SET @ZIPCalc = (@ZIPCalc * 10) --result above more workings removed
RETURN @ZIPCalc
böylece .NET i DB bağlanmak ve sonuçlar alabilirsiniz
gibi görünüyor, ama ben sonuçları çekmek için SELECT deyimi ile bir FUNCTION kullanabileceğine ilişkin bir fikrin?sayesinde
Başka bir SQL çağrısında maks zip için hesaplama yapar ve sonra bunu özgün sql seçiminize iletir misiniz? – Paddy
Merhaba Paddy .. ama nasıl ayarlamak için FUNCTION select deyimi içinde kendi geri dönüş kümesi .. onun FUNCTION parçası – Greg