Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да получите схемата на база данни на съхранена процедура

Не знам за Enterprise Library, но с обикновен ADO.NET кодът би бил подобен на следния

//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();
     }
}

След това можете да анализирате DataTable за подробна информация за набора от резултати.

Можете, разбира се, да използвате общи типове в горния код - DbCommand, DbParameter и т.н. Предполагам, че с Enterprise Library ще трябва да направите основно същото - да изпълните съхранената процедура, както бихте направили обикновено, с изключение на настройката 'SchemaOnly'.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Изпълнение на набор от SQL заявки с помощта на пакетен файл?

  2. Нарушаване на ограничението PRIMARY KEY

  3. Все пак да създадете SQL Server DDL тригер за SELECT изрази?

  4. SQL Server 2008 CTE рекурсия

  5. Регистрирайте промените на записите в SQL сървъра в таблица за одит