据我所知:如果你使用的是OleDbCommmand 类,那么是无法使用参数名来定位参数顺序的,必须记好参数的排列顺序。但在操作SQL数据库的时候,通常我们是使用SqlCommand的,在这种情况下是可以使用@参数名来定位参数顺序的。从你的举例来看你使用的是OleDbCommand,所以解决问题的办法是:使用SqlCommand类,并且从效率等等方面来看,你也应使用SQL,SQL是专门为SQL数据库提供并且优化的。