none
SQL function - непонятно RRS feed

  • Вопрос

  • Приветствую =)

    Наткнулся на код

    Но не совсем пойму момент со ссылкой на внешний объект динам библиотеки...

    DECLARE @SamplesPath nvarchar(1024);
    -- You may have to modify the value of this variable if you have
    -- installed the sample in a location other than the default location.
    SELECT @SamplesPath = REPLACE(physical_name, 'Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\master.mdf', 'Microsoft SQL Server\90\Samples\Engine\Programmability\CLR\') 
        FROM master.sys.database_files 
        WHERE name = 'master';
    CREATE ASSEMBLY [SurrogateStringFunction]
    FROM @SamplesPath + 'StringManipulate\CS\StringManipulate\bin\debug\SurrogateStringFunction.dll'
    WITH PERMISSION_SET = EXTERNAL_ACCESS;
    GO
    CREATE FUNCTION [dbo].[len_s] (@str nvarchar(4000))
    RETURNS bigint
    AS EXTERNAL NAME [SurrogateStringFunction].[Microsoft.Samples.SqlServer.SurrogateStringFunction].[LenS];
    GO

    Если это объект внешний, как я понимаю, то его нужно создавать заранее? dll - это какой язык? Если мне не изменяет память яп С, но могу ошибаться :)

    Вопрос звучит следующим образом...

    Как создают эти самые dll, чтобы потом ссылаться на них в батче?

    Заранее благодарен за полезные комментарии

    28 марта 2010 г. 1:58

Ответы

  • Плохо читаете: http://www.ikvm.net/userguide/tutorial.html#Convert+a+Java+Application+to+.NET

    IKVM.NET includes ikvmc, a utility that converts Java .jar files to .NET .dll libraries and .exe applications.

     

     

    target:target-type

     

    Specifies whether to generate an .exe or .dll. target-type is one of

    • exe - generates an executable that runs in a Windows command window
    • winexe - generates an .exe for GUI applications
    • library - generates a .dll
    • module - generates a .netmodule

     


    http://www.t-sql.ru


    Ну вот говорю же, что идет инструкция по генерации exe из jar

    -------------------------------------------------------------

    Convert a Java Application to .NET

    IKVM.NET includes ikvmc, a utility that converts Java .jar files to .NET .dll libraries and .exe applications. In this section, you'll convert a Java application to a .NET .exe.

    Navigate to IKVMROOT\samples\hello and enter the following:

    ikvmc hello.jar

    After the command completes, you should find a hello.exe file in the current directory. To execute it:

    -------------------------------------------

    А вы сами пробовали получить dll таким способом? Нужно как-то с target:target-type работать или как?


    Вам же чёрным по белому написано, что можно получить как dll, так и exe...в примере делают ЕХЕ-шник!!! полный перечень target-type я уже привёл выше и даже выделил жирным, какой пар-р вам нужно использовать!

     

    Вы явно не тем занялись! Берите в руки книгу по C# и не занимайтесь ерундой, если уж выбрали платформу виндоус


    http://www.t-sql.ru
    1 апреля 2010 г. 3:07
    Отвечающий

