首页 > 数据库 > mysql教程 > SQLSERVER2005调试存储过程跟函数

SQLSERVER2005调试存储过程跟函数

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
发布: 2016-06-07 15:45:14
原创
1393 人浏览过

SQLSERVER2005调试存储过程跟函数 以前一直用 Toad for SqlServer 和 Database.Net 来调试SQL2005的存储过程跟函数 Toad for SqlServer 介绍以及下载:toad for sqlserver5.7 Database.Net 介绍以及下载:Database .NET 8.0 发布,数据库管理工具 今日发现原

SQLSERVER2005调试存储过程跟函数

以前一直用Toad for SqlServerDatabase.Net 来调试SQL2005的存储过程跟函数

Toad for SqlServer介绍以及下载:toad for sqlserver5.7

Database.Net 介绍以及下载:Database .NET 8.0 发布,数据库管理工具

今日发现原来上面两个工具的功能,微软的Visual Studio也可以做到

本来微软自家的Visual Studio就支持调试SQLSERVER的存储过程跟函数,我竟然用了第三方工具,而且这些第三方工具也不是很好用

微软在SQLSERVER Management Studio2008里才集成了TSQL调试功能,那么SQL2005只有用VS来调试了


幸亏VS调试TSQL也不是很复杂

我的环境:VS2008 TeamSystem SQL2005 个人开发版 ,   Windows7 Ultimate

我使用的工具还是比较落后

step1:打开Visual Studio2008,然后点击菜单 视图-》服务器资源管理器

最好以管理员身份登录操作系统,打开VS的时候一般就以管理员的身份运行了

SQLSERVER2005调试存储过程跟函数

step2:在数据连接那里 右键-》添加连接

SQLSERVER2005调试存储过程跟函数

step3:数据源那里选择SQLSERVER就可以了

SQLSERVER2005调试存储过程跟函数

step4:选择你本地的数据库不要选择局域网或者广域网里的数据库,因为Windows安全问题的原因你是调试不了的只能执行

joe是我的笔记本电脑的计算机名,joe-homepc是局域网里另一台计算机的计算机名

SQLSERVER2005调试存储过程跟函数

SQLSERVER2005调试存储过程跟函数

SQLSERVER2005调试存储过程跟函数

 

选择好了之后点击“测试连接” ,没有问题就可以点击“确定”按钮了

SQLSERVER2005调试存储过程跟函数

 

step5:打开存储过程或者函数的树节点,然后找一个存储过程或者函数进行调试

SQLSERVER2005调试存储过程跟函数

step6:调试函数,调试的时候无论是存储过程还是函数,都会直接跳过变量定义部分进入函数或存储过程主体来执行

只有当TSQL语句运行的时候才会中断到断点的地方

SQLSERVER2005调试存储过程跟函数

SQLSERVER2005调试存储过程跟函数

SQLSERVER2005调试存储过程跟函数

 SQLSERVER2005调试存储过程跟函数

step7:调试存储过程

SQLSERVER2005调试存储过程跟函数

 

SQLSERVER2005调试存储过程跟函数

 当你调试远程SQL服务器的时候,VS就会报错,就像你写C#的时候是调试不了远程电脑上的代码的

SQLSERVER2005调试存储过程跟函数

 

 SQLSERVER2005调试存储过程跟函数

不过个人觉得调试如果能看到表数据就最好了,调试的时候varchar nvarchar int  datetime这些数据都可以看到

但是表的内容,无论是临时表,表变量,表都是无法看到数据的,如果你想查看中途我插入到@temp表变量里的数据是看不到的

包括Toad for SqlServer 这些工具也是没办法看到的,个人觉得这是一个缺点


最后给大家一个函数,这个函数的作用就是切割字符串,大家可以用来调试一下

<span> 1</span> <span>CREATE</span>     <span>FUNCTION</span> <span>[</span><span>dbo</span><span>]</span>.<span>[</span><span>SplitString</span><span>]</span> (<span>@string</span> <span>varchar</span>(<span>6000</span><span>))
</span><span> 2</span> <span>RETURNS</span> <span>@temp</span> <span>TABLE</span>(substr <span>varchar</span>(<span>30</span><span>))
</span><span> 3</span> <span>AS</span>
<span> 4</span> <span>begin</span>
<span> 5</span>    <span>--</span><span> 用法 select * from SplitString('1, 2, 3')</span>
<span> 6</span> 
<span> 7</span>    <span>declare</span> <span>@str</span> <span>varchar</span>(<span>6000</span><span>)
</span><span> 8</span>    <span>declare</span> <span>@i</span> <span>int</span>
<span> 9</span> 
<span>10</span>    <span>set</span> <span>@i</span><span>=</span><span>0</span>
<span>11</span>    <span>while</span>(<span>@i</span><span><span>len</span>(<span>@string</span><span>))
</span><span>12</span>    <span>begin</span>    
<span>13</span>        <span>if</span>(<span>substring</span>(<span>@string</span>,<span>@i</span>,<span>1</span>)<span>=</span><span>'</span><span>,</span><span>'</span><span>)
</span><span>14</span>         <span>begin</span>
<span>15</span>             <span>select</span> <span>@str</span><span>=</span><span>substring</span>(<span>@string</span>,<span>1</span>,<span>@i</span><span>-</span><span>1</span><span>)
</span><span>16</span>             <span>set</span> <span>@string</span><span>=</span><span>substring</span>(<span>@string</span>,<span>@i</span><span>+</span><span>1</span>,<span>len</span>(<span>@string</span><span>))
</span><span>17</span>                   <span>set</span> <span>@i</span><span>=</span><span>1</span>
<span>18</span>             <span>insert</span> <span>into</span> <span>@temp</span> <span>values</span>(<span>ltrim</span>(<span>@str</span><span>))
</span><span>19</span>     
<span>20</span>            <span>end</span>
<span>21</span>        <span>else</span>
<span>22</span>            <span>begin</span> 
<span>23</span>             <span>set</span> <span>@i</span><span>=</span><span>@i</span><span>+</span><span>1</span>
<span>24</span>            <span>end</span>
<span>25</span>    <span>end</span>
<span>26</span> 
<span>27</span>    <span>insert</span> <span>into</span> <span>@temp</span> <span>values</span>(<span>ltrim</span>(<span>@string</span><span>))
</span><span>28</span> 
<span>29</span>    <span>RETURN</span>
<span>30</span> <span>end</span></span>
登录后复制

 

相关标签:
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板