/ Published in: SQL

Here is the SQL code to print a row of from any table. All you have to do is modify the @tableName and @whereClause variables. Works only in MS SQL 2005+
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
DECLARE @tableName VARCHAR(100) DECLARE @whereClause VARCHAR(100) SET @tableName = 'Customers' SET @whereClause = 'WHERE id = 999' DECLARE @TABLE TABLE(id INT IDENTITY(1, 1), name VARCHAR(100)) INSERT INTO @TABLE (name) SELECT name FROM sys.columns WHERE object_id = OBJECT_ID(@tableName) DECLARE @i INT DECLARE @rowCount INT SELECT @i = MIN(id), @rowCount = MAX(id) FROM @TABLE DECLARE @rowString VARCHAR(MAX) SET @rowString = '' WHILE (@i <= @rowCount) BEGIN DECLARE @columnName VARCHAR(100) SELECT @columnName = name FROM @TABLE WHERE id = @i DECLARE @columnValueTable TABLE(name VARCHAR(100)) INSERT INTO @columnValueTable EXEC ('SELECT ' + @columnName + ' FROM ' + @tableName + ' ' + @whereClause) DECLARE @columnValue VARCHAR(100) SELECT @columnValue = name FROM @columnValueTable IF (@columnValue IS NULL) SET @columnValue = 'NULL' SET @rowString = @rowString + @columnName + ': ' + @columnValue + CHAR(10) SET @i = @i + 1 END -- You can also use SELECT instead of PRINT. PRINT @rowString
URL: http://www.lessonist.com/lessons/id/594/print-all-row-values-from-any-table-using-sql
Comments