Все ответы

  • dll-это библиотека... можно писать на чём угодно...

    Про сборки у меня в блоге есть несколько заметок: http://t-sql.ru/?tag=/CLR

    В примерах я создаю dll-ки на C#


    http://www.t-sql.ru
    28 марта 2010 г. 14:29
    Отвечающий
  • dll-это библиотека... можно писать на чём угодно...

    Про сборки у меня в блоге есть несколько заметок: http://t-sql.ru/?tag=/CLR

    В примерах я создаю dll-ки на C#


    http://www.t-sql.ru

    А можно на Java их писать?
    28 марта 2010 г. 19:09
  • dll-это библиотека... можно писать на чём угодно...

    Про сборки у меня в блоге есть несколько заметок: http://t-sql.ru/?tag=/CLR

    В примерах я создаю dll-ки на C#


    http://www.t-sql.ru

    А можно на Java их писать?
    Если использовать из как расширенные хранимые процедуры, то точно можно

    http://www.t-sql.ru
    29 марта 2010 г. 2:49
    Отвечающий
  • А можно на Java их писать?
    Если использовать из как расширенные хранимые процедуры, то точно можно

    http://www.t-sql.ru

    Не совсем понял как? Ведь на Java после компиляции создаются классы *.class , а не dll . Если не трудно нельзя ли немного продолжить мысль?

     

    30 марта 2010 г. 16:59
  • А можно на Java их писать?
    Если использовать из как расширенные хранимые процедуры, то точно можно

    http://www.t-sql.ru

    Не совсем понял как? Ведь на Java после компиляции создаются классы *.class , а не dll . Если не трудно нельзя ли немного продолжить мысль?

     


    http://www.ikvm.net/

    утилит под названием ikvmc делает из *.jar архива обычную .net сборку, т.е.

    MyProject.jar => MyProject.dll


    http://www.t-sql.ru
    31 марта 2010 г. 4:28
    Отвечающий
  • А можно на Java их писать?
    Если использовать из как расширенные хранимые процедуры, то точно можно

    http://www.t-sql.ru

    Не совсем понял как? Ведь на Java после компиляции создаются классы *.class , а не dll . Если не трудно нельзя ли немного продолжить мысль?

     


    http://www.ikvm.net/

    утилит под названием ikvmc делает из *.jar архива обычную .net сборку, т.е.

    MyProject.jar => MyProject.dll


    http://www.t-sql.ru

    Вот как раз насчет этой утилиты. В инструкции говорится, что она делает exe и приводится примеры только по созданию экзешника? Я не нашел именно туториал по созданию dll почему-то :(
    31 марта 2010 г. 15:59

  • http://www.ikvm.net/

    утилит под названием ikvmc делает из *.jar архива обычную .net сборку, т.е.

    MyProject.jar => MyProject.dll


    http://www.t-sql.ru

    Вот как раз насчет этой утилиты. В инструкции говорится, что она делает exe и приводится примеры только по созданию экзешника? Я не нашел именно туториал по созданию dll почему-то :(

    Плохо читаете: http://www.ikvm.net/userguide/tutorial.html#Convert+a+Java+Application+to+.NET

    IKVM.NET includes ikvmc, a utility that converts Java .jar files to .NET .dll libraries and .exe applications.

     

    target:target-type

     

    Specifies whether to generate an .exe or .dll. target-type is one of

    • exe - generates an executable that runs in a Windows command window
    • winexe - generates an .exe for GUI applications
    • library - generates a .dll
    • module - generates a .netmodule


    http://www.t-sql.ru
    31 марта 2010 г. 16:34
    Отвечающий
  • А вообще, если вы используете платформу Windows, а в качестве сервера БД выбрали SQL Server, то и разработку лучше и правильнее вести используя .NET Framework
    http://www.t-sql.ru
    31 марта 2010 г. 16:39
    Отвечающий
  • А вообще, если вы используете платформу Windows, а в качестве сервера БД выбрали SQL Server, то и разработку лучше и правильнее вести используя .NET Framework
    http://www.t-sql.ru


    Это понятно конечно, но интересно как-то расширить кругозор ;)

    Насчет ikvm... Если я не ошибаюсь, там нужно соблюдать пределы синтаксиса, чтобы на NET конвертнуло без ошибок?

    31 марта 2010 г. 17:56
  • Плохо читаете: http://www.ikvm.net/userguide/tutorial.html#Convert+a+Java+Application+to+.NET

    IKVM.NET includes ikvmc, a utility that converts Java .jar files to .NET .dll libraries and .exe applications.

     

     

    target:target-type

     

    Specifies whether to generate an .exe or .dll. target-type is one of

    • exe - generates an executable that runs in a Windows command window
    • winexe - generates an .exe for GUI applications
    • library - generates a .dll
    • module - generates a .netmodule

     


    http://www.t-sql.ru


    Ну вот говорю же, что идет инструкция по генерации exe из jar

    -------------------------------------------------------------

    Convert a Java Application to .NET

    IKVM.NET includes ikvmc, a utility that converts Java .jar files to .NET .dll libraries and .exe applications. In this section, you'll convert a Java application to a .NET .exe.

    Navigate to IKVMROOT\samples\hello and enter the following:

    ikvmc hello.jar

    After the command completes, you should find a hello.exe file in the current directory. To execute it:

    -------------------------------------------

    А вы сами пробовали получить dll таким способом? Нужно как-то с target:target-type работать или как?

    31 марта 2010 г. 18:00
  • Плохо читаете: http://www.ikvm.net/userguide/tutorial.html#Convert+a+Java+Application+to+.NET

    IKVM.NET includes ikvmc, a utility that converts Java .jar files to .NET .dll libraries and .exe applications.

     

     

    target:target-type

     

    Specifies whether to generate an .exe or .dll. target-type is one of

    • exe - generates an executable that runs in a Windows command window
    • winexe - generates an .exe for GUI applications
    • library - generates a .dll
    • module - generates a .netmodule

     


    http://www.t-sql.ru


    Ну вот говорю же, что идет инструкция по генерации exe из jar

    -------------------------------------------------------------

    Convert a Java Application to .NET

    IKVM.NET includes ikvmc, a utility that converts Java .jar files to .NET .dll libraries and .exe applications. In this section, you'll convert a Java application to a .NET .exe.

    Navigate to IKVMROOT\samples\hello and enter the following:

    ikvmc hello.jar

    After the command completes, you should find a hello.exe file in the current directory. To execute it:

    -------------------------------------------

    А вы сами пробовали получить dll таким способом? Нужно как-то с target:target-type работать или как?


    Вам же чёрным по белому написано, что можно получить как dll, так и exe...в примере делают ЕХЕ-шник!!! полный перечень target-type я уже привёл выше и даже выделил жирным, какой пар-р вам нужно использовать!

     

    Вы явно не тем занялись! Берите в руки книгу по C# и не занимайтесь ерундой, если уж выбрали платформу виндоус


    http://www.t-sql.ru
    1 апреля 2010 г. 3:07
    Отвечающий
  • Плохо читаете: http://www.ikvm.net/userguide/tutorial.html#Convert+a+Java+Application+to+.NET

    IKVM.NET includes ikvmc, a utility that converts Java .jar files to .NET .dll libraries and .exe applications.

     

     

    target:target-type

     

    Specifies whether to generate an .exe or .dll. target-type is one of

    • exe - generates an executable that runs in a Windows command window
    • winexe - generates an .exe for GUI applications
    • library - generates a .dll
    • module - generates a .netmodule

     


    http://www.t-sql.ru


    Ну вот говорю же, что идет инструкция по генерации exe из jar

    -------------------------------------------------------------

    Convert a Java Application to .NET

    IKVM.NET includes ikvmc, a utility that converts Java .jar files to .NET .dll libraries and .exe applications. In this section, you'll convert a Java application to a .NET .exe.

    Navigate to IKVMROOT\samples\hello and enter the following:

    ikvmc hello.jar

    After the command completes, you should find a hello.exe file in the current directory. To execute it:

    -------------------------------------------

    А вы сами пробовали получить dll таким способом? Нужно как-то с target:target-type работать или как?


    Вам же чёрным по белому написано, что можно получить как dll, так и exe...в примере делают ЕХЕ-шник!!! полный перечень target-type я уже привёл выше и даже выделил жирным, какой пар-р вам нужно использовать!

     


    http://www.t-sql.ru

    Спасибо ... Это я просто проглядел :)

    C# - это понятно, но раз уж вы сказали "на чем угодно", то что тут сказать - вы сами меня приободрили на кодовые фантазии ;) Спасибо - интересно

    1 апреля 2010 г. 17:04