Add a column if it doesn't exist to all tables?
I'm using SQL Server 2005/2008. I need to add a column to a table if it does not yet exist. This will apply to all tables in a given database. I hoped I was close, but I'm having issues with this solution. How can this be done? Here's what I have: EXEC sp_MSforeachtable ' declare @tblname varchar(255); SET @tblname = PARSENAME("?",1); if not exists (select column_name from INFORMATION_SCHEMA.columns where table_name = @tblname and column_name = ''CreatedOn'') begin ALTER TABLE @tblname ADD CreatedOn datetime NOT NULL DEFAULT getdate(); end ' But I get errors: Error 102: Incorrect syntax near '