private async Task ReadApexItemsAsync(Func <ApexItemDto, CancellationToken, Task> onReadItemAsync, CancellationToken cancellationToken = default(CancellationToken)) { EnsureArg.IsNotNull(onReadItemAsync); using (var con = new Oracle.ManagedDataAccess.Client.OracleConnection(_options.Value.ApexConnectionString)) { var cmd = con.CreateCommand(); cmd.CommandText = "SELECT BTIR_ID, BTIR_CREATED_BY, BTIR_BUSS_CONTACT_EMAIL, BTIR_PROJECT_NAME, BTIR_PROJECT_DESC FROM OCI.BTIR_REQUEST"; con.Open(); var reader = cmd.ExecuteReader(); try { while (await reader.ReadAsync(cancellationToken)) { await onReadItemAsync(new ApexItemDto() { ApexId = reader.GetInt32(0), Requestor3and3 = reader.GetString(1), BusinessContactEmail = reader.GetString(2), ProjectName = reader.GetString(3), ProjectDescription = reader.GetString(4) }, cancellationToken); } } finally { con.Close(); } } }
int ManagedOracleClient() { Oracle.ManagedDataAccess.Client.OracleConnectionStringBuilder connBuilder = new Oracle.ManagedDataAccess.Client.OracleConnectionStringBuilder(); connBuilder.DataSource = txtDataSource.Text.Trim(); connBuilder.UserID = txtUserId.Text.Trim(); connBuilder.Password = txtPwd.Text.Trim(); connBuilder.ConnectionTimeout = 300; connBuilder.ConnectionLifeTime = 10; connBuilder.MinPoolSize = 0; int rows = 0; using (Oracle.ManagedDataAccess.Client.OracleConnection conn = new Oracle.ManagedDataAccess.Client.OracleConnection(connBuilder.ConnectionString)) { Oracle.ManagedDataAccess.Client.OracleCommand cmd = conn.CreateCommand(); cmd.CommandText = txtSql.Text.Trim(); cmd.CommandTimeout = 300; conn.Open(); using (Oracle.ManagedDataAccess.Client.OracleDataReader dr = cmd.ExecuteReader()) { while (dr.Read()) { object[] objs = new object[500]; dr.GetValues(objs); rows++; } } return(rows); } }
public IEnumerable <INVLinesModel> GetInv(string invoice_num) { var data = new List <INVLinesModel>(); string sqlStatement = @"select invoice_num,line_number,amount,account_segment,description from WF_AP_INV_LINES_INTERFACE_HIS where invoice_num=:inv_num order by line_number"; using (var cn = new Oracle.ManagedDataAccess.Client.OracleConnection(this.ConnectionString)) { cn.Open(); var cmd = cn.CreateCommand(); cmd.CommandText = sqlStatement; cmd.Parameters.Add(new Oracle.ManagedDataAccess.Client.OracleParameter("@nv_num", invoice_num)); var dr = cmd.ExecuteReader(); while (dr.Read()) { data.Add(new INVLinesModel { invoice_num = dr["invoice_num"].ToString(), line_number = (dr["line_number"] == null) ? 0 : int.Parse(dr["line_number"].ToString()), amount = int.Parse(dr["amount"].ToString()), description = dr["description"].ToString(), account_segment = dr["account_segment"].ToString() }); } } return(data.Take(10)); }
public void BindByName() { var con = new Oracle.ManagedDataAccess.Client.OracleConnection(); var cmd = con.CreateCommand(); var wcon = new LoggingConnection(con); var wcmd = wcon.CreateCommand(); Assert.False(cmd.BindByName); Assert.True(wcmd.TryCast<Oracle.ManagedDataAccess.Client.OracleCommand>().BindByName); }
internal static void GetData(int num, bool readClob, bool readBlob) { //using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["connstr"].ConnectionString)) //{ // DataTable table = new DataTable(); // SqlDataAdapter adp = new SqlDataAdapter(string.Format("select top {0} * from TEMP_TestTKK0719-- order by newid()", num), conn); // adp.Fill(table); //} switch (ConfigurationManager.AppSettings["dbtype"].ToUpper().Trim()) { case "SYSTEM.DATA.ORACLECLIENT": using (OracleConnection conn = new OracleConnection(ConfigurationManager.ConnectionStrings["connstr"].ConnectionString)) { OracleCommand cmd = conn.CreateCommand(); conn.Open(); cmd.CommandText = string.Format("select 1 from user_tables t where t.table_name = upper('TEMP_TestTKK0719')"); object tableInited = cmd.ExecuteScalar(); if (tableInited == null || tableInited == DBNull.Value) { cmd.CommandText = @"CREATE TABLE TEMP_TestTKK0719( code varchar2(50) NOT NULL, name varchar2(100) NULL, age int NULL, birthday timestamp NULL, salary decimal(10, 2) NULL, summary varchar2(1000) NULL, remark clob NULL, extends blob NULL, created timestamp, CONSTRAINT PK__TEMP_TestTKK0719 PRIMARY KEY (code) )"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_Name on TEMP_TestTKK0719(name)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_age on TEMP_TestTKK0719(age)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_birthday on TEMP_TestTKK0719(birthday)"; cmd.ExecuteNonQuery(); } conn.Close(); cmd.CommandText = string.Format("select code, name, age, birthday, salary, summary, created {1} {2} from TEMP_TestTKK0719 where rownum <= {0}", num, (readClob ? ", remark" : string.Empty), (readBlob ? ", extends" : string.Empty)); conn.Open(); using (OracleDataReader dr = cmd.ExecuteReader()) { while (dr.Read()) { object[] objs = new object[500]; dr.GetValues(objs); } } conn.Close(); } break; case "ODP.NET": using (IDbConnection conn = ODPClientFactory.CreateConnection()) { conn.ConnectionString = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString; IDbCommand cmd = conn.CreateCommand(); conn.Open(); cmd.CommandText = string.Format("select 1 from user_tables t where t.table_name = upper('TEMP_TestTKK0719')"); object tableInited = cmd.ExecuteScalar(); if (tableInited == null || tableInited == DBNull.Value) { cmd.CommandText = @"CREATE TABLE TEMP_TestTKK0719( code varchar2(50) NOT NULL, name varchar2(100) NULL, age int NULL, birthday timestamp NULL, salary decimal(10, 2) NULL, summary varchar2(1000) NULL, remark clob NULL, extends blob NULL, created timestamp, CONSTRAINT PK__TEMP_TestTKK0719 PRIMARY KEY (code) )"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_Name on TEMP_TestTKK0719(name)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_age on TEMP_TestTKK0719(age)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_birthday on TEMP_TestTKK0719(birthday)"; cmd.ExecuteNonQuery(); } conn.Close(); cmd.CommandText = string.Format("select code, name, age, birthday, salary, summary, created {1} {2} from TEMP_TestTKK0719 where rownum <= {0}", num, (readClob ? ", remark" : string.Empty), (readBlob ? ", extends" : string.Empty)); conn.Open(); using (IDataReader dr = cmd.ExecuteReader()) { while (dr.Read()) { object[] objs = new object[500]; dr.GetValues(objs); } } conn.Close(); } break; case "ODAC": using (ManagedOralceConnection conn = new ManagedOralceConnection(ConfigurationManager.ConnectionStrings["connstr"].ConnectionString)) { ManagedOracleCommand cmd = conn.CreateCommand(); conn.Open(); cmd.CommandText = string.Format("select 1 from user_tables t where t.table_name = upper('TEMP_TestTKK0719')"); object tableInited = cmd.ExecuteScalar(); if (tableInited == null || tableInited == DBNull.Value) { cmd.CommandText = @"CREATE TABLE TEMP_TestTKK0719( code varchar2(50) NOT NULL, name varchar2(100) NULL, age int NULL, birthday timestamp NULL, salary decimal(10, 2) NULL, summary varchar2(1000) NULL, remark clob NULL, extends blob NULL, created timestamp, CONSTRAINT PK__TEMP_TestTKK0719 PRIMARY KEY (code) )"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_Name on TEMP_TestTKK0719(name)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_age on TEMP_TestTKK0719(age)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_birthday on TEMP_TestTKK0719(birthday)"; cmd.ExecuteNonQuery(); } conn.Close(); cmd.CommandText = string.Format("select code, name, age, birthday, salary, summary, created {1} {2} from TEMP_TestTKK0719 where rownum <= {0}", num, (readClob ? ", remark" : string.Empty), (readBlob ? ", extends" : string.Empty)); conn.Open(); using (ManagedOracleDataReader dr = cmd.ExecuteReader()) { while (dr.Read()) { object[] objs = new object[500]; dr.GetValues(objs); } } conn.Close(); } break; default: using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["connstr"].ConnectionString)) { SqlCommand cmd = conn.CreateCommand(); conn.Open(); cmd.CommandText = string.Format("select 1 from sys.tables t where t.name = 'TEMP_TestTKK0719'"); object tableInited = cmd.ExecuteScalar(); if (tableInited == null || tableInited == DBNull.Value) { cmd.CommandText = @"CREATE TABLE TEMP_TestTKK0719( code varchar(50) NOT NULL, name varchar(100) NULL, age int NULL, birthday datetime NULL, salary decimal(10, 2) NULL, summary nvarchar(1000) NULL, remark varchar(max) NULL, extends varbinary(max) NULL, created datetime, CONSTRAINT PK__TEMP_TestTKK0719 PRIMARY KEY (code) )"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_Name on TEMP_TestTKK0719(name)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_age on TEMP_TestTKK0719(age)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_birthday on TEMP_TestTKK0719(birthday)"; cmd.ExecuteNonQuery(); } conn.Close(); cmd.CommandText = string.Format("select top {0} code, name, age, birthday, salary, summary, created {1} {2} from TEMP_TestTKK0719", num, (readClob ? ", remark" : string.Empty), (readBlob ? ", extends" : string.Empty)); conn.Open(); using (SqlDataReader dr = cmd.ExecuteReader()) { while (dr.Read()) { object[] objs = new object[500]; dr.GetValues(objs); } } conn.Close(); } break; } }
internal static void Insert(int num, bool writeClob, bool writeBlob) { Stopwatch sw = new Stopwatch(); Random rnd = new Random(); for (int i = 0; i < num; i++) { switch (ConfigurationManager.AppSettings["dbtype"].ToUpper().Trim()) { case "SYSTEM.DATA.ORACLECLIENT": using (OracleConnection conn = new OracleConnection(ConfigurationManager.ConnectionStrings["connstr"].ConnectionString)) { OracleCommand cmd = conn.CreateCommand(); conn.Open(); cmd.CommandText = string.Format("select 1 from user_tables t where t.table_name = upper('TEMP_TestTKK0719')"); object tableInited = cmd.ExecuteScalar(); if (tableInited == null || tableInited == DBNull.Value) { cmd.CommandText = @"CREATE TABLE TEMP_TestTKK0719( code varchar2(50) NOT NULL, name varchar2(100) NULL, age int NULL, birthday timestamp NULL, salary decimal(10, 2) NULL, summary varchar2(1000) NULL, remark clob NULL, extends blob NULL, created timestamp, CONSTRAINT PK__TEMP_TestTKK0719 PRIMARY KEY (code) )"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_Name on TEMP_TestTKK0719(name)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_age on TEMP_TestTKK0719(age)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_birthday on TEMP_TestTKK0719(birthday)"; cmd.ExecuteNonQuery(); } conn.Close(); cmd.CommandText = string.Format("insert into TEMP_TestTKK0719(code, name, age, birthday, salary, summary, created {0} {1}) values(:code, :name, :age, :birthday, :salary, :summary, sysdate {2} {3})", (writeClob ? ", remark" : string.Empty), (writeBlob ? ", extends" : string.Empty), (writeClob ? ", :remark" : string.Empty), (writeBlob ? ", :extends" : string.Empty)); cmd.Parameters.Add(":code", Guid.NewGuid().ToString()); cmd.Parameters.Add(":name", StringUtils.GetRandomString(rnd.Next(10, 50), false, true, true, false, string.Empty)); cmd.Parameters.Add(":age", rnd.Next(20, 65)); cmd.Parameters.Add(":birthday", DateTime.Now.AddYears(-1 * rnd.Next(20, 60))); cmd.Parameters.Add(":salary", Math.Round(50000 * rnd.NextDouble(), 2)); cmd.Parameters.Add(":summary", new string('x', rnd.Next(10, 200))); if (writeClob) { cmd.Parameters.Add(":remark", bool.Parse(ConfigurationManager.AppSettings["randomLob"]) ? new string('y', rnd.Next(1, int.Parse(ConfigurationManager.AppSettings["clobMax"]))) : new string('y', int.Parse(ConfigurationManager.AppSettings["clobMax"]))); } if (writeBlob) { cmd.Parameters.Add(":extends", Encoding.Default.GetBytes(bool.Parse(ConfigurationManager.AppSettings["randomLob"]) ? new string('z', rnd.Next(1, int.Parse(ConfigurationManager.AppSettings["blobMax"]))) : new string('z', int.Parse(ConfigurationManager.AppSettings["blobMax"])))); } conn.Open(); cmd.ExecuteNonQuery(); conn.Close(); } break; case "ODP.NET": using (IDbConnection conn = ODPClientFactory.CreateConnection()) { conn.ConnectionString = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString; IDbCommand cmd = conn.CreateCommand(); conn.Open(); cmd.CommandText = string.Format("select 1 from user_tables t where t.table_name = upper('TEMP_TestTKK0719')"); object tableInited = cmd.ExecuteScalar(); if (tableInited == null || tableInited == DBNull.Value) { cmd.CommandText = @"CREATE TABLE TEMP_TestTKK0719( code varchar2(50) NOT NULL, name varchar2(100) NULL, age int NULL, birthday timestamp NULL, salary decimal(10, 2) NULL, summary varchar2(1000) NULL, remark clob NULL, extends blob NULL, created timestamp, CONSTRAINT PK__TEMP_TestTKK0719 PRIMARY KEY (code) )"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_Name on TEMP_TestTKK0719(name)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_age on TEMP_TestTKK0719(age)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_birthday on TEMP_TestTKK0719(birthday)"; cmd.ExecuteNonQuery(); } conn.Close(); cmd.CommandText = string.Format("insert into TEMP_TestTKK0719(code, name, age, birthday, salary, summary, created {0} {1}) values(:code, :name, :age, :birthday, :salary, :summary, sysdate {2} {3})", (writeClob ? ", remark" : string.Empty), (writeBlob ? ", extends" : string.Empty), (writeClob ? ", :remark" : string.Empty), (writeBlob ? ", :extends" : string.Empty)); //cmd.Parameters.Add(":code", Guid.NewGuid().ToString()); var p0 = cmd.CreateParameter(); p0.DbType = DbType.String; p0.ParameterName = ":code"; p0.Value = Guid.NewGuid().ToString(); cmd.Parameters.Add(p0); //cmd.Parameters.Add(":name", StringUtils.GetRandomString(rnd.Next(10, 50), false, true, true, false, string.Empty)); var p1 = cmd.CreateParameter(); p1.DbType = DbType.String; p1.ParameterName = ":name"; p1.Value = StringUtils.GetRandomString(rnd.Next(10, 50), false, true, true, false, string.Empty); cmd.Parameters.Add(p1); //cmd.Parameters.Add(":age", rnd.Next(20, 65)); var p2 = cmd.CreateParameter(); p2.DbType = DbType.Int32; p2.ParameterName = ":age"; p2.Value = rnd.Next(20, 65); cmd.Parameters.Add(p2); //cmd.Parameters.Add(":birthday", DateTime.Now.AddYears(-1 * rnd.Next(20, 60))); var p3 = cmd.CreateParameter(); p3.DbType = DbType.DateTime; p3.ParameterName = ":birthday"; p3.Value = DateTime.Now.AddYears(-1 * rnd.Next(20, 60)); cmd.Parameters.Add(p3); //cmd.Parameters.Add(":salary", Math.Round(50000 * rnd.NextDouble(), 2)); var p4 = cmd.CreateParameter(); p4.DbType = DbType.Double; p4.ParameterName = ":salary"; p4.Value = Math.Round(50000 * rnd.NextDouble(), 2); cmd.Parameters.Add(p4); //cmd.Parameters.Add(":summary", new string('x', rnd.Next(10, 200))); var p5 = cmd.CreateParameter(); p5.DbType = DbType.String; p5.ParameterName = ":summary"; p5.Value = new string('x', rnd.Next(10, 200)); cmd.Parameters.Add(p5); if (writeClob) { //cmd.Parameters.Add(":remark", bool.Parse(ConfigurationManager.AppSettings["randomLob"]) ? new string('y', rnd.Next(1, int.Parse(ConfigurationManager.AppSettings["clobMax"]))) : new string('y', int.Parse(ConfigurationManager.AppSettings["clobMax"]))); var p7 = cmd.CreateParameter(); p7.ParameterName = ":remark"; p7.DbType = DbType.String; p7.Value = bool.Parse(ConfigurationManager.AppSettings["randomLob"]) ? new string('y', rnd.Next(1, int.Parse(ConfigurationManager.AppSettings["clobMax"]))) : new string('y', int.Parse(ConfigurationManager.AppSettings["clobMax"])); cmd.Parameters.Add(p7); } if (writeBlob) { //cmd.Parameters.Add(":extends", Encoding.Default.GetBytes(bool.Parse(ConfigurationManager.AppSettings["randomLob"]) ? new string('z', rnd.Next(1, int.Parse(ConfigurationManager.AppSettings["blobMax"]))) : new string('z', int.Parse(ConfigurationManager.AppSettings["blobMax"])))); var p8 = cmd.CreateParameter(); p8.ParameterName = ":extends"; p8.DbType = DbType.Binary; p8.Value = Encoding.Default.GetBytes(bool.Parse(ConfigurationManager.AppSettings["randomLob"]) ? new string('z', rnd.Next(1, int.Parse(ConfigurationManager.AppSettings["blobMax"]))) : new string('z', int.Parse(ConfigurationManager.AppSettings["blobMax"]))); cmd.Parameters.Add(p8); } conn.Open(); cmd.ExecuteNonQuery(); conn.Close(); } break; case "ODAC": using (ManagedOralceConnection conn = new ManagedOralceConnection(ConfigurationManager.ConnectionStrings["connstr"].ConnectionString)) { ManagedOracleCommand cmd = conn.CreateCommand(); conn.Open(); cmd.CommandText = string.Format("select 1 from user_tables t where t.table_name = upper('TEMP_TestTKK0719')"); object tableInited = cmd.ExecuteScalar(); if (tableInited == null || tableInited == DBNull.Value) { cmd.CommandText = @"CREATE TABLE TEMP_TestTKK0719( code varchar2(50) NOT NULL, name varchar2(100) NULL, age int NULL, birthday timestamp NULL, salary decimal(10, 2) NULL, summary varchar2(1000) NULL, remark clob NULL, extends blob NULL, created timestamp, CONSTRAINT PK__TEMP_TestTKK0719 PRIMARY KEY (code) )"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_Name on TEMP_TestTKK0719(name)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_age on TEMP_TestTKK0719(age)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_birthday on TEMP_TestTKK0719(birthday)"; cmd.ExecuteNonQuery(); } conn.Close(); cmd.CommandText = string.Format("insert into TEMP_TestTKK0719(code, name, age, birthday, salary, summary, created {0} {1}) values(:code, :name, :age, :birthday, :salary, :summary, sysdate {2} {3})", (writeClob ? ", remark" : string.Empty), (writeBlob ? ", extends" : string.Empty), (writeClob ? ", :remark" : string.Empty), (writeBlob ? ", :extends" : string.Empty)); cmd.Parameters.Add(":code", Guid.NewGuid().ToString()); cmd.Parameters.Add(":name", StringUtils.GetRandomString(rnd.Next(10, 50), false, true, true, false, string.Empty)); cmd.Parameters.Add(":age", rnd.Next(20, 65)); cmd.Parameters.Add(":birthday", DateTime.Now.AddYears(-1 * rnd.Next(20, 60))); cmd.Parameters.Add(":salary", Math.Round(50000 * rnd.NextDouble(), 2)); cmd.Parameters.Add(":summary", new string('x', rnd.Next(10, 200))); if (writeClob) { cmd.Parameters.Add(":remark", bool.Parse(ConfigurationManager.AppSettings["randomLob"]) ? new string('y', rnd.Next(1, int.Parse(ConfigurationManager.AppSettings["clobMax"]))) : new string('y', int.Parse(ConfigurationManager.AppSettings["clobMax"]))); } if (writeBlob) { cmd.Parameters.Add(":extends", Encoding.Default.GetBytes(bool.Parse(ConfigurationManager.AppSettings["randomLob"]) ? new string('z', rnd.Next(1, int.Parse(ConfigurationManager.AppSettings["blobMax"]))) : new string('z', int.Parse(ConfigurationManager.AppSettings["blobMax"])))); } conn.Open(); cmd.ExecuteNonQuery(); conn.Close(); } break; default: using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["connstr"].ConnectionString)) { SqlCommand cmd = conn.CreateCommand(); conn.Open(); cmd.CommandText = string.Format("select 1 from sys.tables t where t.name = 'TEMP_TestTKK0719'"); object tableInited = cmd.ExecuteScalar(); if (tableInited == null || tableInited == DBNull.Value) { cmd.CommandText = @"CREATE TABLE TEMP_TestTKK0719( code varchar(50) NOT NULL, name varchar(100) NULL, age int NULL, birthday datetime NULL, salary decimal(10, 2) NULL, summary nvarchar(1000) NULL, remark varchar(max) NULL, extends varbinary(max) NULL, created datetime, CONSTRAINT PK__TEMP_TestTKK0719 PRIMARY KEY (code) )"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_Name on TEMP_TestTKK0719(name)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_age on TEMP_TestTKK0719(age)"; cmd.ExecuteNonQuery(); cmd.CommandText = "create index idx_TEMP_TestTKK0719_birthday on TEMP_TestTKK0719(birthday)"; cmd.ExecuteNonQuery(); } conn.Close(); cmd.CommandText = string.Format("insert into TEMP_TestTKK0719(code, name, age, birthday, salary, summary, created {0} {1}) values(@code, @name, @age, @birthday, @salary, @summary, getdate() {2} {3})", (writeClob ? ", remark" : string.Empty), (writeBlob ? ", extends" : string.Empty), (writeClob ? ", @remark" : string.Empty), (writeBlob ? ", @extends" : string.Empty)); cmd.Parameters.AddWithValue("@code", Guid.NewGuid().ToString()); cmd.Parameters.AddWithValue("@name", StringUtils.GetRandomString(rnd.Next(10, 50), false, true, true, false, string.Empty)); cmd.Parameters.AddWithValue("@age", rnd.Next(20, 65)); cmd.Parameters.AddWithValue("@birthday", DateTime.Now.AddYears(-1 * rnd.Next(20, 60))); cmd.Parameters.AddWithValue("@salary", Math.Round(50000 * rnd.NextDouble(), 2)); cmd.Parameters.AddWithValue("@summary", new string('x', rnd.Next(10, 200))); if (writeClob) { cmd.Parameters.AddWithValue("@remark", bool.Parse(ConfigurationManager.AppSettings["randomLob"]) ? new string('y', rnd.Next(1, int.Parse(ConfigurationManager.AppSettings["clobMax"]))) : new string('y', int.Parse(ConfigurationManager.AppSettings["clobMax"]))); } if (writeBlob) { cmd.Parameters.AddWithValue("@extends", Encoding.Default.GetBytes(bool.Parse(ConfigurationManager.AppSettings["randomLob"]) ? new string('z', rnd.Next(1, int.Parse(ConfigurationManager.AppSettings["blobMax"]))) : new string('z', int.Parse(ConfigurationManager.AppSettings["blobMax"])))); } conn.Open(); cmd.ExecuteNonQuery(); conn.Close(); } break; } } }