【发布时间】:2020-07-10 19:25:53
【问题描述】:
我使用的是 Microsoft SQL Server 2016。我可以在其他版本中使用它。
我的表格中有一个 html 页面内容的变量。
SQL Server 表:
PageVariables
Menus
Slides etc.
我可以在不编程的情况下在 SQL Server 中生成页面 html 吗?
我尝试使用部分替换来做到这一点。但它不适用于多行表。我认为这也不是正确的方法。
在 JavaScript 中是否有类似 SQL Server 的东西,例如 mustache、vue、javascript 文字?
declare @template nvarchar(max)='<html><head>{title}</title></head><body><div class="menu">{menu}</div></body></html>'
declare @title nvarchar(max)='My Page'
declare @menu nvarchar(max)=''
SELECT 'My Menu-1' AS 'MenuName',
'?link=1' AS 'MenuLink'
UNION ALL
SELECT 'My Menu-2' AS 'MenuName',
'?link=2' AS 'MenuLink'
/*
for @menu
set @menu='<a href="@MenuLink">@MenuName</a>'
next
*/
SET @template = REPLACE(@template, '{title}', @title)
SET @template = REPLACE(@template, '{menu}', @menu)
SELECT @template
这样也很难。
SELECT '?link=1' AS '@href',
'My Menu-1' AS 'span'
UNION ALL
SELECT '?link=2' AS '@href',
'My Menu-2' AS 'span'
FOR XML PATH ('a'), ROOT ('div')
【问题讨论】:
-
一般来说,SQL 并不意味着生成用户界面。它用于在数据库中存储和检索数据。您可以执行某种级别的渲染,但您很快就会发现它不适合它。你需要一个应用层,尽管很简单。
标签: html sql sql-server templates generate