版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、MBL324使用SQL Server Everywhere 开发Windows Mobile最佳移动数据应用,课程内容概述,什么是SQL Server Everywhere SQL Everywhere 与 SQL Express SQL Everywhere ClickOnce功能 Windows Mobile 的本地数据存储 SqlCeResultSet Base Table Cursor,来自移动设备的挑战,你的数据非常重要 你的目标平台是Mobile或单机桌面PC 你的程序要面向多个平台 你想远程部署你的应用程序 你的程序可以与其他计算机共享数据,Size,Performance,Se
2、curity,Data integrity,Ease of development,Ease of data transfer,Platform support,Wireless connectivity,移动设备存储的关键,SQL Server Everywhere,什么是SQL Server Everywhere,嵌入到Mobile和桌面应用程序中的轻量级、关系型数据库 SSEv是SQL Mobile运行于Win32平台的实现 SSEv 定位于桌面级数据库,不支持基于Web的应用程序 ClickOnce、Data Directory支持 运行于 Windows XP, Windows 20
3、03, Vista B2 Windows Mobile Visual Studio 2005、SQL Server 200工具支持 安装文件 MSI ClickOnce Book Online,SQL Everywhere 功能,1.4 MB 存储空间,7个DLL 和一张软盘空间一样小 手工和自动两种部署方式 文件型数据库,数据包含在一个文件中(.sdf) 运行于应用程序的进程内 不会作为一个Service运行 每个数据库最多4GB数据 支持多个数据连接同时进行操作 通过密码进行简单的安全与加密 查询处理支持Transaction 支持公共编程接口ADO.NET System.Data.Sql
4、ServerCe 支持.NET(ADO.NET)、C+(OLEDB)和VB(ADOCE)调用 多种数据同步方式 Remote Data Access (RDA) Merge Replication,SQL Server Everywhere 不支持功能,存储过程, 视图,函数 数据库运行在应用程序的进程中 支持TSQL的子集 可以使用托管代码来编写函数 触发器 触发器依赖于TSQL SQL Everywhere 只包含数据,不包括代码 未实现事件通知机制 复杂User规则管理 不能为每个用户创建不同的安全规则 网络连接访问 不支持 IIS/ASP.net Host App数据访问,Visual
5、 Studio 2005 创建 SQL Server Everywhere桌面应用,SQL Everywhere 附加功能,Runtime增强功能 支持ADO.NET部署到GAC |DataDirectory| 宏 动态控制数据库文件的路径 .Northwind.sdf 成为 |DataDirectory|Northwind.sdf VS Designer 增强功能 支持ClickOnce bootstrapper 支持私有部署,部署方式,Single Central Install (MSI) 使用 Microsoft Update 更新 需要管理权限 ClickOnce Bootstrap
6、per 私有部署 (ISV Option) 通过应用程序将dll进行私有部署 不需要管理员权限 不支持 Microsoft Update 将SQL Everywhere作为应用程序的一部分,Deployment OptionsClickOnce with SQL Everywhere BootstrapperClickOnce with Private DLL Deployment,SQL Ev私有部署,显式安装的SQL Ev 优先级高于私有部署版本 SQL Ev运行于GAC中, 需要设置管理权限 改变 System.Data.SqlServer.dll 引用为 Copy Local 拷贝 s
7、qlce*.dlls %ProgramFiles%Microsoft SQL Server Everywherev3.1 不支持 Microsoft Update 只能为宿主应用程序使用,SQL Server/SQL Express,你的企业数据已经存在 需要更多的安全性、功能和可升级特性 Visual Studio 2005中的数据工具 SQL Server 2005 数据管理工具,程序不能在网络连接无效的情况下独立运行在移动设备上 在没有administrative privileges的情况下无法安装 基于Web的安装占用大量空间 在服务器上作为一个Service运行,缺点是什么?,Lo
8、cal Database Options,Server (1000s of users),Workgroup (Dozens of users),Desktop (Single User),Laptop,Tablet PC,Windows CE Device,Pocket PC,Smartphone,Win 32,SQL Mobile,SQL Server Everywhere,使用SqlCeResultSet编写PC与Mobile程序,SQL Everywhere程序真的可以 在多个平台上运行吗?,.NET Compact Framework 2.0的高效率数据访问,什么是SqlCeResu
9、ltSet,SqlCeResultSet是一个特殊的DataReader (实现 IDataReader) 但是不像一般的DataReader, 你可以向前或向后来查看数据 而且可以将修改的数据Update到数据库中 因为实现了IListSource,所以支持被WinForm控件进行数据绑定 始终与数据库连接,不像DataSet,可以实时显示被其他连接改变的数据 .NET Compact Framework 2.0支持,SqlCeResultSet Class,创建SqlCeResultSet,SqlCeResultSet 使用SqlCeCommand. ExecuteResultSet方法
10、Typed ResultSet 使用Visual Studio 2005 Data Source wizard 将.xsd file Custom Tool 属性改为 MSResultSetGenerator 为了增加适应性,通过partial classe扩展产生typed SqlCeResultSet 代码 在Data Source页中使用数据绑定控件 Typed ResultSet可以通过new操作符来创建,Typed SqlCeResultSets,支持每个数据列的强命名属性 方法 Add record Delete record Bind to BindingSource Open
11、MoveToRow Is column null Set column null 优势 Intellisense 和编译期检查 不影响执行效率 支持窗体编辑器中的数据绑定控件,ResultSetOptions,使用SqlCeCommand.ExecuteResultSet创建对象 无须设置ResultSetOptions参数(对象按照默认行为执行) Insensitive -不会发现其他数据连接对数据源的改变 Sensitive-察觉来自其他数据连接的改变 Base table cursors的属性始终为sensitive TableDirect command type = base tab
12、le cursor Scrollable -你可以向前或向后读取数据,使用内部的BookmarkArray Updatable -允许更新 None 只读,单向浏览数据,Base Table Cursor,可以设置index,用于查询指定值、排序、设置范围 获取一个数据行中的所有项,不能根据Select语句获取数据子集 从数据表中读取所有列的速度最快,Example: / Create and execute SqlCeCommand SqlCeCommand cmd = new SqlCeCommand(“Authors,cnn); cmd.CommandType = CommandType
13、.TableDirect; SqlCeDataReader dr = cmd.ExecuteReader(); / Retrieve Results while(dr.Read() MessageBox.Show(Name = + drau_lname); dr.Close(); dr.Dispose(); / Create Result Set SqlCeResultSet rs = cmd.ExecuteResultSet(ResultSetOptions.Scrollable | ResultSetOptions.Updatable);,Seek/SetRange: 基本用法,用于打开表
14、的index 选择值的范围的最快方法,Example: cmd.CommandType = CommandType.TableDirect; cmd.CommandText = Orders; /Assume: Index contains one column datetime cmd.IndexName = SomeIndex; object start = new object1; object end = new object1; start0 = new SqlDateTime(2001, 1, 1); end0 = new SqlDateTime(2002, 2, 3; cmd.S
15、etRange(DbRangeOptions.Match, start, end); SqlCeDataReader dr = cmd.ExecuteReader(); dr.Seek(DbSeekOptions.FirstEqual, new SqlDateTime(2001,3,4); while(dr.Read() / Read data in the usual way,SqlCeResultSet 真的最快吗?,DataSet,DataReader和SqlCeResultSet,Performance Results on Pocket PC,Performance Results on Tablet PC,.NET CF 效率总结,桌面PC比移动设备上应用程序速度要快很多 在两个平台上SqlCeResultSet都比SqlCeDataAdapter要快 使用TableDirect 从数据库中读取数据 SqlCeResultSet 几乎与 SqlCeDataReader一样快 更新单独的数据,仍然是SqlCeResultSet比较快 插入新记录时,SqlCeResultSet最快 在批量更新时,使用UPDATE SQL语句最快 加密存储时性能的损失比较小 大约10%或者更少,概要,对于移动和单机桌面应用程序来说, SQL Server 2005
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026福建海峡人力资源股份有限公司三明分公司招聘1人笔试参考题库及答案解析
- 2026年环境工程专业职业生涯规划
- 既有铁路路基注浆加固专项施工方案
- 电缆安装施工方案
- 2026年消防工程师案例试卷及答案
- 塔吊防碰撞方案
- 2025-2026学年保护眼睛教学设计方案
- 网络销售重点工业产品清单(2026年版)
- 2026云南文山州富宁县投资促进局考察调(流)动工作人员1人备考题库附答案详解(轻巧夺冠)
- 2026湖南省交通规划勘察设计院股份有限公司社会招聘24人备考题库含答案详解(满分必刷)
- 2026年青海省海南藏族自治州单招职业适应性测试题库附参考答案详解(模拟题)
- 广告制作公司奖惩制度
- 2026年及未来5年市场数据辽宁省环保行业市场行情动态分析及发展前景趋势预测报告
- 基金会会计监督制度
- 幼儿园课件《认识我们的身体》课件
- 违反无菌技术操作
- 骨髓腔穿刺科普
- 长螺旋钻孔灌注桩基础施工组织设计方案
- 管道酸洗、钝化施工方案
- 苏州市2024年江苏苏州工业园区房地产交易管理中心辅助人员招聘4人笔试历年参考题库典型考点附带答案详解(3卷合一)
- 2025年安徽省合肥市单招职业适应性测试题库附答案
评论
0/150
提交评论