1、SqlCommand cmd = new SqlCommand()
SqlCommand cmd = conn.CreateCommand()
IDbCommand cmd = conn.CreateCommand()
第三种写法最好。SQLServer、Access(文件型数据库,连接字符串用VS“服务器资源管理器”生成)的Command分别是SqlCommand、OleDbCommand类型,如果把它们写死在程序里切换数据库需要改很多地方。 SqlCommand、 OleDbCommand都实现了IDbCommand接口,不用具体的类型来接收返回值,这样就可以将改动减少的最小。 因为SqlConnection实现了IDbConnection接口。如果基于接口进行编程,换数据库只要把SqlConnection换成OracleConnection,起码IDbConnection、IDbCommand等都不用变了。
2、以后写程序尽量用IDbConnection、 IDbCommand、IDataParameter这些类型。
3、创建参数用IDataParameter parameter = cmd.CreateParameter()
4、能用父类就不要用子类,能用接口就不要用类。
5、写一个可以通过配置文件来分别从Access、MSSQL中读取数据的类。
new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\db1.mdb")