sql >> Database teknologi >  >> RDS >> Sqlserver

Sådan får du databaseskemaet for en lagret procedure

Jeg kender ikke Enterprise Library, men med almindelig ADO.NET ville koden ligne følgende

//assume an open connection
using(connection)
{
    using (DbCommand command = connection.CreateCommand())
    {
        command.CommantText = "procedure name";
        //setup and add parameters.
        SqlParameter parameter = command.CreateParameter();
        parameter.Name = "param name";
        //set the mode - out/inputOutput etc
        //set the size
        //set value to DBNull.Value

        //execute the stored procedure with SchemaOnly parameter
        var reader = command.ExecuteReader(CommandBehavior.SchemaOnly);
        var table = reader.GetSchemaTable();
     }
}

Du kan derefter analysere datatabellen for detaljerede oplysninger om resultatsæt.

Du kan selvfølgelig bruge generiske typer i ovenstående kode - DbCommand, DbParameter osv. Mit gæt er med Enterprise Library, at du stort set skal gøre det samme - eksekver den Stored Procedure, som du ville gøre normalt undtagen med indstillingen 'SchemaOnly'.



  1. Django-forespørgselsfilter ved hjælp af et stort udvalg af id'er i Postgres DB

  2. Sådan installeres pgAdmin 4 på Ubuntu 20.04/18.04/16.04

  3. Valg af CLOB i Oracle ved hjælp af C og indlejret SQL

  4. Cake php Datasource-klassen MySQL kunne ikke findes