Comments are available to members only. Sign up or Log in to view these comments.
Main Topics
Browse All TopicsPROBLEM: Receive error message:
Server: Msg 105, Level 15, State 1, Line 128
Unclosed quotation mark before the character string 'Un
into NewTable FROM (select tbl_ecom_productdescriptor
GROUP ...
Server: Msg 170, Level 15, State 1, Line 128
Line 128: Incorrect syntax near 'Un
into NewTable FROM (select tbl_ecom_productdescriptor
--------------------------
--------------------------
I am running the following dynamic sql:
declare
@table as varchar(500),
@onrows as varchar(128),
@onrowsalias as sysname ,
@oncols as varchar(128),
@sumcol as sysname
set @table=
'(select tbl_ecom_productdescriptor
'from tbl_ecom_productdescriptor
'tlkp_ecom_productdescript
set @onrows ='product'
set @onrowsalias= null;
set @oncols='dscname'
set @sumcol='dscval'
declare
@sql as varchar(8000),
@newline as char(1)
set @newline = char(10)
-- step 1: beginning of sql string
set @sql =
'select' + @newline +
' ' + @onrows +
case
when @onrowsalias is not null then ' as ' + @onrowsalias
else ''
end
create table #keys(keyvalue nvarchar(100) not null primary key)
--declare @keys table(keyvalue varchar(100) not null primary key)
declare @keyssql as varchar(1000)
set @keyssql =
'insert into #keys ' +
'select distinct cast(' + @oncols + ' as nvarchar(100)) ' +
'from ' + @table
exec (@keyssql)
declare @key as nvarchar(100)
select @key = min(keyvalue) from #keys
while @key is not null
begin
set @sql = @sql + ',' + @newline +
' max(case cast(' + @oncols +
' as nvarchar(100))' + @newline +
' when N''' + @key +
''' then ' + case
when @sumcol is null then '1'
else @sumcol
end + @newline +
' else null' + @newline +
' end) as ' + @key
select @key = min(keyvalue) from #keys
where keyvalue > @key
end
SET @sql = @sql + @NEWLINE +
' into NewTable FROM ' + @table + @NEWLINE +
'GROUP BY ' + @onrows + @NEWLINE +
'ORDER BY ' + @onrows
-- set @sql = @sql + @newline +
-- 'from ' + @table + @newline +
-- 'group by ' + @onrows + @newline +
-- 'order by ' + @onrows
-- for debugging...this information will print into the messages section
-- of query analyzer...prints information to the messages window at the
-- bottom of the screen...
print @sql + @newline
exec (@sql)
This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.
Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.
If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.
Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.
Access the answers to your technology questions today.
30-day free trial. Register in 60 seconds.
Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Try it out and discover for yourself.
30-day free trial. Register in 60 seconds.
Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.
Business Accounts
Answer for Membership
by: rherguthPosted on 2005-11-17 at 15:27:36ID: 15316330
Comments are available to members only. Sign up or Log in to view these comments.