股票都有什么战法:有关ASP+SQL日期格式问题!

来源:百度文库 编辑:神马品牌网 时间:2024/05/05 16:02:37
用date()赋值当前日期给sql中的g_date字段,写入的格式为:2006-1-1这样的。。我想在读出g_date中内容的时候用ASP转化成:2006-01-01这样的8位形式.请教高手有什么办法!也可以是在写入的时候就写进去8位的。不管哪一种方法好用就好!谢谢大家!

可以这样做,写入到数据库不管,因为楼主数据库这个日期字段采用的是短日期格式,只要读出的时候在SQL中处理一下就可以了:

Select item1,item2,convert(char(10),g_date,120) AS g_date From table1

convert(char(10),getdate(),120)这一句是日期的转换函数,建议楼主可以到网上或者SQL的联机丛书查阅相关资料,很有用的欧.

VBS里没有Format函数
自己写一个

'//时间格式化
'//参数:时间,格式模板
'//返回:格式化后的字符串
'//备注:格式化关键词详解:
' "{Y}" : 4位年
' "{y}" : 2位年
' "{M}" : 不补位的月
' "{m}" : 补位的月,如03,01
' "{D}" : 不补位的日
' "{d}" : 补位的日
' "{H}" : 不补位的小时
' "{h}" : 补位的小时
' "{MI}": 不补位的分钟
' "{mi}": 补位的分钟
' "{S}" : 不补位的秒
' "{s}" : 补位的秒
'作者:Tsys
Function FormatMyDate(myDate,Template)
If Not IsDate(myDate) Or Template = "" Then
FormatMyDate = Template
Exit Function
End If

Dim mYear,mMonth,mDay,mHour,mMin,mSec
mYear = Year(myDate)
mMonth = Month(myDate)
mDay = Day(myDate)
mHour = Hour(myDate)
mMin = Minute(myDate)
mSec = Second(myDate)

Template = Replace(Template,"{Y}",mYear)
Template = Replace(Template,"{y}",Right(mYear,2))
Template = Replace(Template,"{M}",mMonth)
Template = Replace(Template,"{m}",Right("00" & mMonth,2))
Template = Replace(Template,"{D}",mDay)
Template = Replace(Template,"{d}",Right("00" & mDay,2))
Template = Replace(Template,"{H}",mHour)
Template = Replace(Template,"{h}",Right("00" & mHour ,2))
Template = Replace(Template,"{MI}",mMin)
Template = Replace(Template,"{mi}",Right("00" & mMin,2))
Template = Replace(Template,"{S}",mSec)
Template = Replace(Template,"{s}",Right("00" & mSec,2))

FormatMyDate = Template
End Function

Function FormatMyTime(myDate,x)
IF Not ISDate(myDate) Then FormatMyTime="":Exit Function
FormatMyTime = FormatdateTime(myDate,x)
End Function

把下面函数拷贝到代码里
<% function showdate(rq)
dates=split(rq,"-")
if len(dates(1))<2 then
dates(1)="0"& dates(1)
end if
if len(dates(2))<2 then
dates(2)="0"& dates(2)
end if
showdate=dates(0) &"-" & dates(1) &"-"& dates(2)
end function
%>
如下使用
<%=showdate("2005-4-1")%>