我想申明一个变量,用在SQL语句中作为一个变量。
该怎么处理?
如:我是处理时间变量。我想根据变量值,从数据库中 select 出对应的记录。
SQL中是 datetime 类型。select * 
from dbo.OutList
where OutOpTime 
between '2010-01-01 00:00:00.000' and '2011-01-01 00:00:00.000'我想将这里的时间设成变量,这样我在 C++ 编码中定义一个变量,就能动态地在SQL语句中传入时间变量,动态地 select 出需要的记录。
这里定义的变量类型该怎么匹配?

解决方案 »

  1.   

    declare @s datetime
    set @s=getdate()
    select @s
      

  2.   

    DECLARE
    @begintime DATETIME,
    @endtime DATETIME
    SELECT
    @begintime = '2010-01-01 00:00:00.000',
    @endtime = '2011-01-01 00:00:00.000'--SQL:
    select * 
    from dbo.OutList
    where OutOpTime 
    between @begintime and @endtime
    --至于C++如何传递参数给SQL SERVER,自己网上查吧
      

  3.   

    select * 
    from dbo.OutList
    where OutOpTime 
    between @starttime and @endtime
      

  4.   


    while (true)
    {
    pRecordset->Open(
    "declare @outTimeBeg datetime                           \
    set @outTimeBeg = '2010-01-01 00:00:00.000'             \
    declare @outTimeEnd datetime                            \
    set @outTimeEnd = dateadd(minute,30,@OutTimeBeg)        \
    select InStationName,InOpTime,OutStationName,OutOpTime  \
    from dbo.OutList                                        \
    where OutOpTime                                         \
    between @outTimeBeg and @outTimeEnd                     \
    order by OutOpTime",
    pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText
    )
    }呵呵,看了SQL77的回答,写了上面的。
    因为我要循环读取数据,处理数据,所以正想追问如何下次循环如何在前次的基础上递增一个增量给变量,以保证读到新数据,不读到重复的数据。