我已经为Delphi使用了UniDac VCL组件一年了,但是最近用SQL Server 2012启动了一个相当大的项目,我想在不同的方案中分离表和存储过程我的整个逻辑在存储过程中所以没有查询&# 39; s在程序中只有存储过程的名称和参数。
问题在于,当我将存储过程架构从dbo
更改为让SchemaA
然后尝试从Delphi运行它时,TUniStoredProc
组件会将其视为ProcedureName
SchemaA.ProcedureName
而不是SchemaA.ProcedureName
,它会抛出在执行时找不到存储过程的异常。
我不能将不同的模式分配给不同的用户作为其默认方案,因为有些用户根据权限使用4-6方案。我尝试过的是手动输入{{1}}并且效果很好,但这样做~150个组件需要花费很多时间,所以我正在寻找更好的解决方案。
有什么想法吗?
答案 0 :(得分:0)
我不知道这些组件有多少表单或模块,但如果它们是集中的,则以文本模式打开表单并进行替换。
UniDac的Mac可能会派上用场,人们可以使用 {MySchema} .ProcedureName并在连接宏中设置MySchema名称。