string with int

  • pretty basic so appreciate the help here,getting conversion error , what is the way to have int variable in the string?

    declare @abc int

    set @abc =1

    declare @cmd varchar(100)

    select @cmd='select'+@abc+'hello'

    print @cmd

  • This is what i do with my dynamic sql.

    CONVERT(varchar(20),@abc)

    so it would be

    declare @abc int

    set @abc =1

    declare @cmd varchar(100)

    select @cmd='select'+CONVERT(varchar(20),@abc)+'hello'

    print @cmd

    just remember to change varchar(20) to something sensible for your data

  • thank you , i was trying to use cast but that did not working , thanks again

  • This was my first answered question so thank you 😀

  • CELKO (11/25/2012)


    ...

    CAST(@abc AS VARCHAR(10)) should work and it much preferred over the old 1970's Sybase CONVERT string function...

    CAST and CONVERT are similar but not the same. CAST in T-SQL offers limited (basic) data conversion functionality. I cannot see why someone would prefer one over another... It's not matter of preference, it is matter of suitability. Where CAST functionality is sufficient, you use CAST, where it's not enough (requires specific format key/switch) - use CONVERT.

    For example, (especially for standards-loving J.C.) using CAST you can not explicitly convert DATETIME into string in ISO format...

    _____________________________________________
    "The only true wisdom is in knowing you know nothing"
    "O skol'ko nam otkrytiy chudnyh prevnosit microsofta duh!":-D
    (So many miracle inventions provided by MS to us...)

    How to post your question to get the best and quick help[/url]

Viewing 5 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic. Login to reply