各位大侠:
我用ADO调用MSSQL存储过程时,发觉其结果返回速度一直很慢.而在MSSQL执行确很快!
其SQL代码如下:CREATE PROCEDURE GETMORV
AS
SET NOCOUNT ONIF OBJECT_ID('MO_RECV') IS NULL
BEGIN
CREATE TABLE MO_RECV
(MO VARCHAR(20),
ITEM VARCHAR(20),
RCV_DATE DATETIME,
RCV_TIME DATETIME,
ORDERQTY FLOAT,
RCVQTY FLOAT,
STOCK CHAR(2),
BIN CHAR(3))Print 'Create Table OK'END
DECLARE @I INT ,@J INT,@K INT,@CH CHAR(1),@GOTSTR VARCHAR(50)DECLARE @ITEM VARCHAR(20),
@THDATE DATETIME ,
@THTIME DATETIME ,
@THBODY VARCHAR(250),
@TMO VARCHAR(20),
@ORDERQTY VARCHAR(20),
@RCVQTY VARCHAR(20) ,
@STOCK CHAR(2) ,
@BIN CHAR(3),
@WC CHAR(3),
@CONT INTEGERSELECT @CONT=COUNT(*)
FROM Mfg_TRANHIS WHERE CONVERT(VARCHAR(25),THDATE)+
CONVERT(VARCHAR(25),THTIME) NOT IN (SELECT CONVERT(VARCHAR(25),RCV_DATE)+
CONVERT(VARCHAR(25),RCV_TIME) FROM MO_RECV) AND
THTRID='MORV'IF @CONT=0
RETURN (0)
ELSE
BEGIN
......当@CONT=0时应该会很快的退出,但ADO调用时却花了很长时间.不知是何原因??
谢谢!
我用ADO调用MSSQL存储过程时,发觉其结果返回速度一直很慢.而在MSSQL执行确很快!
其SQL代码如下:CREATE PROCEDURE GETMORV
AS
SET NOCOUNT ONIF OBJECT_ID('MO_RECV') IS NULL
BEGIN
CREATE TABLE MO_RECV
(MO VARCHAR(20),
ITEM VARCHAR(20),
RCV_DATE DATETIME,
RCV_TIME DATETIME,
ORDERQTY FLOAT,
RCVQTY FLOAT,
STOCK CHAR(2),
BIN CHAR(3))Print 'Create Table OK'END
DECLARE @I INT ,@J INT,@K INT,@CH CHAR(1),@GOTSTR VARCHAR(50)DECLARE @ITEM VARCHAR(20),
@THDATE DATETIME ,
@THTIME DATETIME ,
@THBODY VARCHAR(250),
@TMO VARCHAR(20),
@ORDERQTY VARCHAR(20),
@RCVQTY VARCHAR(20) ,
@STOCK CHAR(2) ,
@BIN CHAR(3),
@WC CHAR(3),
@CONT INTEGERSELECT @CONT=COUNT(*)
FROM Mfg_TRANHIS WHERE CONVERT(VARCHAR(25),THDATE)+
CONVERT(VARCHAR(25),THTIME) NOT IN (SELECT CONVERT(VARCHAR(25),RCV_DATE)+
CONVERT(VARCHAR(25),RCV_TIME) FROM MO_RECV) AND
THTRID='MORV'IF @CONT=0
RETURN (0)
ELSE
BEGIN
......当@CONT=0时应该会很快的退出,但ADO调用时却花了很长时间.不知是何原因??
谢谢!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货