任何人都知道如何在crystal report上显示数据库服务器名称。 我正在使用水晶报告X, 将程序存储为水晶报告的数据源。
如果您使用视图,则可以使用 SQL表达式字段来显示服务器名称, 选择SERVERPROPERTY('servername') 选择@@ SERVERNAME
但是我们怎样才能使用存储过程(因为在Crystal报表中这个数据源中不能提供SQL表达式)。
提前致谢。
答案 0 :(得分:0)
如果您只是尝试通过存储过程传递数据库名称以便它可以在Crystal Reports中使用,则可以通过声明变量并将其添加到选择查询中来完成此操作。
Alter PROCEDURE SelectSomeRecords
AS
BEGIN
SET NOCOUNT ON;
Declare @DatabaseName varchar(25)
Set @DatabaseName = (SELECT DB_NAME())
Select top 10 LastName
, FirstName
, @DatabaseName as DatabaseName
from Customers
END
GO
这可能是一种破解方式,但我没有找到一种方法来执行它与使用SQL表达式的方式类似。
答案 1 :(得分:0)
我是通过在报告上添加额外的命令数据源来完成的。我认为,只有在报表中使用SP作为数据源时才能这样做。
答案 2 :(得分:0)
我知道这篇文章很旧,但是当我以前看时,找不到任何地方的答案。
添加命令以使用以下SQL进行报告:
select sys_context('userenv','db_name') from dual
请勿将其链接到现有表中的任何内容