Я бы сохранил даты в формате MS-SQL, чтобы помочь в полной мере использовать функции манипулирования датами в T-SQL. Проще писать и читать
SELECT * FROM Foo
WHERE DateDiff(d,field1,now()) < 1
Чем пытаться выполнить эквивалентную операцию, манипулируя целыми числами
Чтобы преобразовать дату MsSQL в метку времени Unix, используйте dateDiff:
SELECT DATEDIFF(s,'1970-01-01 00:00:00',fieldName) as fieldNameTS
FROM TableName
WHERE fieldName between '10/1/2008' and '10/31/2008'
Чтобы преобразовать метку времени Unix в дату MsSQL, вы можете сделать это на PHP:
$msSQLDate = date("Y-m-d H:i:s", $unixDate );
или в MsSQL
INSERT INTO TableName (
fieldName
) VALUES (
DATEADD(s,'1970-01-01 00:00:00', ? )
)
Где параметр один - int ($ unixDate)