科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道SQL Server开发问题前十名(2)

SQL Server开发问题前十名(2)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

在SQL Server中进行开发会让你身处险地,并且寻找快速解决方案。我们编辑了前十名关于SQL Server开发的常见问题。

作者:赛迪网技术社区 来源:赛迪网技术社区 2007年8月29日

关键字: SQL Server SQL Server 各版本 问题 数据库

  • 评论
  • 分享微博
  • 分享邮件
CLR存储过程vs. T-SQL存储过程 +O4P?^;y  
t*U5pUL  
b5CaWj-s  
CLR存储过程和函数与T-SQL存储过程和函数相比,性能如何? |x]u(jzq"  
<KklNL;  
专家回答: sdW@JMU%^  
(-yBZ m4  
这里是用来比较T-SQL例程和CLR例程性能的一种常用的规则:用你的数据,在你的服务器上,测试两套配置,看看哪一个比较好。 Jv+~Ux  
Koz"(EtmAD  
就是说,许多人都运行过性能测试,一般的结果就是T-SQL在标准的CRUD(创建、读取、更新、删除)操作上表现要比好一点,而在复杂数学、字符串赋值和其他的超过数据访问的任务上,则是CLR的性能表现更好一点。 HL)f^0*x  
twNH,Q]g,0  
SQL Server 的专家Gustavo Larriera编辑了如下一些关于这个主题的有用链接: d:T4,cXp  
| w%PF  
·在 SQL Server 2005中使用CLR Integration Gb/ q.s  
`xZH l)i  
·简单介绍在 SQL Server 2005中的 CLR Integration ;B{sbqx  
Bpwg?v(J  
·在 SQL Server 2005中对CLR 和T-SQL做出选择 (~w8rc  
W&H+&x*  
·介绍 SQL Server 2005中的 CLR Integration b ^@yt>h_T  
s`/&8Zm  
·SQL Server 闲谈: SQL Server 2005 Beta 2 CLR问题与回答 iZr`bvR  
d pSM6i  
·数据库管理员的酒吧门防御.NET大坏狼 =iFom-d  
)C?AQ6]ua  
·用户自定义函数的性能比较 `P.kHq"g  
kl{|<[  
如何在一个存储过程中使用另一个存储过程的结果 +FHAv@ S  
#u*^ue,  
e'$2ZJt}  
我编写了一个存储过程在Crystal Report中使用。它工作得很好。我还想在另外一个存储过程中使用这个存储过程产生的结果。我该怎么做? M^>]X%>;  
wB 2[H ;  
专家回答: _{=K_sl}  
gp* !0p  
只要存储过程只产生了一个单个的结果,要在另外一个存储过程中使用这个存储过程产生的输出,这个技术是非常直接的。这个技术就是使用一个临时表来装载存储过程的巨额iguo,然后通过INSERT EXEC语句来执行这个过程并保存结果。一旦结果保留在临时表中了,他们就可以像使用其它表数据一样来使用它了。 N5?k]z=D90  
#"$<+3  
这里是我们可能会复用的一个过程例子: p&!;oK]Ly  
CREATE PROC usp_Demo_AllAuthors as select * from pubs..authors )qLk??PR^  
GO 3B's^=O<  
S=z*%H[hQ  
现在有一个存储过程使用usp_Demo_AllAuthors的结果: e \J;  
CREATE proc usp_Demo_SPUser as CREATE TABLE #Authors ( &HH(.PC&  
au_id varchar(11) NOT NULL PRIMARY KEY CLUSTERED, qZB5<<|  
au_lname varchar (40) NOT NULL , n4kY,a"$  
au_fname varchar (20) NOT NULL , E}$TOCdQ,>  
phone char (12) NOT NULL, l*y>WaoO  
address varchar (40) NULL , *@LSSY( M  
city varchar (20) NULL , fqzZa2#  
state char (2) NULL , Vh-!a  
zip char (5) NULL , sswGL2fb [  
contract bit NOT NULL cS^OVEN/k@  
)– Execute usp_Demo_AllAuthors storing the _GS).KHXfI  
– results in #Authors ?KHoyl  
insert into #Authors pE#O1{>  
exec usp_Demo_AllAuthors– Here we use the #Authors table. This example only o@I#%#  
– only selects from the temp table but you could do much Pd|0=p  
– more such as use a cursor on the table or join with O>KI;1  
– other data. `ZZYj,@0@  
SELECT au_fName + ‘ ‘ + au_lname as [name] S+x6-^:e  
, address+’, ‘+city+’, ‘+state+’ ‘+zip [Addr] PS^w 'r  
from #AuthorsDROP TABLE #Authors `FHwvy  
GO zCTe9 P/7  
8pha0._5
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章