机房收费之数据库时间

首先这个系统是在自己电脑上做的,数据库也是在自己电脑上,获取的时间是自己电脑的时间,但是一旦BIOS出问题了,电脑出问题了,就很有可能恢复到原出厂时间。所以这样就造成了一个问题,时间就不准确了,所有写入数据库的时间也就错了。所以,我们需要获取数据库的时间,前期,数据库是在别的电脑上,在自己电脑根本看不出来(这可以理解吧)。这里我就介绍一下如何在VB中获取数据库的时间,并且做到矫正本机的时间。

1、获取当前数据库的日期:

<pre name="code" class="php"><pre name="code" class="vb">txtSQL="select convert(VARCHAR(10),GETDATE(),120)"   
set m=executeSQL(txtSQL,MsgText)
text1.text=m.field(0)
 
 

2、获取当前数据库的时间:

<pre name="code" class="plain"><pre name="code" class="vb">txtSQL="select convert(VARCHAR(10),GETDATE(),8)"   
set m=executeSQL(txtSQL,MsgText)
text2.text=m.field(0)
 
 


这里总结了一下获取数据库服务器时间的一些语句

Oracle:

系统时间比较熟悉是select sysdate from dual时间类型获取;

select to_char(sysdate, 'yyyy-mm-ddhh24:mi:ss') from dual;以字符串形式获取


db2:

SELECT CURRENT TIMESTAMP FROMSYSIBM.SYSDUMMY1获取系统时间
还有
select CURRENT DATE from SYSIBM.SYSDUMMY1;获得日期
select CURRENT TIME from SYSIBM.SYSDUMMY1;获得时间


SQL Server:

使用GETDATE()

SQL Server拥有非常强大的日期函数:

Select CONVERT(varchar(100), GETDATE(), 0):05 16 2008 10:57AM
Select CONVERT(varchar(100), GETDATE(), 1): 05/16/08
Select CONVERT(varchar(100), GETDATE(), 2): 08.05.16
Select CONVERT(varchar(100), GETDATE(), 3): 16/05/08
Select CONVERT(varchar(100), GETDATE(), 4): 16.05.08
Select CONVERT(varchar(100), GETDATE(), 5): 16-05-08
Select CONVERT(varchar(100), GETDATE(), 6): 16 05 08
Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 08
Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46
Select CONVERT(varchar(100), GETDATE(), 9): 05 16 2008 10:57:46:827AM
Select CONVERT(varchar(100), GETDATE(), 10): 05-16-08
Select CONVERT(varchar(100), GETDATE(), 11): 08/05/16
Select CONVERT(varchar(100), GETDATE(), 12): 080516
Select CONVERT(varchar(100), GETDATE(), 13): 16 05 2008 10:57:46:937
Select CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967
Select CONVERT(varchar(100), GETDATE(), 20): 2008-05-16 10:57:47
Select CONVERT(varchar(100), GETDATE(), 21): 2008-05-16 10:57:47.157
Select CONVERT(varchar(100), GETDATE(), 22): 05/16/08 10:57:47 AM
Select CONVERT(varchar(100), GETDATE(), 23): 2008-05-16
Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47
Select CONVERT(varchar(100), GETDATE(), 25): 2008-05-16 10:57:47.250
Select CONVERT(varchar(100), GETDATE(), 100): 05 16 2008 10:57AM
Select CONVERT(varchar(100), GETDATE(), 101): 05/16/2008
Select CONVERT(varchar(100), GETDATE(), 102): 2008.05.16
Select CONVERT(varchar(100), GETDATE(), 103): 16/05/2008
Select CONVERT(varchar(100), GETDATE(), 104): 16.05.2008
Select CONVERT(varchar(100), GETDATE(), 105): 16-05-2008
Select CONVERT(varchar(100), GETDATE(), 106): 16 05 2008
Select CONVERT(varchar(100), GETDATE(), 107): 05 16, 2008
Select CONVERT(varchar(100), GETDATE(), 108): 10:57:49
Select CONVERT(varchar(100), GETDATE(), 109): 05 16 2008


 4、矫正时间(这里多亏了贺朋大神)

首先声明一个日期类型的变量

public SQLtime as Date (SQLtime存放所获得的服务器日期和时间)

然后在点击按钮再判断一下服务器时间和系统时间是否相同


<pre name="code" class="vb">if SQLtime <> now then
   date=format(SQLtime,"yyyy-mm-dd")
   time=format(SQLtime,"hh:mm:ss")
end if
 






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 16
    评论
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值