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

 

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

user-defined functions και "is not a recognized function name"

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

    user-defined functions και "is not a recognized function name"

    Καλησπερά
    Εφτιαξα το εξης function

        CREATE FUNCTION [dbo].[fnCOM_StandardDate] (@dtDate DATETIME)
            RETURNS VARCHAR(10)
        AS
        BEGIN
       
            RETURN
                dbo.fnCOM_2Digits (CAST(MONTH(@dtDate) AS VARCHAR(2))) + '/' +
                dbo.fnCOM_2Digits (CAST(DAY(@dtDate) AS VARCHAR(2))) + '/' +
                CAST(YEAR(@dtDate) AS VARCHAR(4))
            END

    όλα καλα μέχρι εδώ αλλα όταν το καλω απο μια asp .net σελίδα " SELECT OrderID,fnCOM_StandardDate(OrderDate) as x from orders "
    μου βγάζει το εξής λάθος .... Ευχαριστώ εκ των προτέρων....
    -----------------------------------------------------------------------------------------------------------------------

    Server Error in '/test_ASPdotNET' Application.


    'fnCOM_StandardDate' is not a recognized function name.

    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Exception Details: System.Data.SqlClient.SqlException: 'fnCOM_StandardDate' is not a recognized function name.
    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

  •  26-07-2006, 15:50 15224 σε απάντηση της 15223

    Απ: user-defined functions και "is not a recognized function name"

    δοκίμασες με dbo μπροστά από το όνομα του fnction?

    SELECT OrderID,dbo.fnCOM_StandardDate(OrderDate) as x from orders
  •  26-07-2006, 15:52 15225 σε απάντηση της 15224

    Απ: user-defined functions και "is not a recognized function name"

    ναι και εκεί βγάζει λάθος " System.Data.SqlClient.SqlException: Invalid object name 'dbo.fnCOM_2Digits'.
    "
  •  26-07-2006, 16:13 15226 σε απάντηση της 15225

    Απ: user-defined functions και "is not a recognized function name"

    για δώσε και λίγο κώδικα από την σελίδα;
  •  26-07-2006, 16:13 15227 σε απάντηση της 15223

    Απ: user-defined functions και "is not a recognized function name"

     theoos wrote:
    Καλησπερά
    Εφτιαξα το εξης function

        CREATE FUNCTION [dbo].[fnCOM_StandardDate] (@dtDate DATETIME)
            RETURNS VARCHAR(10)
        AS
        BEGIN
       
            RETURN
                dbo.fnCOM_2Digits (CAST(MONTH(@dtDate) AS VARCHAR(2))) + '/' +
                dbo.fnCOM_2Digits (CAST(DAY(@dtDate) AS VARCHAR(2))) + '/' +
                CAST(YEAR(@dtDate) AS VARCHAR(4))
            END

    Όπως είπε και ο agmarios, για να καλέσεις μια UDF που επιστρέφει scalar τιμή πρέπει να χρησιμοποιήσεις το όνομα του owner στην κλήση. Το δεύτερο λάθος που παίρνεις δείχνει ότι δεν έχεις ορίσει την fnCOM_2Digits. Πάντως, από την υλοποίηση της function σου, καταλαβαίνω ότι θέλεις να κάνεις format ημερομηνίες σε mm/dd/yyyy, το οποίο μπορείς πιο εύκολα να το κάνεις με ένα CONVERT(varchar, @dtDate, 101).

     


    Νατάσα Μανουσοπούλου
  •  26-07-2006, 16:19 15229 σε απάντηση της 15227

    Απ: user-defined functions και "is not a recognized function name"

    ναι το ξέρω οτι γινεται με το CONVERT(varchar, @dtDate, 101) απλως το έψαχνα γενικότερα με τις function .
    πώς ορίζω την function ???
  •  26-07-2006, 16:21 15231 σε απάντηση της 15226

    Απ: user-defined functions και "is not a recognized function name"

    και λίγο απο τον κώδικα της σελίδας

    <form id="form1" runat="server">
        <div>
        <asp:GridView ID="gv" runat="server" DataSourceID="src1" AutoGenerateColumns="true"
         >
        </asp:GridView>
       
       
        <asp:SqlDataSource ID="src1" runat="server" 
        ConnectionString="<%$ ConnectionStrings:Northwind %>"
         SelectCommand="SELECT OrderID,dbo.fnCOM_StandardDate(OrderDate) as x from orders"
         
        />
        </div>
        </form>
  •  26-07-2006, 16:38 15232 σε απάντηση της 15227

    Απ: user-defined functions και "is not a recognized function name"

    είσαι σίγουρος όχι έχεις δημιουργήσει την function;

    ο χρήστης που δηλώνεις στο ConnectionString έχει δικαιώματα να τρέξει την function;
  •  26-07-2006, 16:45 15233 σε απάντηση της 15232

    Απ: user-defined functions και "is not a recognized function name"

    ναι και έχει δημιουργηθεί και το permission είναι ok
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems