下面是我的表定義,它自動將時間戳值插入到每條記錄中。我想要做的就是讓時間戳使用特定的時區,例如在我的情況下,我希望它使用不列顛哥倫比亞省的當前時間。我該怎麼做?時間戳使用特定的時區?
,因爲當我插入表中的數據我真的不從我的PHP腳本傳遞timestame值,但它採用默認值。
CREATE TABLE `cfv_postbusupdate` (
`BusNumber` int(11) NOT NULL,
`Direction` varchar(100) DEFAULT 'Not Provided',
`StopNames` varchar(300) DEFAULT 'Not Provided',
`Status` varchar(45) DEFAULT 'Not Provided',
`comments` varchar(150) DEFAULT 'None',
`username` varchar(45) DEFAULT 'anonymous_user',
`dayofweek` varchar(45) DEFAULT NULL,
`time` varchar(20) DEFAULT NULL,
`id` int(11) NOT NULL AUTO_INCREMENT,
`DatePosted` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
不知道我做的是對的,但我選擇了phpmyadmin,並在SQL SQL選項卡試圖運行以下命令SET time_zone ='america/vancouver';但得到了以下錯誤#1298 - 未知或不正確的時區:'美國/溫哥華'? –
如果您尚未安裝它們,則時區字符串將不起作用。如果你在託管服務器上運行,你的ISP必須這樣做。你可以使用'set time_zone ='+08:00''(或者你的偏移量),但是這不會考慮夏令時。請注意,此設置適用於每個連接。請參閱我鏈接到的參考手冊以獲取完整的概要。 – 2014-03-28 06:38:58