我个人的机器A,服务器为B,在服务器上我写了一个存储过程,在本地机器上我写了代码调用存储过程,这个存储过程的主要目的是将数据库中的几个表中的符合条件的数据插入到另外几个表中,然后将其删除,本来我是想把ASP页的连接数据库指向我本地机器的,只是我的机器我安装的时侯选的用WINDOWS密码登陆,没有用数据库的,结果代码连接不上,不知怎么写了,只知道用SA的写法,结果就连到服务器上了,本来也没有想会直接测试,结果代码写好后,刚开始调试不通,便有些走思,结果代码通了,直接执行了服务器上的存储过程,当我反应过来时进度显示好像执行了一部份,急得没有办法,停掉了本地网络连接,出现这种情况会出现什么问题,比如数据未处理完损坏,丢失,或是数据没有转换完而出现异常,我认为应该不会,因为我的指令已经传给服务器了,与我本机应该没有什么关系了!
 请高手指点另外,我想在存储过程中定义一个参数,用return返回,这样从WEB可以看出程序到底执行结果是什么,但是不知道在ASP中判断这个存储过程返回值要如何写?
if 返回值 =1 then...........
else
..............

解决方案 »

  1.   

    第2个问题:3. 输出参数 
    declare @num int, 
            @sqls nvarchar(4000) 
    set @sqls='select count(*) from tableName' 
    exec(@sqls) 
    --如何将exec执行结果放入变量中? declare @num int, 
            @sqls nvarchar(4000) 
    set @sqls='select @a=count(*) from tableName ' 
    exec sp_executesql @sqls,N'@a int output',@num output 
    select @num 
    第一个问题太长了   :)
      

  2.   

    表A 数据 插入B
    表C数据插入表D
    ..............
    删除表A\C.........数据
      

  3.   

    可能会使数据丢失,最好在ASP端加个事务处理。再测试下。
      

  4.   

    但是我只是在我的机器上执行了一下服务器上的存储过程,然后断开与服务器的链接,执行应是在服务器上,应该不会吧,我理解的,请指教!
    最好在ASP端加个事务处理,这个不太理解,半路出家,正在学,还请多指教!