![]() |
1
4
在Sybase ASE中,我们可以使用此黑客通过“代理表”从存储过程中进行选择: http://www.sypron.nl/proctab.html 例子:
|
![]() |
2
2
您需要请求DBA更改存储过程。
|
![]() |
3
2
在Sybase IQ(至少12.6及更高版本)下,您可以从存储过程中进行选择,并像筛选表一样筛选结果。我不知道这在ASE或ASA下是否有效,但您可以尝试一下。 因此,如果将存储过程称为myproc,则结果集有一个活动列,该列可以是0或1,并且您只希望选择活动=1行,则可以执行此操作。 从myproc()中选择*ACTIVE=1 在IQ下,您也可以将其用作派生表,并将其与其他表连接,例如:。。。 选择t1.名称、t1.地址、t2、活动 (从myproc()中选择*,其中ACTIVE=1)t2 …有点整洁! 我希望无论您运行哪个版本的Sybase都能正常工作。 |
![]() |
4
2
使用ASE是可能的,但使用CIS和代理表的方式比较迂回。Rob Verschoor的网站对该机制进行了详细描述: http://www.sypron.nl/proctab.html 作为一种好奇,我试过一次,它确实有效。我没有深入研究错误处理这个棘手的问题。 pjjH |
![]() |
5
2
据我所知,这在Sybase ASE中是不可能的。甚至使用
不起作用(至少在sybase 12.x上是这样)。 |
![]() |
6
1
只是一个想法。 如果DBA出于某种原因希望您不要查看或担心内部内容,那么他可能会准备一个视图而不是存储过程。 另一种方法是使用sp_helptext查看存储过程文本(除非已加密),然后出于自己的目的(例如,将其重写到视图中),以便能够对结果集应用附加条件。 |
![]() |
7
0
在Sybase IQ中,您可以执行以下操作:
|
![]() |
sqlrobert · SQL-如何查找不包含特定字段值的一组记录 2 年前 |
![]() |
Nick Fleetwood · 调度语法的LINQ查询 3 年前 |
![]() |
Mateen Bagheri · 选择表的计数并选择其自身 3 年前 |
![]() |
Java · 使用交叉应用同时显示两列 3 年前 |