Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Stored Procedure που κάνει SELECT σε προσωρινό πίνακα (temporary table)

Îåêßíçóå áðü ôï ìÝëïò Nikolis. Τελευταία δημοσίευση από το μέλος Nikolis στις 07-04-2006, 11:33. Υπάρχουν 0 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  07-04-2006, 11:33 11664

    Hmm [^o)] Stored Procedure που κάνει SELECT σε προσωρινό πίνακα (temporary table)

    Χαιρετώ την κοινότητα.

    Έχω δημιουργήσει μια SQL SP η οποία δημιουργεί ένα temp table, τον γεμίζει με δεδομένα και τελικά επιστρέφει ένα result set κάνοντας SELECT <fields> FROM #temp_table.

    Τώρα δουλεύοντας με το Visual Studio, θέλω να δημιουργήσω ένα client report (.rdlc αρχείο) που χρησιμοποιεί το result set της SP και να το χρησιμοποιήσω σε website (ASP.NET 2.0). Δημιουργώ το DataSet και με τη βοήθεια του TableAdapter Configuration Wizard ορίζω το connection string, επιλέγω existing stored procedure, στο SELECT operation το όνομα της SP, Fill & GetData, και στο επόμενο βήμα εμφανίζεται το μήνυμα "Invalid object name #temp_table". Βέβαια αν επιλέξω να δημιουργηθεί παρ'όλα αυτά το dataset και πάω στο report, δεν έχω πρόσβαση στα πεδία που επιστρέφει η SP.

    Workaround: αν αντί για #temp_table χρησιμοποιήσω @table_variable στην SP όλα δουλεύουν μια χαρά...

    Γιατί συμβαίνει αυτό; Τα Crystal Reports δεν είχαν τέτοιο πρόβλημα... Κάτι μου λέει ότι θα πρέπει να ξανασχεδιάσω όσες SPs χρησιμοποιούν temp tables και δε μου αρέσει καθόλου! Έχει αντιμετωπίσει κανείς παρόμοιο πρόβλημα; Υπάρχει κάποια πιο "ανώδυνη" λύση;

    Ευχαριστώ πολύ για το χρόνο σας,


    Νίκος Καπράλος
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems