Noebe 2.0 Enterprise Edition 美味的持久层
介绍:
一个企业应用级别的数据库持久层。在许多的大公司中实际应用,并且稳定。
联系方法:
Email: [email protected]
QQ: 66767426
特点:
无需写任何xml,立刻使用。
支持CRUD的所有操作。
支持自定义sql操作。
特色功能:
。支持Oracle, Access, mySQL, MSSQL, DB2, SyBase等流行数据库
。自动感知数据库表结构,不需要再写任何一行XML配置代码,彻底脱离配置文件的烦恼。
。智能缓存设计,使用MRU算法,让查询变得飞快。
。分布式数据库同步操作,让数据库操作的同步冲突不再存在。
。智能主键填充,不需要为主键值而担心。
。事务操作,让数据库更加安全。
。拥有强大的LOG功能,彻底跟踪数据库操作情况。
下载:
/Files/zc22/Noebe2.0.rar
测试数据库:
/Files/zc22/noebe_db.rar
快速入门:
注意:以下代码全部可以执行,无需写任何配置文件。
自定义语句:
public
void
Testmanual()
{
//
初始化配置:
NoebeConfiguration config
=
new
NoebeConfiguration();
config.DatabaseType
=
DatabaseType.Access;
config.Filename
=
@"
e:\temp\demo.mdb
"
;
config.PrintSQL
=
true
;
config.LogOutputToScreen
=
true
;
NoebeManager.Initialize(config);
//
取得表:
DataTable table
=
NoebeManager.Instance.GetEntity(
"
TESTTABLE
"
);
//
数据库全选
NoebeManager.Instance.NoebeAdapter.Fill(table,
"
SELECT * FROM TESTTABLE WHERE ID=11373
"
);
}
选择:
public
void
TestSelect()
{
//
初始化配置:
NoebeConfiguration config
=
new
NoebeConfiguration();
config.DatabaseType
=
DatabaseType.Access;
config.Filename
=
@"
e:\temp\demo.mdb
"
;
config.PrintSQL
=
true
;
config.LogOutputToScreen
=
true
;
NoebeManager.Initialize(config);
//
取得表:
DataTable table
=
NoebeManager.Instance.GetEntity(
"
TESTTABLE
"
);
//
数据库全选
NoebeManager.Instance.Querion.Select(table);
}
插入:
public
void
TestInsert()
{
//
初始化配置:
NoebeConfiguration config
=
new
NoebeConfiguration();
config.DatabaseType
=
DatabaseType.Access;
config.Filename
=
@"
e:\temp\demo.mdb
"
;
config.PrintSQL
=
true
;
config.LogOutputToScreen
=
true
;
NoebeManager.Initialize(config);
//
取得表:
DataTable table
=
NoebeManager.Instance.GetEntity(
"
TESTTABLE
"
);
//
填数据:
for
(
int
i
=
0
; i
<
10
; i
++
)
{
DataRow row
=
table.NewRow();
row[
1
]
=
"
pixysoft
"
+
i;
table.Rows.Add(row);
}
//
插入:
NoebeManager.Instance.Session.Insert(table);
}
更新:
public
void
TestUpdate()
{
//
初始化配置:
NoebeConfiguration config
=
new
NoebeConfiguration();
config.DatabaseType
=
DatabaseType.Access;
config.Filename
=
@"
e:\temp\demo.mdb
"
;
config.PrintSQL
=
true
;
config.LogOutputToScreen
=
true
;
NoebeManager.Initialize(config);
//
取得表:
DataTable table
=
NoebeManager.Instance.GetEntity(
"
TESTTABLE
"
);
//
数据库全选
NoebeManager.Instance.Querion.SelectByPk(table,
"
11373
"
);
table.Rows[
0
][
1
]
=
"
Test Update!
"
;
NoebeManager.Instance.Session.Update(table);
}
删除:
public
void
TestDelete()
{
//
初始化配置:
NoebeConfiguration config
=
new
NoebeConfiguration();
config.DatabaseType
=
DatabaseType.Access;
config.Filename
=
@"
e:\temp\demo.mdb
"
;
config.PrintSQL
=
true
;
config.LogOutputToScreen
=
true
;
NoebeManager.Initialize(config);
//
取得表:
DataTable table
=
NoebeManager.Instance.GetEntity(
"
TESTTABLE
"
);
//
数据库全选
NoebeManager.Instance.Querion.SelectByPk(table,
"
11373
"
);
table.Rows[
0
][
1
]
=
"
Test Update!
"
;
NoebeManager.Instance.Session.Delete(table);
}
事务:
public
void
TestTransaction()
{
//
初始化配置:
NoebeConfiguration config
=
new
NoebeConfiguration();
config.DatabaseType
=
DatabaseType.Access;
config.Filename
=
@"
e:\temp\demo.mdb
"
;
config.PrintSQL
=
true
;
config.LogOutputToScreen
=
true
;
NoebeManager.Initialize(config);
//
取得表:
DataTable table
=
NoebeManager.Instance.GetEntity(
"
TESTTABLE
"
);
//
数据库全选
NoebeManager.Instance.Querion.SelectByPk(table,
"
1
"
);
Transaction tran
=
NoebeManager.Instance.Transaction;
tran.Begin();
NoebeManager.Instance.Transaction.Update(table);
table.Rows[
0
][
1
]
=
"
Test Transaction 2!
"
;
tran.Commit();
}
声明:
基本原则:让技术流动!
任何技术如果静止,那么一定会死的。所以希望有兴趣的人一起加入我们,让技术不断积累。很希望您和我们联系,我们会把Noebe的所有源代码告诉您,并且解释里面的代码含义,让您尽快的掌握。
同时我们很希望您能够有更多的想法,不断完善noebe.