Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将毫秒转换为SQL日期时间_Sql_Datetime - Fatal编程技术网

将毫秒转换为SQL日期时间

将毫秒转换为SQL日期时间,sql,datetime,Sql,Datetime,如何将毫秒转换为SQL日期时间 我将变量start&end按如下方式传输: var interval = scheduler.GetSelectedInterval(); var resourceId = scheduler.GetSelectedResource(); var start = _aspxDateTimeToMilliseconds(interval.start); var end = _aspxDateTimeToMilliseconds(interval.end);

如何将毫秒转换为SQL日期时间

我将变量start&end按如下方式传输:

 var interval = scheduler.GetSelectedInterval();
 var resourceId = scheduler.GetSelectedResource();
 var start = _aspxDateTimeToMilliseconds(interval.start);
 var end = _aspxDateTimeToMilliseconds(interval.end);
 window.location.href = 
    "FicheAgenda.aspx?Page=ACTION&Mode=Creation&start=" + 
         start + "&end=" + end +"&resourceId=" + resourceId;
输出:

FicheAgenda.aspx?Page=ACTION&Mode=Creation&start=1334579400000&end=1334584800000&resourceId=24
在FicheAgenda.aspx上,我想把这个开始和结束值转换成日期时间

     <asp:SqlDataSource ID="SqlDataSource_Activity" runat="server" 
        ConnectionString="<%$ ConnectionStrings:OnyxConnectionString %>" 
        SelectCommand="SELECT DISTINCT [ID_ACTIVITE], [LIBELLE_ACTIVITE]
                       FROM [ESPTEMPS_ACTIVITE]
                       LEFT JOIN ESPTEMPS_PROGRAMMATION
                ON ESPTEMPS_ACTIVITE.ID_ACTIVITE = ESPTEMPS_PROGRAMMATION.ID_ACTIVITY
                        WHERE DATEADD(MINUTE, 
                                CONVERT(int, SUBSTRING(HEURE_DEBUT, 3, 2)), 
                                DATEADD(HOUR, 
                                  CONVERT(int, SUBSTRING(HEURE_DEBUT, 1, 2)), 
                                   DATE_DEBUT))
                               < convert(datetime,@StartDate)
                        AND
                              DATEADD(MINUTE, 
                                CONVERT(int, SUBSTRING(HEURE_FIN, 3, 2)), 
                                DATEADD(HOUR, 
                                  CONVERT(int, SUBSTRING(HEURE_FIN, 1, 2)), DATE_FIN))
                              > convert(datetime,@EndDate) ">
 <SelectParameters>
    <asp:QueryStringParameter Name="StartDate" QueryStringField="start" />
     <asp:QueryStringParameter Name="EndDate" QueryStringField="end" />
 </SelectParameters>             
 </asp:SqlDataSource>
使用dateadd函数,例如:

dateadd(ms, start, '19800101')

其中1980-01-01将是您在_aspxDateTimeToMilliseconds方法中使用的零日期。

您使用的是什么RDBMS?请添加适当的标记,您要将毫秒与什么进行比较?1-1-1970? 如果是这样的话,您可以获取一个datetime,然后插入到sql Server中。谢谢,但我收到了一条错误消息:参数的数据类型nvarchar对于dateadd的参数2无效function@user609511:您不能指定参数应为数字吗?否则您必须将字符串转换为数字:dateaddms,caststart为bigint,'19800101'谢谢您…现在我在将表达式转换为数据类型int时出现算术溢出错误。@user609511:An int无法处理大于2147483648的数字,这就是我在示例中使用bigint的原因。@Guffa您确定要使用1980吗?Unix纪元始于1970年,大多数时间戳/毫秒从那时开始计数。