即使没有数据也显示 table 边框
show table border even without data
我的报告中有四个 table,有时其中两个没有数据。所以,我想显示每个 table 的边框,即使上面没有数据。请帮助如何显示 table 的边框,即使每个 table.
中都没有数据
我假设您的数据源是 SQL 服务器?如果是这样,最好的解决方案可能是修改您从中获取数据的查询,以在没有数据时包含行。在我的报告中,我经常这样做以生成正确的行数。
CREATE TABLE #temp(rowNum INT, barcode INT, title VARCHAR(100), author VARCHAR(100), fine INT)
INSERT INTO #temp(rowNum, barcode, title, author, fine)
FROM YourTable
DECLARE @h INT
SET @h = (SELECT COUNT(*) FROM #temp)
WHILE @h < 4
BEGIN
SET @h = @h + 1
INSERT INTO #temp(rowNum) VALUES (@h)
END
SELECT * FROM #temp ORDER BY rowNum
这个简单的查询应该 SELECT
无论存在什么数据,将 @h
设置为行数,并添加带有行号的新行,直到有 4 行,编号为 1-4。
SO 上的其他人会告诉您这样循环是低效的,他们可能是正确的。他们会建议计数 table,虽然我的 SQL 技能有所欠缺,但这种方法在我的使用中证明是有效的。
我的报告中有四个 table,有时其中两个没有数据。所以,我想显示每个 table 的边框,即使上面没有数据。请帮助如何显示 table 的边框,即使每个 table.
中都没有数据我假设您的数据源是 SQL 服务器?如果是这样,最好的解决方案可能是修改您从中获取数据的查询,以在没有数据时包含行。在我的报告中,我经常这样做以生成正确的行数。
CREATE TABLE #temp(rowNum INT, barcode INT, title VARCHAR(100), author VARCHAR(100), fine INT)
INSERT INTO #temp(rowNum, barcode, title, author, fine)
FROM YourTable
DECLARE @h INT
SET @h = (SELECT COUNT(*) FROM #temp)
WHILE @h < 4
BEGIN
SET @h = @h + 1
INSERT INTO #temp(rowNum) VALUES (@h)
END
SELECT * FROM #temp ORDER BY rowNum
这个简单的查询应该 SELECT
无论存在什么数据,将 @h
设置为行数,并添加带有行号的新行,直到有 4 行,编号为 1-4。
SO 上的其他人会告诉您这样循环是低效的,他们可能是正确的。他们会建议计数 table,虽然我的 SQL 技能有所欠缺,但这种方法在我的使用中证明是有效的。