• No loops, minimal dynamic sql

     

    Create

    table #HexToAlpha

    (

    recordid dec

    (5,0) identity(1,1)

    , hexstring char(20)

    , alphastring varchar(20)

    )

    Insert

    into #HexToAlpha values('416E6E61737461736961', null)

    Insert

    into #HexToAlpha values('416E6E656C6F75697361', null)

    Insert

    into #HexToAlpha values('416E746F696E65747465', null)

    Insert

    into #HexToAlpha values('4265726E616465747465', null)

    Insert

    into #HexToAlpha values('4265726E617264696E65', null)

    Insert

    into #HexToAlpha values('436872697374656C6C65', null)

    Insert

    into #HexToAlpha values('4368726973746F706572', null)

    Insert

    into #HexToAlpha values('43696E646572656C6C61', null)

    Insert

    into #HexToAlpha values('436C656D656E74696E65', null)

    Insert

    into #HexToAlpha values('4576616E67656C696E65', null)

    Insert

    into #HexToAlpha values('4672616E636973637573', null)

    Insert

    into #HexToAlpha values('467265646572696B7573', null)

    Insert

    into #HexToAlpha values('4777656E646F6C696E65', null)

    Insert

    into #HexToAlpha values('4A61637175656C696E65', null)

    Insert

    into #HexToAlpha values('4B726973746F70686572', null)

    Insert

    into #HexToAlpha values('4D617267756572697461', null)

    Insert

    into #HexToAlpha values('4D617279636C61697265', null)

    Insert

    into #HexToAlpha values('53656261737469616E6F', null)

    Insert

    into #HexToAlpha values('536861756E74656C6C65', null)

    Insert

    into #HexToAlpha values('5768696C68656D696E61', NULL)

    DECLARE

    @SQL NVARCHAR(1000)

    --SET @SQL = 'update #HexToAlpha set alphastring = cast(cast((''0x'' + hexstring) as varbinary) as varchar)'

    create

    TABLE #tempsql

    (

    recordid

    INT,

    sql

    NVARCHAR(500)

    )

    SET

    @SQL = 'insert into #tempsql select recordid,''update #HexToAlpha set alphastring = cast(cast((0x'' + hexstring +'') as varbinary) as varchar)'' from #HexToAlpha'

    PRINT

    @SQL

    EXEC

    sp_executesql @SQL

    EXEC

    sp_execresultset 'select sql + '' where recordid = '' + cast(recordid as nvarchar) from #tempsql'

    SELECT

    * FROM #HexToAlpha

    DROP

    TABLE #HexToAlpha

    DROP

    TABLE #tempsql

    Gordon Pollokoff

    "Wile E. is my reality, Bugs Bunny is my goal" - Chuck Jones