У меня есть база данных SQL, которая имеет только разрешения на чтение, так что я не могу добавить свой единственный сохраненный процесс или функции, и я ищу способ выполнить свою миссию без разрешения администратора (программное обеспечение имеет только права чтения для разработчикови не разрешает полный доступ, поэтому я ищу другой путь)
У меня есть таблица, из которой я хочу получить записи, но для этого необходимо выполнить некоторые вычисленияполя для определения длины.
Есть ли способ в .Net или с помощью файла сценария SQL, который я могу запустить, чтобы достичь этого?Не уверен, что мне нужно все продумать, чтобы получить требуемые результаты - создать временную таблицу - вставить в поля временной таблицы из таблицы И вычисленное значение - ГДЕ рассчитанное значение меньше 100
(теперь я могуделайте это, используя операторы CREATE, но это бесполезно, так как выше нет доступа к БД для создания чего-либо ... поэтому это должен быть некоторый тип динамического кода, который не может одновременно выполнять выбор и выполнять функции)Вот пример кода 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 я могу подключитьсяв БД и получить результаты, но есть идеи о том, как я могу использовать FUNCTION с оператором SELECT для получения результатов?
спасибо