MySQL Memory 存储引擎浅析 (五)

2014-11-24 10:40:22 · 作者: · 浏览: 3
ndText, parameters) > 0)

return true;

else

return false;

}

public static string DB_MemorySelect(int id)

{

string commandText = "SELECT obj FROM test_memory WHERE id = id";

MySqlParameter[] parameters = {

new MySqlParameter(" id", MySqlDbType.Int32)

};

parameters[0].Value = id;

return DBUtility.MySqlHelper.ExecuteScalar(SQL_CONN, CommandType.Text, commandText, parameters).ToString();

}

#endregion

#region Test Functions InnoDB

static void InnoDBInsert()

{

long begin = DateTime.Now.Ticks;

for (int i = 0; i < LOOP_TOTAL; i++)

{

DB_InnoDBInsert(OBJ);

}

Console.WriteLine("InnoDB Insert Result: {0}", DateTime.Now.Ticks - begin);

}

static void InnoDBSelect()

{

long begin = DateTime.Now.Ticks;

for (int i = LOOP_BEGIN; i < LOOP_END; i++)

{

DB_InnoDBSelect(i);

}

Console.WriteLine("InnoDB SELECT Result: {0}", DateTime.Now.Ticks - begin);

}

static void MyIsamInsert()

{

long begin = DateTime.Now.Ticks;

for (int i = 0; i < LOOP_TOTAL; i++)

{

DB_MyIsamInsert(OBJ);

}

Console.WriteLine("MyIsam Insert Result: {0}", DateTime.Now.Ticks - begin);

}

static void MyIsamSelect()

{

long begin = DateTime.Now.Ticks;

for (int i = LOOP_BEGIN; i < LOOP_END; i++)

{

DB_MyIsamSelect(i);

}

Console.WriteLine("MyIsam SELECT Result: {0}", DateTime.Now.Ticks - begin);

}

static void MemoryInsert()

{

long begin = DateTime.Now.Ticks;

for (int i = 0; i < LOOP_TOTAL; i++)

{

DB_MemoryInsert(OBJ);

}

Console.WriteLine("Memory Insert Result: {0}", DateTime.Now.Ticks - begin);

}

static void MemorySelect()

{

long begin = DateTime.Now.Ticks;

for (int i = LOOP_BEGIN; i < LOOP_END; i++)

{

DB_MemorySelect(i);

}

Console.WriteLine("Memory SELECT Result: {0}", DateTime.Now.Ticks - begin);

}

static void DataTableInsertAndSelect()

{

//Insert

DataTable dt = new DataTable();

dt.Columns.Add("id", Type.GetType("System.Int32"));

dt.Columns["id"].AutoIncrement = true;

dt.Columns.Add("obj", Type.GetType("System.String"));

DataRow dr = null;

long begin = DateTime.Now.Ticks;

for (int i = 0; i < LOOP_TOTAL; i++)

{

dr = null;

dr = dt.NewRow();

dr["obj"] = OBJ;

dt.Rows.Add(dr);

}

Console.WriteLine("DataTable Insert Result: {0}", DateTime.Now.Ticks - begin);

//Select

long begin1 = DateTime.Now.Ticks;

for (int i = LOOP_BEGIN; i < LOOP_END; i++)

{

dt.Select("id = " + i);

}

Console.WriteLine("DataTable Select Result: {0}", DateTime.Now.Ticks - begin1);