Question: This seems like it should be really obvious, but how can I put a DateTime object into an MSSQL database? When I convert it to a string, it keeps adding "-7:00" at the end for the time zone offset and so the query isn't accepted. How can I fix this?

Answer: 
Its likely your DB is becoming corrupt somehow. There's no command that does that (I hope).
Do yourself a favor and alter each and every one of your tables so they use the [InnoDB engine](http://dev.mysql.com/doc/refman/5.5/en/innodb-storage-engine.html) instead of MyISAM. It's still be MySQL, but it'll be a lot less prone to data corruption.

And if changing DB altogether is an option, look into using [PostgreSQL](http://www.postgresql.org/docs/9.0/static/index.html) instead.