We help IT Professionals succeed at work.
Get Started

Insert Into has a varchar(max) issue

thayduck
thayduck asked
on
115 Views
Last Modified: 2015-11-05
This type of  'Insert Into'  has been working fine for me.
But, I have run into a situation where @sql is larger than 8000 characters.
I thought that if I declare @sql as varchar(nomax) I should get over 2 gb of space.  
It seems to use 8000 not the larger 2 gb for MAX.

 DECLARE @sql VARCHAR(max)

SET @sql = N'INSERT INTO [#IssuesDetails]
            SELECT  * from openquery
            ([GETPAID],    '''
                      + Replace(@sql, '''', '''''') + ''')'

      EXEC (@sql)      

I attached the error.
I can do a work around but wondering why this does not work.
It seems to ignore the NOMAX.
When I run the SSRS report with less parameter choices everything works fine.
This 'Insert Into' is reading records from Oracle tables and inserting them into a SQL table called #IssuesDetails
NomaxError.PNG
Comment
Watch Question
Software Developer
CERTIFIED EXPERT
Commented:
This problem has been solved!
Unlock 1 Answer and 5 Comments.
See Answer
Why Experts Exchange?

Experts Exchange always has the answer, or at the least points me in the correct direction! It is like having another employee that is extremely experienced.

Jim Murphy
Programmer at Smart IT Solutions

When asked, what has been your best career decision?

Deciding to stick with EE.

Mohamed Asif
Technical Department Head

Being involved with EE helped me to grow personally and professionally.

Carl Webster
CTP, Sr Infrastructure Consultant
Ask ANY Question

Connect with Certified Experts to gain insight and support on specific technology challenges including:

  • Troubleshooting
  • Research
  • Professional Opinions
Did You Know?

We've partnered with two important charities to provide clean water and computer science education to those who need it most. READ MORE