www.91084.com

GVKun编程网logo

使用SQL Server从sysdate和birthdate计算年龄

14

在这篇文章中,我们将为您详细介绍使用SQLServer从sysdate和birthdate计算年龄的内容。此外,我们还会涉及一些关于、date.inc.php3,模拟SQLSERVER的两个函数:da

在这篇文章中,我们将为您详细介绍使用SQL Server从sysdate和birthdate计算年龄的内容。此外,我们还会涉及一些关于、date.inc.php3,模拟SQLSERVER的两个函数:dateadd(),datediff()、ERROR: The version of SQL Server in use does not support datatype ''datetime2''.、jQuery datepicker从jsp设置minDate和maxDate的知识,以帮助您更全面地了解这个主题。

本文目录一览:

使用SQL Server从sysdate和birthdate计算年龄

使用SQL Server从sysdate和birthdate计算年龄

这个问题已经在这里有了答案

8年前关闭。

可能重复:
如何使用年,月和日来计算T-SQL中的年龄

我只是尝试使用生日日期变量来计算年龄(以年为单位)

1932-04-29 00:00:00.000

和SQL Server中的SYSDATETIME(),其中

SELECT year(Sysdatetime() - Birthdate) as Age

出品(出乎意料):1980

我错过了什么?我预计会得到80!

" alt="">

">

我现在想将选择日历所得的日期,传到 action 中,可是为空怎么办?后来感觉应该是 value 的问题,请问 value=“” 应该怎么写呢?

<input name="Birthday" type="text" id="Birthday"  onfocus="show_cele_date(Birthday,'''','''',Birthday)" size="10" value="请选择解封日期") 

value=""/>

value="this.show_cele_date (Birthday,'''','''',Birthday)" 显示的是默认值为这个?

PS:打着雷,打程序,好吓人啊是不是我报 500 次数太多了 - -

我不想做成把这个值藏到一个隐藏框的形式,希望能直接把值就通过这个框传过去。

date.inc.php3,模拟SQLSERVER的两个函数:dateadd(),datediff()

date.inc.php3,模拟SQLSERVER的两个函数:dateadd(),datediff()

server|sqlserver|函数

//文件名:date.inc.php3
//在使用这两个函数前,要先将日期或日期时间转换成timestamp类型。
//如:
//$today=mktime(0,0,0,date("m"),date("d"),date("Y"));

/****模拟sqlserver中的dateadd函数*******
$part    类型:string
        取值范围:year,month,day,hour,min,sec
        表示:要增加的日期的哪个部分
$n        类型:数值
        表示:要增加多少,根据$part决定增加哪个部分
            可为负数
$datetime类型:timestamp
        表示:增加的基数
返回    类型:timestamp
**************结束**************/
function dateadd($part,$n,$datetime){
    $year=date("Y",$datetime);
    $month=date("m",$datetime);
    $day=date("d",$datetime);
    $hour=date("H",$datetime);
    $min=date("i",$datetime);
    $sec=date("s",$datetime);
    $part=strtolower($part);
    $ret=0;
    switch ($part) {
        case "year":
            $year+=$n;
            break;
        case "month":
            $month+=$n;
            break;
        case "day":
            $day+=$n;
            break;
        case "hour":
            $hour+=$n;
            break;
        case "min":
            $min+=$n;
            break;
        case "sec":
            $sec+=$n;
            break;
        default:
            return $ret;
            break;
    }
$ret=mktime($hour,$min,$sec,$month,$day,$year);
    return $ret;
}

