如何使用GetDate()
代替time()
代替604800
检查14天,如果:(TransferTime < DATEADD(DAYS,-14,GETDATE())
$count = $db->doQuery('SELECT * FROM PANEL_NT WHERE strAccountID = ?', $_SESSION['strAccountID']);
$row = $db->doRead();
if ((intval($row['nTime']) + 604800) <= time() || !$count)
{
$db->doQuery('SELECT * FROM ACCOUNT_CHAR WHERE strAccountID = ?', $_SESSION['strAccountID']);
$row = $db->doRead();
$db->doQuery('EXEC NT ?', $_SESSION['strAccountID']);
$db->doQuery('DELETE FROM PANEL_NT WHERE strAccountID = ?', $_SESSION['strAccountID']);
$db->doQuery('INSERT INTO PANEL_NT (strAccountID, nTime) VALUES (?, ?)', $_SESSION['strAccountID'], time());
答案 0 :(得分:0)
问题是smalldatetime
需要这样的格式:02/10/2010 12:30
和time()
返回一个长整数。因此,要么将数据库更改为在此字段中包含长整数,要么更改查询以这种方式格式化日期:2010-10-02 12:30
。
此外,如果在表中以不同的方式定义字段的顺序,它通常可用于明确说明插入字段的顺序:INSERT INTO PANEL_NT(account_id, datetime) VALUES (?, ?)