ببینید! شما وقتی Insert، Update و Delete رو انجام می دید، طبیعتا RecordSet به شما بر نمی گردونه! پس باید کوئری رو Execute کنید تا خطا دریافت نکنید.
دستور Row_Number در SQLServer 2008 اجرا میشه و مشکلی نداره!!
بنده خودم الان دارم با ADO و SQLServer2008 از همین دستور استفاده می کنم.
شما برای تست هم که شده یه SP بسازید و با ADO StoredProc این کار رو انجام بدید باز ببینید مشکلی دارید یا خیر!؟