if exists (select * from sysobjects where type = 'P' and name = 'sys_ysl_getColumnNameToArrayByTableName') drop procedure sys_ysl_getColumnNameToArrayByTableNamegocreate procedure sys_ysl_getColumnNameToArrayByTableName @tablename varchar (100), @colnameArrayList varchar (1000) output
With Encryptionas declare @sql nvarchar (1000) declare @colnameArray varchar (1000) declare @colname varchar (50) SET @sql = N'DECLARE CUR_COLNAME CURSOR FOR select a.name from syscolumns a inner join sysobjects b on a.id = b .id where b.name='' '@tablename n' '' ORDER BY A.COLORDER '
Execute sp_executesql @SQL
Open cur_colname while (0 = 0) Begin Fetch next from cur_colname @colname
IF (@@ fetch_status <> 0) BREAK
If @colnameArray <> 'set @ colnameArray = @ colnameArray ', ' @ colname else set @ colnamerray = @ colname end
Close Cur_colname deallocate cur_colname set @ colnameArrayList = @ colnameArray
/ * Print @colnameArrayList - Test Code Declare @@ aa varchar (100) EXEC SYS_YSL_GETCOLUMNNAMETOARRAYBYTABLENAME 'SPBLA', @@ aa - end