/// <summary> /// 创建一个数据库架构实例 /// </summary> /// <param name="db">数据提供程序实例</param> /// <returns></returns> public static DbSchema Create(Database db) { DbSchema schema = null; switch (db.DatabaseType) { case DatabaseType.SqlServer: //schema = new SqlServerSchema(db); schema = new SqlServerSchema(db); break; case DatabaseType.Oracle: schema = new OracleSchema(db); break; case DatabaseType.MySql: schema = new MySqlSchema(db); break; case DatabaseType.DB2: schema = new DB2Schema(db); break; case DatabaseType.SQLite: schema = new SQLiteSchema(db); break; default: break; } return(schema); }
public void TestQuery() { OracleSchema ora = new OracleSchema(); var q = ora.Person.Join(ora.ContactInfo, (p, c) => p.ID == c.PersonID) .Where<Person>(p => p.Name != "R"); using (ISession s = SessionFactory.OpenSession("dest")) { RowSet rs = s.Query(q); var p = rs[0].GetEntity<Person>(); } }
private static OracleSchema MapSchema(IDataRecord reader, Version version) { var schema = new OracleSchema { Name = QualifyStringObject((string)reader["USERNAME"]), Created = (DateTime)reader["CREATED"] }; if (version.Major >= 12) { schema.IsOracleMaintained = String.Equals((string)reader["ORACLE_MAINTAINED"], "Y"); schema.IsCommon = String.Equals((string)reader["COMMON"], "YES"); } return(schema); }