Καλημέρα σε όλους,
θα ήθελα να ρωτήσω κάτι που με παιδεύει τις τελευταίες 3 εβδομάδες και δεν ξέρω καν αν υπάρχει λύση. Χρησιμοποιώ το Visual Studio 2005 (γράφοντας σε VB.NET) και το CLR για να δημιουργήσω κάποιες User-Defined Scalar-Valued Functions σε SQL Server 2005. Αυτό που θα ήθελα να πετύχω είναι μια τέτοιου είδους function να μπορεί να επιστρέψει διαφορετικού datatype αποτέλεσμα. Παράδειγμα να δίνει (ανάλογα με τα arguments που δέχεται) Decimal, Integer, String. Δοκίμασα να επιστρέφω Object, ωστόσο όταν το χρησιμοποιώ μέσα από εφαρμογή (συγκεκριμένα PowerBuilder της Sybase), δε με αφήνει να δημιουργήσω ένα query που να χρησιμοποιεί την εν λόγω Function με ERROR: SQL Select has unsupported Datatype.
Έχω ωστόσο παρατηρήσει μέσα από το Microsoft SQL Server Management Studio, στο Programmability->Functions->System Functions για παράδειγμα στις Mathematical Functions και πιο συγκεκριμένα στην Sign, ότι κάτω από το Folder Parameters, που αναγράφει arguments και τι επιστρέφει, ότι λέει: "Returns Bigint, integer, Money, Decimal, or float" και μάλιστα χρησιμοποιώντας την Sign ακόμη και μέσα από την προαναφερόμενη εφαρμογή δεν έχω κανένα πρόβλημα παρότι το αποτέλεσμα μπορεί να διαφέρει κατά περίπτωση ως προς το datatype του.
Μπορούμε να αναπαράγουμε μια τέτοια συμπεριφορά σε User-Defined function;
Ευχαριστώ εκ των προτέρων