Uhm, why would they build database oriented syntax right into the language?
LINQ isn't about databases, its about creating expressions that can be evaluated.. just so happens what is the hardest part with an ORM right now (making a easy and reliable query system on these objects) can be fixed by using LINQ in a perfected form..
Objects should be handling stuff like database transactions and rollbacks.. not the language..
I am talking about having these transact, commit, rollback keywords as first class citizens in the language, that allows me to do translations of SQL type with any data source object, be it a the registry, an access database, any thing that supports transactions.
This is going to be important with the new file system that is based on Transactions. Transactional-FS, and multi-core processors etc..
Such support needs to be deep in the language. And I want to be able to do it too.
There are areas in where this is useful specially with concurrency.