当前位置: 首页 > news >正文

Hello,.NET Compact Framework 2.0(二)

好了,这次该说说另一位主角了:MS SQL Server 2005 Mobile Edition,名字够长吧?以后叫SQL Mobile就好了,它是SQL Server CE 2.0的升级版,其实就是SQL CE 3.0

SQL Mobile的变化很大,最大的变化就在于增加了多平台的支持。SQL Mobile会被Tablet PC和下一个版本的Pocket PCSmartphone所支持,而且不需要进行转换。这其实没什么好奇怪的,在Windows Mobile 2003里,在模拟器上生成的数据库文件可以在实际设备上运行,这就说明数据库格式是CPU无关的。另外还有消息说,SQL Mobile数据库可以在PC上编辑,也就是说SQL Mobile也肯定支持PC平台(注意,免费的噢!)。而最大的进步在于Smartphone终于支持数据库了。

针对SQL CE的一些问题,进行了可靠性和效率方面的改进。改进主要包括三个方面:数据同步、存储管理和查询过程。

我们先来看数据同步:大家都知道SQL CE 2.0支持复制(Replication)和RDA两种同步方式。先来说复制,SQL Mobile支持多重订阅,以前一个数据库只能支持一个订阅,如果开发者想发布多个数据源,就要创建单独的订阅数据库。而到了SQL Mobile中,多个订阅可以被包括在一个数据库中。

下面一个特性很重要,支持多用户访问和同步。大家都应该还记得,最早做SQL CE开发时,一旦打开查询分析器就不能成功访问数据库,这个问题终于被解决了。

同步状态反馈,开发者可以使用托管API了解同步状态的反馈,可以告诉用户同步的进程了。

Column-level tracking,以前的SQL CE,如果一个数据行中的某个数据被修改了,在同步的时候,就会同步整个数据行,而现在只会同步那个被修改的数据项。大家都知道,以前的Tracking都是通过添加两个数据列完成的,不知道现在他们是怎么做的。不过总觉得这样做会浪费一些空间,希望SQL Mobile不是太慢才好。

接下来是存储引擎部分,微软的文档中说,SQL Mobile的存储引擎被重写,并且其架构适合移动设备电池及连通性方面的限制。所有的应用程序将会共享一个公共内存池,这可能也是因为增加了多用户支持的原因吧。

SQL Mobile为多用户支持提供了数据页的row-level locking,数据页级的locking和独立级别保证数据完整。

自动回收空数据页,SQL Mobile会自动归还不用的数据页,以节省设备的存储空间。

在查询过程访问,SQL Mobile提供了基于成本的优化,还提供了执行计划和查询提示,允许开发者查看查询计划,并根据CPU速度、媒体访问时间等设备细节,优化整个查询的计划。

SQL Mobile还提供了SqlCeResultSet对象,该对象是一个可更新、控制光标移动的数据访问对象,开发者可以利用这个对象直接访问数据库,而不需要双缓存数据。该对象也支持WinForm的数据绑定接口,可以被DataGridTextBoxListBox等控件绑定。

<!--[if !supportEmptyParas]--><!--[endif]-->

SQL Mobile可以集成到SQL Server 2005Visual Studio 2005中,为创建和测试SQL Server Mobile数据库创造方便。

先来说SQL Server 2005,提供了一个叫做SQL Server Management Studio的应用(还不知道中文名叫什么),来取代SQL Server的企业管理器和查询分析器。这个工具可以在PC上管理一个SQL Mobile的数据库。呵呵,在PC和移动设备上用同样的数据库,是不是很吸引人?

SQL Server 2005提供了图形化的查询执行视图、新的订阅向导,改良了Web配置向导,新的配置向导支持Https的虚拟目录,并且能够配置远程IIS服务器。

数据转换服务(DTS)是新加入的功能,可以在SQL Mobile数据库和AccessOracleIBM DB2之间转换数据。

SQL Editor将是SQL Server Management Studio的主要工具,用来设计和测试T-SQL的查询或脚本。

