我执行的是一个存储过程,在存储过程中有这样一句话
----------------------------------------------------
CREATE    PROCEDURE sp_mode_db
@BB varchar(10)
as
create table #tmp_tbl (AA char(10),BB varchar(10))
...
insert into #tmp_tbl select AA,BB from View_tbl where AA=@BB
...
-----------------------------------------------------运行时错误'-2147467259(80004005)';
[Microsoft][ODBC SQL Server Driver][SQL server] insert into #tmp_tbl select AA,BB from View_tbl where AA=@BB
----------------------------------不是每次执行到这得时候都报错,报错是没有任何规律的。想什么时候报什么时候报!!!!

解决方案 »

  1.   

    在isqlw中间对存储过程调试,这样是没办法看的
      

  2.   

    @BB varchar(10)
    AA char(10)
    AA=@BB
    会不会类型出问题了?
      

  3.   

    对不起,原存储过程不是这样写的
    declare @Sql1 nvarchar(2048)
    select @sql='insert into #tmp_tbl select AA,BB from View_tbl where AA= '''+@BB+'''
    exec sp_executesql @sql
      

  4.   

    CREATE    PROCEDURE sp_mode_db
    @BB varchar(10)
    as
    create table #tmp_tbl (AA char(10),BB varchar(10))
    ...
    insert into #tmp_tbl(AA,BB) select AA,BB from View_tbl where AA=@BB
      

  5.   

    CREATE    PROCEDURE sp_mode_db
    @BB varchar(10)
    as
    create table #tmp_tbl (AA char(10),BB varchar(10))
    ...
    insert into #tmp_tbl(AA,BB) select AA,BB from View_tbl where AA=@BB and len(AA)<11 and len(BB)<11