问题一:
我写的存储过程:
--显示表Information里的信息。
CREATE PROC SelectToInformationByCdtData
(
@Count int,
@VisioModelId int
)
AS
BEGIN
SELECT TOP @Count CdtData.[Id],CdtData.Value,Information.InformationId,
               Information.InformationValue,Information.InformationName,
               Information.AlarmValve,Information.VisioModelId
FROM CdtData,Information
WHERE CdtData.[Id]=Information.InformationId 
             AND Information.InformationTypeId=2
             AND Information.VisioModelId=@VisioModelId
ORDER BY ComDateTime DESC
END报错:服务器: 消息 170,级别 15,状态 1,过程 SelectToInformationByCdtData,行 8
第 8 行: '@Count' 附近有语法错误。是怎么一回事哦??请大侠帮我看看,谢谢。
问题二:
我需要实现的功能是:当数据库里面的任何一张表被更改后,我的from里面的label显示的数据也要跟着进行更改。我不知道应该用什么方法去实时监控数据库里面的数据并进行更改,在此向大家请教一下,谢谢。 

解决方案 »

  1.   

    这个错误是 select top 后面不能是变量
      

  2.   

    但是我需要top是变量的嘛,应该怎么写呢??
      

  3.   

    如果你的Top里面一定要是变量,Sql Server的更高级版本可以支持,
    或者你用动态Sql去拼凑语句。
      

  4.   

    你top的目的是什么?如果是为了减少资源消耗.
    你都加上order by了,top不top都会遍历整张表
    读到内存以后再用程序处理吧!
      

  5.   

    问题二:
      可以用触发器和sqlserver的事件通知机制实现。   
      用触发器调用事件通知机制给你的应用发送事件。   
      http://msdn2.microsoft.com/zh-cn/library/ms190378.aspx
      

  6.   

    问题一解决了,用的动态SQL语句。问题二还不知道怎么弄。再继续研究中......
      

  7.   

    问题二
    楼主是说的form里的lable吗?
    在研究....