还有就是数据库部署,SQL Server Management Studio可以在本地机器上创建一个SQL Mobile数据库,设计数据表、填充数据,并发布到不同的设备中去。

下面来说下VS.NET 2005针对SQL Mobile的改进。开发者可以使用VS.NET 2005在桌面电脑和移动设备里管理SQL Mobile数据库。开发者可以拖拽一个SQL Mobile表到移动应用的一个控件中,控件会自动绑定到这个表上。

VS.NET 2005还提供了一个“My Computer Deployment”的功能,可以帮助你把SQL Mobile部署到你的PC上,这样移动应用就可以在.NET Framework的环境里运行了。大家都还记得,如果把一个带有SQL CE引用的程序在.NET里运行,会报一个系统不支持的异常,看来这次就不会了。

好了,这些就是关于SQL Mobile的一些信息。让我们期待Beta 2的早日到来吧。

相关文章:

  • 力扣Leetcode:4. 寻找两个正序数组的中位数(Python)
  • Smart Client Case Study Source Code Download from MSDN China
  • 力扣Leetcode:5. 最长回文子串(Python)
  • 古诗词推荐(一):春风十里扬州路,卷上珠帘总不如
  • 终于签完了
  • 古诗词推荐(二):若似月轮终皎洁,不辞冰雪为卿热
  • 腾讯面经zz
  • 力扣Leetcode:10. 正则表达式匹配(Python)
  • 从《关于跳槽的切身体会(转)》谈转载文章的职业道德!!!
  • 力扣Leetcode:11. 盛最多水的容器(Python、Java)
  • 劝学诗整理:安居不用架高堂,书中自有黄金屋。
  • 服务器群集:Windows Server 2003 备份和恢复的最佳做法
  • 力扣Leetcode:15. 三数之和(Python)
  • 忙了一下午
  • 力扣Leetcode:17. 电话号码的字母组合(Python)
  • @angular/forms 源码解析之双向绑定
  • 《Javascript数据结构和算法》笔记-「字典和散列表」
  • chrome扩展demo1-小时钟
  • js面向对象
  • Linux编程学习笔记 | Linux IO学习[1] - 文件IO
  • Swift 中的尾递归和蹦床
  • web标准化(下)
  • Zsh 开发指南(第十四篇 文件读写)
  • 关键词挖掘技术哪家强(一)基于node.js技术开发一个关键字查询工具
  • 京东美团研发面经
  • 如何选择开源的机器学习框架?
  • 数据仓库的几种建模方法
  • 双管齐下,VMware的容器新战略
  • 思维导图—你不知道的JavaScript中卷
  • 微信小程序设置上一页数据
  • 延迟脚本的方式
  • # 数论-逆元
  • #数学建模# 线性规划问题的Matlab求解
  • (bean配置类的注解开发)学习Spring的第十三天
  • (Mac上)使用Python进行matplotlib 画图时,中文显示不出来
  • (编译到47%失败)to be deleted
  • (附源码)ssm捐赠救助系统 毕业设计 060945
  • (论文阅读笔记)Network planning with deep reinforcement learning
  • (十五)Flask覆写wsgi_app函数实现自定义中间件
  • (四)linux文件内容查看
  • (算法)Game
  • (原)记一次CentOS7 磁盘空间大小异常的解决过程
  • (转)iOS字体
  • (转)ObjectiveC 深浅拷贝学习
  • (转)socket Aio demo
  • ******IT公司面试题汇总+优秀技术博客汇总
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .NET CORE 2.0发布后没有 VIEWS视图页面文件
  • .Net Core缓存组件(MemoryCache)源码解析
  • .NET:自动将请求参数绑定到ASPX、ASHX和MVC(菜鸟必看)
  • @FeignClient 调用另一个服务的test环境,实际上却调用了另一个环境testone的接口,这其中牵扯到k8s容器外容器内的问题,注册到eureka上的是容器外的旧版本...
  • @Service注解让spring找到你的Service bean
  • [8481302]博弈论 斯坦福game theory stanford week 1
  • [ACM] hdu 1201 18岁生日
  • [AutoSar]工程中的cpuload陷阱(三)测试