/****模拟sqlserver中的datediff函数*******
$part    类型:string
        取值范围:year,month,day,hour,min,sec
        表示:要增加的日期的哪个部分
$date1,$date2    类型:timestamp
        表示:要比较的两个日期
返回    类型:数值
**************结束*(*************/
function datediff($part,$date1,$date2){
    //$diff=$date2-$date1;
    $year1=date("Y",$date1);
    $year2=date("Y",$date2);
    $month2=date("m",$date2);
    $month1=date("m",$date1);
    $day2=date("d",$date2);
    $day1=date("d",$date1);
    $hour2=date("d",$date2);
    $hour1=date("d",$date1);
    $min2=date("i",$date2);
    $min1=date("i",$date1);
    $sec2=date("s",$date2);
    $sec1=date("s",$date1);

    $part=strtolower($part);
    $ret=0;
    switch ($part) {
        case "year":
            $ret=$year2-$year1;
            break;
        case "month":
            $ret=($year2-$year1)*12+$month2-$month1;
            break;
        case "day":
            $ret=(mktime(0,0,0,$month2,$day2,$year2)-mktime(0,0,0,$month1,$day1,$year1))/(3600*24);
            break;
        case "hour":
            $ret=(mktime($hour2,0,0,$month2,$day2,$year2)-mktime($hour1,0,0,$month1,$day1,$year1))/3600;
            break;
        case "min":
            $ret=(mktime($hour2,$min2,0,$month2,$day2,$year2)-mktime($hour1,$min1,0,$month1,$day1,$year1))/60;
            break;
        case "sec":
            $ret=$date2-$date1;
            break;
        default:
            return $ret;
            break;
    }
    return $ret;
}



ERROR: The version of SQL Server in use does not support datatype ''datetime2''.

ERROR: The version of SQL Server in use does not support datatype ''datetime2''.

在刚接触的 MVC2 Sample (NerdDinner) 中,我把 SQL2008 的数据库转为 SQL2005 后

出现了

The version of SQL Server in use does not support datatype ''datetime2''.

 

其问题产生的原因是 SQL2005 没有该数据类型 datetime2

然后 GOOGLE 一翻找到答案

 

发生这个问题的主要原因是 *.edmx 中可以设置一个数据库版

 

<Schema Namespace="NerdDinnerModel.Store" Alias="Self" Provider="System.Data.SqlClient" ProviderManifestToken="2008" xmlns:store="http://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator" xmlns="http://schemas.microsoft.com/ado/2009/02/edm/ssdl">

 

改为

 

<Schema Namespace="NerdDinnerModel.Store" Alias="Self" Provider="System.Data.SqlClient" ProviderManifestToken="2005" xmlns:store="http://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator" xmlns="http://schemas.microsoft.com/ado/2009/02/edm/ssdl">

即可


原文链接: http://www.cnblogs.com/highend/archive/2010/07/19/1780569.html

jQuery datepicker从jsp设置minDate和maxDate

jQuery datepicker从jsp设置minDate和maxDate

伙计们,以下代码允许用户选择9月1日到当前日期之间的日期。我在使用jQuery datepicker代码时遇到问题。请告诉我您的意见。

> <%try {sdf = new SimpleDateFormat(“ yyyyMMdd”);>  >  >                   minDate = new Date();                       // timestamp> now>                   Calendar cal = Calendar.getInstance();          // get> calendar instance>                   cal.setTime(minDate);                           // set cal> to date>                   cal.set(cal.get(cal.YEAR),cal.SEPTEMBER,1);>                   minDate = cal.getTime();>  >                   maxDate = new Date();>                   cal.setTime(maxDate);>                   maxDate = cal.getTime();  >           }   catch (Exception e)  >           {>  >                   System.out.println(e);  >           }>           %>  >           <script type="text/javascript">>               var mx = <%=sdf.format(minDate)%>;>               var mv = <%=sdf.format(maxDate)%>;>               $(document).ready(function(){>                   $("#revRepDate").datepicker({>                   showOn: ''button'', buttonImageOnly:>                       true, buttonImage:>                   ''style/images/icon_cal.png'',>                        dateFormat: ''yymmdd'' });>                       }); $("#revRepDate").datepicker(''option'',{minDate:mx>                    , maxDate:mv });>  

答案1

小编典典

您需要引号:

var mx = ''<%=sdf.format(minDate)%>'';var mv = ''<%=sdf.format(maxDate)%>'';

今天关于使用SQL Server从sysdate和birthdate计算年龄的分享就到这里,希望大家有所收获,若想了解更多关于、date.inc.php3,模拟SQLSERVER的两个函数:dateadd(),datediff()、ERROR: The version of SQL Server in use does not support datatype ''datetime2''.、jQuery datepicker从jsp设置minDate和maxDate等相关知识,可以在本站进行查询。

本文标签: