На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
Дорогие друзья! Поздравляем вас с днём Победы!
msm.ru
  
> Как получить тело Хранимой процедуры!? C# , или хотя бы запрос, то что идёт после SELECT...
    Сразу скажу что в SQL не силён.
    Задача как мне кажется простая, хранимая процедура находится на MSSQL Server.
    Как получить список процедур и как получить параметры у процедуры я знаю, нашел хороший код в инете
    http://www.codeproject.com/KB/database/enumeratesps.aspx

    А вот как узнать остальное тело хранимки (то что идёт между BEGIN и END или хотя бы после SELECT) не понял!

    Если есть идей или кто-то сталкивался, подкиньте информацию!
      Есть такая классная штука как SMO :)
      Вот тебе пример который извлекает все хранимые процедуры и их тела.

      ExpandedWrap disabled
           class Program
            {
         
                private static Server srv;
         
                static void Main(string[] args)
                {
                    srv = new Server("WS-XX");
                    srv.SetDefaultInitFields(typeof(StoredProcedure), true);
         
                    Database db1 = srv.Databases["MyBase"];
         
                    foreach (StoredProcedure sp in db1.StoredProcedures)
                    {
                        Console.WriteLine(sp.ToString());
                        Console.WriteLine(sp.TextBody);
                        Console.WriteLine();
                        Console.ReadLine();
                    }
                }
            }


      Не забудь только подключить сборки Microsoft.SqlServer.ConnectionInfo и Microsoft.SqlServer.Smo, а также неймспейс Microsoft.SqlServer.Management.Smo;

      Думаю направление для поисков ты как минимум получил. ;)
        Спасибо за наводку.
        Правда у меня задача упростилась, и не требует уже этого, но всё же интересно и я попробую :) .
        1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
        0 пользователей:


        Рейтинг@Mail.ru
        [ Script execution time: 0,0206 ]   [ 15 queries used ]   [ Generated: 12.05.24, 14:16 GMT ]