已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
SQL Server 2005 Mobile Edition 联机丛书 使用 SQL Server Mobile 创建移动应用程序 发送反馈请参阅 全部折叠全部展开 语言筛选器: 全部语言筛选器: 多语言语言筛选器: Visual Basic语言筛选器: C#语言筛选器: C+语言筛选器: J#语言筛选器: JScriptSQL Server Mobile 教程 Visual Basic(Declaration) C#C+J#JScript在此演练中,您将学习如何在使用 SQL Server 2005 Mobile Edition (SQL Server Mobile) 的 Visual Studio2005 中创建应用程序。SQL Server Mobile 数据库将作为 SQL Server 2005 发布的订阅服务器,并使用合并复制来交换信息。 在此演练中,您将执行下列任务:1. 配置 SQL Server 2005 发布2. 配置 Internet 信息服务 (IIS) 以进行复制3. 创建 SQL Server Mobile 订阅4. 创建应用程序5. 部署应用程序并测试订阅必备项若要按照此演练中所写的内容执行此演练,您需要满足下列条件: 安装有 WindowsXP 和 IIS 的计算机 Visual Studio 2005 SQL Server 2005,与 Visual Studio 安装在同一台计算机上SQLServer 2005 任务在创建应用程序之前,必须在 SQL Server 2005 中配置发布。在下列步骤中,您将创建一个示例数据库,然后从该数据库发布数据。您将使用预建的脚本文件创建数据库,然后使用新建发布向导创建发布。创建数据库并在其中填充数据1. 打开 SQL Server Management Studio。 2. 当提示您连接服务器时,请在“服务器名称”中键入 (local),然后单击“连接”。3. 打开一个新查询窗口。创建一个 SQLMobile 数据库,并在该数据库中填充数据。复制代码USE master;GODROP Database SQLMobile;GOCREATE DATABASE SQLMobile;GOUSE SQLMobile;GOCREATE TABLE MembershipData (MemberID INTEGER IDENTITY (1,1) CONSTRAINT pkMemberID PRIMARY KEY, MemberName NVarChar (50);CREATE TABLE FlightData (MemberID INTEGER FOREIGN KEY REFERENCES MembershipData(MemberID), Destination NVarChar (50), FlightStatus NVarChar(50), ArrivalDate DATETIME, FlownMiles INTEGER);INSERT INTO MembershipData (MemberName) VALUES (Mr Don Hall);INSERT INTO MembershipData (MemberName) VALUES (Mr Jon Morris);INSERT INTO MembershipData (MemberName) VALUES (Ms TiAnna Jones);INSERT INTO FlightData (MemberID, Destination, FlightStatus, ArrivalDate, FlownMiles) VALUES (1, Seattle, Flight Delayed 1 hour, 8/25/00, 20000);INSERT INTO FlightData (MemberID, Destination, FlightStatus, ArrivalDate, FlownMiles) VALUES (2, London, Flight on time, 9/12/00, 15000);INSERT INTO FlightData (MemberID, Destination, FlightStatus, ArrivalDate, FlownMiles) VALUES (3, Sydney, Flight Gate Closing, 11/5/00, 30000);INSERT INTO FlightData (MemberID, Destination, FlightStatus, ArrivalDate, FlownMiles) VALUES (1, Tokyo, Delayed Fog, 5/25/00, 25000);INSERT INTO FlightData (MemberID, Destination, FlightStatus, ArrivalDate, FlownMiles) VALUES (2, Minneapolis, Flight on time, 5/1/00, 1000);INSERT INTO FlightData (MemberID, Destination, FlightStatus, ArrivalDate, FlownMiles) VALUES (3, Memphis, Flight Gate Closing, 1/5/00, 1000);4. 单击“执行(!)”运行该脚本并创建数据库。注意: 您还可以按 F5,或者从“查询”菜单中选择“执行”来运行该查询。 此时,将运行该脚本,创建一个名为 SQLMobile 的新数据库。准备服务器以发布数据在创建发布之前,必须创建快照代理用户帐户,并创建一个将在其中存储快照文件的共享文件夹,准备服务器以进行发布。创建快照文件夹之后,该文件夹将用于服务器上的所有发布。如果以前已在此服务器上创建了发布,您可以跳过这些步骤。 创建快照用户帐户1. 在“开始”菜单上,右键单击“我的电脑”,然后选择“管理”。2. 在“计算机管理”中,展开“系统工具”,展开“本地用户和组”,右键单击“用户”,然后选择“新用户”。3. 在“新用户”对话框中,键入以下信息,然后单击“创建”:字段 值 用户名snapshot_agent密码pssw0rd确认密码pssw0rd用户下次登录时须更改密码未选中密码永不过期选中重要事项: 这些设置仅用于测试。在生产环境中,请确保用户帐户设置符合您的网络安全性要求。许多情况下,对于快照代理您将使用域用户帐户而不是使用本地用户帐户。 1. 单击“关闭”关闭“新用户”对话框,然后关闭“计算机管理”控制台。创建快照文件夹1. 在 Windows 资源管理器中,创建一个名为“snapshot”的新文件夹。在此演练中,您可以在驱动器 C 的根目录下创建该文件夹:c:snapshot。右键单击“快照”文件夹,选择“共享和安全”。2. 在“共享”选项卡上,选择“共享该文件夹”,然后单击“权限”。3. 在“快照的权限”中,单击“添加”。4. 在“输入要选择的对象名称”中,键入 computernamesnapshot_agent(其中 computername 是您本地计算机的名称),然后单击“确定”。5. 在“快照的权限”中,选择“snapshot_agent”,分配“更改”和“读取”共享权限,然后单击“确定”。6. 选择“安全”选项卡。7. 单击“添加”。8. 在“输入要选择的对象名称”中,键入 computernamesnapshot_agent(其中 computername 是您本地计算机的名称),然后单击“确定”。9. 选择“snapshot_agent”,然后将“写入”权限添加到允许的权限列表中。现在,snapshot_agent 帐户将被授予下列权限: 读取和运行 列出文件夹目录 读取 写入10. 单击“确定”关闭“快照属性”窗口。11. 关闭 Windows 资源管理器。创建发布1. 在对象资源管理器中,展开“(本地)”节点(如果当前尚未展开),然后展开“复制”。2. 右键单击“发布”文件夹,然后选择“新建发布”。3. 在新建发布向导简介屏幕上,单击“下一步”。4. 如果以前未曾在此计算机上创建发布,将提示您配置分发服务器。选择第一个选项将本地计算机作为它自己的分发服务器,然后单击“下一步”。5. 如果以前未曾在此计算机上创建发布,将提示您指定快照文件夹。键入在前面过程中创建的快照文件夹的共享路径。以 servernameshare 格式键入共享路径,不要键入本地路径。在此演练中,我们建议您键入 computersnapshot(其中 computer 是您计算机的名称),然后单击“下一步”。6. 在数据库列表中,选择“SQLMobile”,然后单击“下一步”。7. 在发布类型列表中,选择“合并发布”,然后单击“下一步”。8. 在“订阅服务器类型”页中,选择“是”启用对 SQL Server Mobile 订阅服务器的支持,然后单击“下一步”。9. 在要发布的对象列表中,选中“表”复选框。如果展开“表”,您将发现 SQLMobile 数据库中的两个表都已被选中。单击“下一步”。10. 会通知您将向表中添加唯一标识符。所有合并项目都需要一个 uniqueindentifier 列。单击“下一步”。11. 在“筛选表行”页中,现在即可添加对已发布数据的筛选器。对于此演练,您将无需筛选数据。单击“下一步”。12. 在“快照代理”页中,您可以配置创建快照的时间以及快照代理运行的频率。单击“下一步”以接受默认设置。13. 在“代理安全性”对话框中,单击“安全设置”。a. 在“快照代理安全性”对话框中,输入前面过程中所创建帐户的登录信息。进程帐户为 computer_namesnapshot_agent(其中 computer_name 是您计算机的名称),密码为 pssw0rd。b. 单击“确定”以保存设置。c. 在“代理安全性”页中,单击“下一步”。14. 在“向导操作”屏幕上,您可以确定创建发布的时间以及是否希望创建脚本文件。单击“下一步”以接受默认选择。15. 在“完成该向导”屏幕上,键入 SQLMobile 作为发布的名称,然后单击“完成”。16. 将创建发布。向导完成后,单击“关闭”。保护发布1. 在对象资源管理器中,展开“安全性”,右键单击“登录”,然后选择“新建登录”。2. 在“新建登录”对话框中,选择“Windows 身份验证”,键入 computernameiusr_computername(其中 computername 是您计算机的名称)。3. 在导航窗格中,选择“数据库访问”窗格。4. 在数据库列表中,选择“SQLMobile”,然后单击“确定”。5. 在对象资源管理器中,展开“复制”,展开“发布”,右键单击“SQLMobile:SQLMobile”发布,然后选择“属性”。6. 在导航窗格中,选择“发布访问列表”。7. 单击“添加”。在“添加发布访问项”对话框中,列出了 IUSR 帐户。选择该帐户,然后单击“确定”。8. 请确保 IUSR 帐户当前位于 PAL 中,然后单击“确定”。配置 IIS 和 SQLServer 2005 以进行 Web 同步既然 SQL Server 已经配置了发布,您必须使该发布可以被 SQL Server Mobile 客户端通过网络进行访问。SQL Server Mobile 通过 IIS 连接到 SQL Server。特别是,您可以创建并配置一个虚拟目录,以允许客户端访问 SQL Server Mobile 服务器代理。安装 SQLServer Mobile 服务器组件1. 在 Windows 资源管理器中,导航到以下目录:C:Program FilesMicrosoft SQL Server90ToolsBinnVSShellCommon7IDE2. 双击 sqlce30setupen.msi 运行安装程序。3. 在“安装”向导的简介屏幕上,单击“下一步”。4. 阅读并接受 EULA 条款,然后单击“下一步”。5. 在“系统配置检查”屏幕上,确保所有项都通过检查。如果尚未安装 SQL Server 2000,将列出该列表的最后一项作为警告。因为您正在使用 SQL Server 2005,这并不是问题。单击“下一步”。6. 在接下来的屏幕上,单击“下一步”,然后单击“安装”开始安装。7. 单击“Finish”。配置发布以进行 Web 同步1. 在 SQL Server Management Studio 的对象资源管理器中,展开“(本地)”计算机节点。2. 右键单击“复制”文件夹,然后选择“配置 Web 同步”。3. 在该向导的简介屏幕上,单击“下一步”。4. 在“订阅服务器类型”屏幕上,选择“SQLServer Mobile Edition”,然后单击“下一步”。5. 在“Web 服务器”屏幕的“运行 IIS 的计算机”文本框中,键入您计算机的名称(如果尚未提供),然后单击“创建新的虚拟目录”。6. 在显示的树中,展开该计算机,展开“网站”,然后选择“默认网站”。7. 单击“下一步”。8. 在“虚拟目录信息”屏幕上的“别名”文本框中,键入 SQLMobile,然后单击“下一步”。9. 在“客户端身份验证”屏幕上,选择“客户端将以匿名方式进行连接”,然后单击“下一步”。10. 在“匿名访问”屏幕上,单击“下一步”接受默认设置。11. 在“快照共享访问”屏幕上,键入 computersnapshot(其中 computer 是您计算机的名称),然后单击“下一步”。如果收到快照共享为空的警告,请单击“是”。12. 单击“Finish”。13. 单击“关闭”。SQLServer Mobile 任务在部署将要使用 SQL Server Mobile 的应用程序之前,预先创建 SQL Server Mobile 数据库和订阅通常会节省时间。SQL Server Management Studio 允许您在本地计算机上创建并使用 SQL Server Mobile 数据库。然后,您可以在开发应用程序时使用此数据库。创建新的 SQLServer Mobile 数据库1. 在 SQL Server Management Studio 的对象资源管理器中,单击“连接”,然后选择“SQLServer Mobile”。2. 在“数据库文件”字段中,选择“”。3. 在文件名文本框中,键入 c:sqlmobile.sdf,然后单击“确定”。4. 在“连接到服务器”对话框中,单击“连接”。将在对象资源管理器中添加名为“SQLServer Mobile My Computer.sqlmobile”的新节点。创建新的订阅1. 在对象资源管理器中,展开“SQLServer Mobile”节点,展开“复制”,右键单击“订阅”,然后选择“新建订阅”。2. 在简介屏幕上,单击“下一步”。3. 在“选择发布”屏幕的“发布服务器”下拉列表中,选择“”。4. 在“连接到服务器”对话框,键入或选择本地计算机,然后单击“连接”。5. 在“选择发布”屏幕的发布列表中,展开“SQLMobile”,选择“SQLMobile”发布,然后单击“下一步”。6. 在“标识订阅”屏幕上,为订阅名称键入 SQLMobile,然后单击“下一步”。7. 在“Web 服务器身份验证”屏幕上,键入前面过程中创建的虚拟目录的 URL。在此演练中,您已经创建了 URL 为 http:/localhost/SQLMobile 的虚拟目录。8. 单击“订阅服务器将以匿名方式进行连接”,然后单击“下一步”。9. 在“SQLServer 身份验证”屏幕上,单击“下一步”接受默认设置。在最终屏幕上,该向导将显示示例代码,您可以在应用程序中创建订阅时使用该代码。选择示例代码(Visual Basic 或 C#,取决于您在创建应用程序时使用的语言),然后复制代码。若要执行复制操作,请选择该代码并按 Ctrl+C。启动记事本或其他文本编辑器,然后粘贴示例代码。在使用下列步骤创建应用程序时,您将使用此代码。10. 在复制示例代码之后,单击“完成”。11. 单击“关闭”。生成应用程序创建新的智能设备项目1. 打开 Visual Studio2005。2. 在“文件”菜单上,选择“新建项目”。3. 在“新建项目”对话框的“项目类型”树中,展开您所使用的开发语言,然后选择“智能设备”。4. 在模板列表中,选择要创建的项目类型。对于此演练,请选择“Pocket PC 2003 应用程序”。5. 为该项目提供名称和位置,然后单击“确定”。对于此演练,请将该项目命名为 SQLMobile。Visual Studio 将创建新的项目,并显示 Form1,就像在智能设备上显示时一样。添加对 System.Data.SqlServerCe.dll 的引用1. 在解决方案资源管理器中,右键单击“引用”,然后选择“添加引用”。注意: 如果解决方案资源管理器中没有列出“引用”文件夹,那么单击解决方案资源管理器顶部的“显示所有文件”。 1. 在 .NET 程序集列表中,选择“System.Data.SqlServerCe”,然后单击“确定”。如果没有列出 System.Data.SqlServerCe,请执行下列步骤:a. 单击“浏览”选项卡。b. 定位到以下目录:C:ProgramFilesMicrosoftVisualStudio8Common7IDEc. 选择“System.Data.SqlServerCe.dll”,然后单击“确定”。解决方案资源管理器中的引用列表现在包括 System.Data.SqlServerCe,并且您的项目可以使用该程序集。2. 在解决方案资源管理器中,右键单击“Form1.cs”或“Form1.vb”,然后选择“查看代码”。3. 在窗体的代码顶部,添加指令以使用 System.Data.SqlServerCe 命名空间:C#using System.Data.SqlServerCe;Visual BasicImports System.Data.SqlServerCe复制代码 添加数据连接1. 在主窗口中,切换回 Form1 的“设计”(默认)视图。2. 从“数据”菜单中,单击“添加新数据源”。注意如果未显示“添加新数据源”,请选择 Form1 的“设计”视图,然后再次查看“数据”菜单。3. 在“选择数据源类型”窗口上,选择“数据库”,然后单击“下一步”。4. 在“选择您的数据连接”对话框中,单击“新建连接”。5. 在“选择数据源”对话框中的“数据源”下,选择“Microsoft SQL Server Mobile Edition”。在数据访问接口列表中,选择“.NET Framework Data Provider for SQLServer Mobile Edition”。单击“继续”。6. 在“添加连接”中的“数据源”下,选择“我的电脑”。在“连接属性”部分中的“数据库”下,单击“浏览”,然后浏览到前面过程中所创建的数据库。如果按照步骤操作,该数据库位于 c:sqlmobile.sdf。7. 单击“测试连接”,然后单击“确定”以创建新的数据连接。8. 在“选择您的数据连接”对话框中,单击“下一步”。9. 在“保存连接字符串”窗口中,单击“下一步”。10. 在“选择您的数据库对象”窗口中,选择“表”,然后单击“完成”。选择要显示的数据1. 从“数据”菜单中,选择“显示数据源”。2. 将“MembershipData”表从“数据源”窗口拖动到“Form1 设计”窗口。将在 Form1 上创建数据网格,并自动提供列名称。3. 右键单击数据网格,然后选择“属性”。4. 在“属性”窗口中,将“停靠”值更改为“顶部”。可以通过单击出现的图形表示的顶部栏,或者在值字段中键入“顶部”来完成此操作。将会对数据网格进行移动并调整其大小以填充 Form1 的顶部。5. 在数据网格的右上角,单击小箭头。从显示的菜单中,选择“生成数据窗体”。6. 将“FlightData”表从“数据源”窗口拖动到“Form1 设计”窗口。将在 Form1 上创建数据网格,并自动提供列名称。7. 您可以使用该数据网格的“属性”设置将“停靠”属性设置为“底部”。添加代码 保存数据库文件路径和名称的字符串变量。 如果数据库文件已经存在,则表示用于删除数据库文件的代码。 用于建立与 SQL Server 发布的连接、同步数据以及使用该数据创建新本地数据库的代码。C#复制代码 复制代码public partial class Form1 : System.Windows.Forms.Form private System.Windows.Forms.MainMenu mainMenu1; string filename = Program FilesSSMWalkthroughsqlmobile.sdf; public Form1() InitializeComponent(); .Visual Basic复制代码Public Class Form1 Dim filename As New String _ (Program FilesSQMWalkthrough_vbsqlmobile.sdf)复制代码.C#复制代码private void DeleteDB() if (System.IO.File.Exists(filename) System.IO.File.Delete(filename); Sub DeleteDB() If System.IO.File.Exists(filename) Then System.IO.File.Delete(filename) End IfEnd Sub1. 创建名为“Sync”的执行同步的新方法。若要执行此操作,您将使用从前面步骤的“新建发布向导”中复制的代码。在粘贴代码后,必须对代码执行两项更改: 更改 SubscriberConnectionString 值以指向在文件名变量中指定的正确路径和文件名。 将 AddOption 值从 ExistingDatabase 更改为 CreateDatabase。完成后,Sync 方法应如下所示:C#复制代码private void Sync() SqlCeReplication repl = new SqlCeReplication(); repl.InternetUrl = http:/computer_name/sqlmobile/sqlcesa30.dll; repl.Publisher = computer_name; repl.PublisherDatabase = SQLMobile; repl.PublisherSecurityMode = SecurityType.NTAuthentication; repl.Publication = SQLMobile; repl.Subscriber = sqlmobile; repl.SubscriberConnectionString = Data Source= + filename + ;Password=;Max Database Size=128;Default Lock Escalation =100; repl.AddSubscription(AddOption.CreateDatabase); repl.Synchronize();Sub Sync() Dim repl As New SqlCeReplication() repl.InternetUrl = http:/computer_name/sqlmobile/sqlcesa30.dll repl.Publisher = computer_name repl.PublisherDatabase = SQLMobile repl.PublisherSecurityMode = SecurityType.NTAuthentication repl.Publication = SQLMobile repl.Subscriber = sqlmobile repl.SubscriberConnectionString = _ Data Source= + filename + ;Password=; _ & Max Database Size=128;Default Lock Escalation =100; repl.AddSubscription(AddOption.CreateDatabase) repl.Synchronize()End Sub1. 最后,向调用刚才所创建两个方法的 Form1_Load 事件处理程序的开头添加代码。Form1_Load 事件处理
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年创新战略专员招聘面试参考题库及答案
- 2025年公关经理招聘面试题库及参考答案
- 2025年网络市场专员招聘面试题库及参考答案
- 2025年商铺经理招聘面试题库及参考答案
- 2025年审计专员人员招聘面试参考题库及答案
- 2025年党员发展专员招聘面试题库及参考答案
- 2025年媒体策划人员招聘面试题库及参考答案
- 2025年储备干部招聘面试参考题库及答案
- 2025年财务副总监招聘面试参考题库及答案
- 2025年绩效考核专员招聘面试题库及参考答案
- 超声检查技能培训大纲
- 2025江西吉安市工会社会工作者招聘8人考试笔试备考试题及答案解析
- 《大学美育(第2版)高职》全套教学课件
- 湖南省娄底市娄星区联考 2025-2026学年九年级上学期11月期中道德与法治试题(无答案)
- 17.2用公式法分解因式(课时2) 课件人教版(新版)数学八年级上册
- 律师的招聘简章文件
- GB/T 3033.1-2005船舶与海上技术管路系统内含物的识别颜色第1部分:主颜色和介质
- GA 1800.2-2021电力系统治安反恐防范要求第2部分:火力发电企业
- 《公路设计》第九章-挡土墙设计(39P)课件
- 《建设项目全过程造价咨询规程》2017年1月18日
- 人音版小学音乐二上《蜗牛与黄鹂鸟》课件
评论
0/150
提交评论