Tworzenie funkcji serwerowych - testowanie/zmiana

0

Cześć,
chciałem się zapytać w jaki sposób testować pisane funkcje serwerowe? Czy da się sprawdzić wynik ciała funkcji przed jej utworzeniem? Chodzi o to, że jestem początkującym i popełniam wiele błędów a nie chcę za każdym razem tworzyć i usuwać funkcji. Zanim utworzę funkcję chciałbym sprawdzić czy ona będzie zwracać prawidłową wartość... Funkcje przeważnie składają się z wielu instrukcji, dlatego mam problem, by zobaczyć kompleksowo jak działa ten kod...
Z góry dzięki za pomoc.

1

eee, po co za każdym razem usuwać? Przecież możesz napisać CREATE OR REPLACE FUNCTION ... i "stara" po prostu zostanie nadpisana przez nową. Np. SQL Lite Manager for SQL Server pozwala na debugowanie procedur składowanych (jednak trzeba do tego odpowiednio serwer skonfigurować)

0

@abrakadaber Dzięki wielkie - nie wiedziałem, że jest taka możliwość! :) Zaraz to będę testował :)
Rozumiem, że najpierw mam zrobić:

create function nazwa_funkcji ...

a następnie za każdym razem już tylko replace funkcion nazwa_funkcji...

1

nie - możesz od razu pisać create or replace function nazwa_funkcji - jak jej nie ma to zostanie utworzona a jak jest to zostanie zastąpiona. Nie wiem tylko jak zachowa się jeśli zmienisz listę lub typy paramterów

0
abrakadaber napisał(a):

nie - możesz od razu pisać create or replace function nazwa_funkcji

Taaa... problem polega na tym, że w MSSQL nie istnieje taka konstrukcja jak create or replace. To po prostu nie zadziała i koniec.
Dwa - EMS SQL Lite NA PEWNO nie pozwala na debug procedur składowanych ani niczego innego:
http://www.sqlmanager.net/en/products/mssql/manager/matrix

0
wloochacz napisał(a):
abrakadaber napisał(a):

nie - możesz od razu pisać create or replace function nazwa_funkcji

Taaa... problem polega na tym, że w MSSQL nie istnieje taka konstrukcja jak create or replace. To po prostu nie zadziała i koniec.

byłem pewny, że coś takiego jest - Oracle, Postgres i FB mają (przy FB to się nazywa CREATE OR ALTER), a to z nimi na co dzień pracuję. Zamiast tego można użyć http://stackoverflow.com/questions/13866004/create-stored-procedure-if-doesnt-exist-in-sql-server

Dwa - EMS SQL Lite NA PEWNO nie pozwala na debug procedur składowanych ani niczego innego:
http://www.sqlmanager.net/en/products/mssql/manager/matrix

hmm, mam zainstalowaną wersję lite i mam tą opcję dostępną
SQL Manager Lite for SQL Server - [Procedure - [dbo.Export]].png

1 użytkowników online, w tym zalogowanych: 0, gości: 1