Hi gang,
So I've got this audit table, looks like this:
USE [DatabaseName]
GO
/****** Object: Table [ERAUser].[Audit] Script Date: 05/20/2009 17:07:11 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [ERAUser].[Audit](
[AuditID] [int] IDENTITY(1,1) NOT NULL,
[Type] [char](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[TableName] [varchar](128) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[PrimaryKeyField] [varchar](1000) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[PrimaryKeyValue] [varchar](1000) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[FieldName] [varchar](128) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[OldValue] [varchar](1000) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[NewValue] [varchar](1000) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[UpdateDate] [datetime] NULL DEFAULT (getdate()),
[UserName] [varchar](128) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
The problem is, for reasons out of my control, I need to return data to users (other developers that are the users of this system) as rowsets that replicate the source table. How can I turn this schema on its side and get the values in FieldName as the column headings for a rowset? I'm using SQL 2005. I will know the tablename and the UpdateDate.