UltraLite这种数据库组件技术,是移动数据库Sql Anywhere的一种数据组件技术,支持sql语句,目前不支持存储过程和触发器,空数据库只有10几K,适用于各种移动设备使用,能跨平台(呵呵)。找不到资料只有自己慢慢探索了。
1. 建立UltraLite数据库
操作步骤:
1. 打开UltraLite模式管理器,新建UltraLite模式文件,输入文件名(包含路径)
2. 新建表,输入表名,字段,字段类型,必须设置主键.
3. 添加发布,选择要发布的表名及字段名
4. 添加Mobilink同步表,添加表名及字段名为同步表(发布与同步字段个数及类型要对应)
5. 右键单击模式文件,选择”导出用于Palm的模式”,会生成后缀名为.pdb的模式文件.
6. 选择工具菜单,选择创建UltraLite数据库,会生成后缀名为.udb的UltraLite数据库文件.
2. UltraLite数据库如何在.net程序中使用(C#)
1. 在工程中引用SqlAnywhere安装目录下 ultralite/UltraLite.NET/win32/iAnywhere.UltraLite.dll
2. 定义
private static iAnywhere.UltraLite.DatabaseManager datamanager;
private static iAnywhere.UltraLite.Connection con;
private static iAnywhere.UltraLite.Table ultable;
实例化
string con_parms="uid=dba;pwd=sql";
string open_parms=con_parms+";ce_file=c://aa.udb";
//string schema_parms=";ce_SCHEMA=c://tutCustomer.usm;";
datamanager=new iAnywhere.UltraLite.DatabaseManager();
iAnywhere.UltraLite.ConnectionParms cparms=new
iAnywhere.UltraLite.ConnectionParms();
cparms.ConnectionName="uid=dba;pwd=sql;ce_file=c:// tutCustomer.udb";
cparms.DatabaseOnDesktop="C://tutCustomer.udb";
con=datamanager.OpenConnection(cparms);
ultable=con.GetTable("customer");
ultable.Open();//完成操作后要ultable.Close();
读取数据库数据
//游标移动到第一行
ultable.MoveFirst();
//获得第一行第五列的字符串格式的值(索引从1开始) 赋给文本框
TextBox4.Text=ultable.GetString(5);
数据库数据写入
//定义变量
int id=2;
string city="北京";
//插入操作
ultable.InsertBegin();
//给每个字段赋值
ultable.SetInt(1,id);
ultable.SetString(2,city);
//插入
ultable.Insert();
删除数据库数据
//游标移动到指定行
ultable.MoveFirst();
//执行删除
ultable.Delete();
更新数据库数据
//打开表
ultable.Open();
//游标移到首行
ultable.MoveFirst();
//循环判断是否到结尾
while(!ultable.IsEOF)
{
//条件判断,主键等于某一特定值,执行更新操作
if(ultable.GetString(1)==this.TextBox5.Text)
{
//主键值不能更新
string fn=TextBox1.Text.Trim();
string ln=TextBox2.Text.Trim();
string cy=TextBox3.Text.Trim();
string ph=TextBox4.Text.Trim();
//开始更新
ultable.UpdateBegin();
//给游标所在行字段赋值
ultable.SetString(2,fn);
ultable.SetString(3,ln);
ultable.SetString(4,cy);
ultable.SetString(5,ph);
//更新
ultable.Update();
}
//游标向下移动
ultable.MoveNext();
}
//关闭
ultable.Close();
con.Close();