DECLARE @html NVARCHAR(MAX)
SET @html = '<style type=''text/css''>.header {text-align:center;font-weight:bold;white-space:nowrap;color:#7f7e82;} .cell_text {vertical-align:top;text-align:left;color:#333333;cursor:pointer} .cell_num {vertical-align:top;text-align:right;color:#333333;}</style>' ;
SET @html = @html + CAST(( SELECT 3 [@cellpadding],
0 [@cellspacing],
'font-family:verdana;font-size:10px;' [@style],
1 [@border],
--returns the header
( SELECT [@class] = 'header', 'Database Table' [text()] FOR XML PATH('th'), TYPE) tr,
( SELECT [@class] = 'header', 'Entity Count' [text()] FOR XML PATH('th'), TYPE) tr,
( SELECT [@class] = 'header', 'Total Rows' [text()] FOR XML PATH('th'), TYPE ) tr,
-- returns the rows in the table
( SELECT ( SELECT [@class] = 'cell_text',[@onClick]='window.open(test.html)',dbtable [text()] FOR XML PATH('td'), TYPE ),
( SELECT [@class] = 'cell_text', entities [text()] FOR XML PATH('td'), TYPE ),
( SELECT [@class] = 'cell_num', rows [text()] FOR XML PATH('td'), TYPE )
FROM ( SELECT TOP 3 dbtable = OBJECT_NAME(object_id), entities = COUNT(DISTINCT name), rows = COUNT(*)
FROM sys.columns
GROUP BY OBJECT_NAME(object_id)
) data FOR XML PATH('tr'), TYPE
)
FOR XML PATH('table'), TYPE
) AS VARCHAR(MAX))
Exec dbo.sp_send_dbmail @profile_name='MailForHr',
@recipients='[email protected]',
@subject=N'ddddd',
@body=@html,
@body_format='HTML';
怎么样才能在点dbtable时能弹出一窗口
SET @html = '<style type=''text/css''>.header {text-align:center;font-weight:bold;white-space:nowrap;color:#7f7e82;} .cell_text {vertical-align:top;text-align:left;color:#333333;cursor:pointer} .cell_num {vertical-align:top;text-align:right;color:#333333;}</style>' ;
SET @html = @html + CAST(( SELECT 3 [@cellpadding],
0 [@cellspacing],
'font-family:verdana;font-size:10px;' [@style],
1 [@border],
--returns the header
( SELECT [@class] = 'header', 'Database Table' [text()] FOR XML PATH('th'), TYPE) tr,
( SELECT [@class] = 'header', 'Entity Count' [text()] FOR XML PATH('th'), TYPE) tr,
( SELECT [@class] = 'header', 'Total Rows' [text()] FOR XML PATH('th'), TYPE ) tr,
-- returns the rows in the table
( SELECT ( SELECT [@class] = 'cell_text',[@onClick]='window.open(test.html)',dbtable [text()] FOR XML PATH('td'), TYPE ),
( SELECT [@class] = 'cell_text', entities [text()] FOR XML PATH('td'), TYPE ),
( SELECT [@class] = 'cell_num', rows [text()] FOR XML PATH('td'), TYPE )
FROM ( SELECT TOP 3 dbtable = OBJECT_NAME(object_id), entities = COUNT(DISTINCT name), rows = COUNT(*)
FROM sys.columns
GROUP BY OBJECT_NAME(object_id)
) data FOR XML PATH('tr'), TYPE
)
FOR XML PATH('table'), TYPE
) AS VARCHAR(MAX))
Exec dbo.sp_send_dbmail @profile_name='MailForHr',
@recipients='[email protected]',
@subject=N'ddddd',
@body=@html,
@body_format='HTML';
怎么样才能在点dbtable时能弹出一窗口
直接html我知道 怎么弄,,,,现在就是想在邮件中怎么弄
写这样的都没用
你的双引号和单引号反了。
javascript 的Debug确实很麻烦,很小的一个标点错误就不能运行了。
这个真没法帮,你自己慢慢检查一下生成的code吧。
那个不是双引号 ,是两个单引号
( SELECT ( SELECT [@class] = 'cell_text',[@onclick]="window.open('test.html')",dbtable [text()] FOR XML PATH('td'), TYPE ),这样是报错。
( SELECT ( SELECT [@class] = 'cell_text',[@onclick]='window.open('test.html')',dbtable [text()] FOR XML PATH('td'), TYPE ),
这样也报错
[@onClick]='window.open(''test.html'')'
这么写是对的,你再看看自己的code
copy我最上面的代码,直接放在msdb中的查询分析器中就可以运行,把邮件改下就可以到邮箱看收到的邮件
SET @html = '<style type=''text/css''>.header {text-align:center;font-weight:bold;white-space:nowrap;color:#7f7e82;} .cell_text {vertical-align:top;text-align:left;color:#333333;cursor:pointer} .cell_num {vertical-align:top;text-align:right;color:#333333;}</style><script language=''javascript''>function openwin(){window.open (''page.html'',''newwindow'',''height=100,width=400,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no'')}</script>' ;
SET @html = @html + CAST(( SELECT 3 [@cellpadding],
0 [@cellspacing],
'font-family:verdana;font-size:10px;' [@style],
1 [@border],
--returns the header
( SELECT [@class] = 'header', 'Database Table' [text()] FOR XML PATH('th'), TYPE) tr,
( SELECT [@class] = 'header', 'Entity Count' [text()] FOR XML PATH('th'), TYPE) tr,
( SELECT [@class] = 'header', 'Total Rows' [text()] FOR XML PATH('th'), TYPE ) tr,
-- returns the rows in the table
( SELECT ( SELECT [@class] = 'cell_text',[@onClick]='openwin()',dbtable [text()] FOR XML PATH('td'), TYPE ),
( SELECT [@class] = 'cell_text', entities [text()] FOR XML PATH('td'), TYPE ),
( SELECT [@class] = 'cell_num', rows [text()] FOR XML PATH('td'), TYPE )
FROM ( SELECT TOP 3 dbtable = OBJECT_NAME(object_id), entities = COUNT(DISTINCT name), rows = COUNT(*)
FROM sys.columns
GROUP BY OBJECT_NAME(object_id)
) data FOR XML PATH('tr'), TYPE
)
FOR XML PATH('table'), TYPE
) AS VARCHAR(MAX))
Exec dbo.sp_send_dbmail @profile_name='MailForHr',
@recipients='[email protected]',
@subject=N'ddddd',
@body=@html,
@body_format='HTML';这样写也是没有报错,但就是收到的邮件,点了没有反应
window.open(URL,name=_blank,...)
但现在不知<a>要怎么写