public static void Insert() { /* User 实体打了序列标签,会自动获取序列值。返回主键 Id */ int id = (int)context.Insert <User>(() => new User() { Name = "lu", Age = 18, Gender = Gender.Man, CityId = 1, OpTime = DateTime.Now }); /* * SELECT "USERS_AUTOID"."NEXTVAL" FROM "DUAL" * Int32 :P_0 = 14; * INSERT INTO "USERS"("NAME","AGE","GENDER","CITYID","OPTIME","ID") VALUES(N'lu',18,1,1,SYSTIMESTAMP,:P_0) */ context.Session.ExecuteNonQuery("delete from users where id=56744"); OracleConnection oracleConnection = new OracleConnection("Data Source=localhost/chloe;User ID=system;Password=sa;"); OracleCommand cmd = oracleConnection.CreateCommand(); //cmd.Parameters.Add(new OracleParameter("P_0", Gender.Man)); //cmd.Parameters.Add(new OracleParameter("P_1", 18) { OracleType = OracleType.Int32, DbType = System.Data.DbType.Int32, Direction = System.Data.ParameterDirection.Input }); //cmd.Parameters.Add(new OracleParameter("P_2", DateTime.Now)); cmd.Parameters.Add(new OracleParameter(":P_3", 56744)); //cmd.Parameters.Add(new OracleParameter("P_4", "lu")); oracleConnection.Open(); cmd.CommandText = "delete from users where id=:P_3"; //cmd.CommandText = "INSERT INTO USERS(NAME,AGE,GENDER,CITYID,OPTIME,ID) VALUES(N'lu',18,1,1,SYSTIMESTAMP,56744)"; var xx = cmd.ExecuteNonQuery(); //Input Int32 :P_0 = 1; //Input Int32 :P_1 = 18; //Input DateTime :P_2 = '2017/10/18 23:29:48'; //Input Int32 :P_3 = 56744; //Input String :P_4 = 'lu'; //INSERT INTO "USERS"("GENDER", "AGE", "CITYID", "OPTIME", "ID", "NAME") VALUES(:P_0,:P_1,:P_0,:P_2,:P_3,:P_4) string sql = "INSERT INTO \"USERS\"(\"GENDER\", \"AGE\", \"CITYID\", \"OPTIME\", \"ID\", \"NAME\") VALUES(:P_0,:P_1,:P_0,:P_2,:P_3,:P_4)"; sql = "INSERT INTO \"USERS\"(\"GENDER\", \"AGE\", \"CITYID\", \"ID\", \"NAME\") VALUES(1,18,1,56744,'lu')"; DbParamList dbParamList = new DbParamList(); //dbParamList.Add("P_0", Gender.Man); //dbParamList.Add("P_1", 18); //dbParamList.Add("P_2", DateTime.Now); //dbParamList.Add("P_3", 56744); //dbParamList.Add("P_4", "lu"); context.Session.ExecuteNonQuery(sql, dbParamList.ToArray()); User user = new User(); user.Name = "lu"; user.Age = 18; user.Gender = Gender.Man; user.CityId = 1; user.OpTime = DateTime.Now; //会自动将自增 Id 设置到 user 的 Id 属性上 user = context.Insert(user); /* * SELECT "USERS_AUTOID"."NEXTVAL" FROM "DUAL" * Int32 :P_0 = 15; * String :P_1 = 'lu'; * Int32 :P_2 = 1; * Int32 :P_3 = 18; * DateTime :P_4 = '2016/9/5 9:16:59'; * INSERT INTO "USERS"("ID","NAME","GENDER","AGE","CITYID","OPTIME") VALUES(:P_0,:P_1,:P_2,:P_3,:P_2,:P_4) */ ConsoleHelper.WriteLineAndReadKey(); }