You can replace the cursor at the end using the PARSENAME function as such:
exec sp_MSforeachtable N'declare @tbl sysname set @tbl = PARSENAME(''?'',1) exec get_column_details @tbl'
I never knew about this function until recently, and I have so many uses for it, just thought I would "append" the article and pass this little tidbit on.
Mindy