当前位置: 代码迷 >> ASP.NET >> 获取服务器时间(存储过程),该如何解决
  详细解决方案

获取服务器时间(存储过程),该如何解决

热度:1009   发布时间:2013-02-25 00:00:00.0
获取服务器时间(存储过程)
CREATE   PROCEDURE   LR_GetClientTime_Now
      @ServerTimeNow         varchar(30)   out
  AS  
SELECT   @ServerTimeNow=   getdate()
GO
==============================================
这样写对不对?怎么转换为程序中的时间为string类型


public   string   GetServerTime()
                {
                        SqlConnection   connec=new   SqlConnection   (SqlHelper.ConnOnline);
                        SqlCommand   comm   =   new   SqlCommand();
                        SqlParameter   parameter   =   new   SqlParameter( "@ServerTimeNow ",SqlDbType.NVarChar);

                        parameter.Direction   =   ParameterDirection.Output;
                        comm.Connection   =   connec;
                        comm.CommandType   =   CommandType.StoredProcedure;
                        comm.CommandText   =   "LR_GetServerTime_Now ";     //存储过程名
                        comm.ExecuteNonQuery();
                        return   parameter.Value.ToString();     //这样获取值对不对?
                       
                       
                }

不知道哪里出错了
==================================================


servertime   =   cus.GetServerTime().ToString( "yyyy-MM-dd   HH:mm ");//需要将时间转换为这样的格式


====================================================
获取OUTPUT类型参数的代码还不太清楚,麻烦大虾给的解释详细点

------解决方案--------------------------------------------------------
存储过程里的@ServerTimeNow 定义为DateTime output
------解决方案--------------------------------------------------------
CREATE PROCEDURE LR_GetClientTime_Now
@ServerTimeNow varchar(30) out
AS
SELECT @ServerTimeNow = Convert(varchar(20), getdate())
GO
------解决方案--------------------------------------------------------
SqlParameter parameter = new SqlParameter( "@ServerTimeNow ",SqlDbType.DateTime);
------解决方案--------------------------------------------------------
楼上正解
------解决方案--------------------------------------------------------
设置参数为output
------解决方案--------------------------------------------------------
set @ServerTimeNow = cast(getdate() as varchar(20))

------解决方案--------------------------------------------------------
SELECT @ServerTimeNow= convert(nvarchar(10),getdate(),102)

------解决方案--------------------------------------------------------
CONVERT(CHAR,getdate() ,111)
------解决方案--------------------------------------------------------
真晕了,弄个服务器时间有这么麻烦,还得用存储过程??别以为用存储过程提高效率,有的情况下他们效率很底的
  相关解决方案