用SQL Server Compact Edition创建移动应用程序Word文档下载推荐.docx
《用SQL Server Compact Edition创建移动应用程序Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《用SQL Server Compact Edition创建移动应用程序Word文档下载推荐.docx(13页珍藏版)》请在冰豆网上搜索。
=
'
SQLMobile'
)
BEGIN
DROP
Database
SQLMobile;
END
CREATE
DATABASE
TABLE
MembershipData
(MemberID
INTEGER
IDENTITY
(1,1)
CONSTRAINT
pkMemberID
PRIMARY
KEY,
MemberName
NVarChar
(50));
FlightData
FOREIGN
KEY
REFERENCES
MembershipData(MemberID),
Destination
(50),
FlightStatus
NVarChar(50),
ArrivalDate
DATETIME,
FlownMiles
INTEGER);
INSERT
INTO
(MemberName)
VALUES
('
Mr
Don
Hall'
);
Jon
Morris'
Ms
TiAnna
Jones'
(MemberID,
Destination,
FlightStatus,
ArrivalDate,
FlownMiles)
VALUES
(1,
Seattle'
Flight
Delayed
1
hour'
8/25/00'
20000'
(2,
London'
on
time'
9/12/00'
15000'
(3,
Sydney'
Gate
Closing'
11/5/00'
30000'
Tokyo'
Fog'
5/25/00'
25000'
Minneapolis'
5/1/00'
1000'
Memphis'
1/5/00'
GO
4、单击“执行(!
)”运行该脚本并创建数据库。
此时,将运行该脚本,创建一个名为SQLMobile的新数据库。
注意:
您还可以按F5,或者从“查询”菜单中选择“执行”来运行该查询。
5、若要确认该数据库已创建,请在对象资源管理器中,展开“(本地)”,展开“数据库”,然后展开“SQLMobile”。
如果没有列出SQLMobile数据库。
请右键单击“数据库”,然后选择“刷新”以更新数据库列表。
准备服务器以发布数据
在创建发布之前,必须创建快照代理用户帐户,并创建一个将在其中存储快照文件的共享文件夹,准备服务器以进行发布。
创建快照文件夹之后,该文件夹将用于服务器上的所有发布。
如果以前已在此服务器上创建了发布,您可以跳过这些步骤。
创建快照用户帐户
1、从“控制面板”的“管理工具”中打开“计算机管理”。
2、在“计算机管理”中,展开“系统工具”,展开“本地用户和组”,右键单击“用户”,然后选择“新用户”。
3、在“新用户”对话框中,键入以下信息,然后单击“创建”:
字段
值
用户名
snapshot_agent
密码
p@ssw0rd
确认密码
用户下次登录时须更改密码
未选中
密码永不过期
选中
重要事项:
这些设置应该仅用于测试。
在生产环境中,请确保用户帐户设置符合您的网络安全要求。
通常,您将对快照代理使用域用户帐户而不是使用本地用户帐户。
创建快照文件夹
1. 在Windows资源管理器中,创建一个名为“snapshot”的新文件夹。
在此演练中,您可以在驱动器C的根目录下创建该文件夹:
c:
\snapshot。
右键单击“snapshot”文件夹,然后选择“共享和安全”。
2. 在“共享”选项卡上,选择“共享该文件夹”,然后单击“权限”。
3. 在“快照的权限”中,单击“添加”。
4. 在“输入要选择的对象名称”中,键入computername\snapshot_agent(其中computername为本地计算机的名称),单击“检查名称”,然后单击“确定”。
5. 在“快照的权限”中,选择“snapshot_agent”,分配“更改”和“读取”共享权限,然后单击“确定”。
6. 选择“安全”选项卡。
7. 单击“添加”。
8. 在“输入要选择的对象名称”中,键入computername\snapshot_agent(其中computername为本地计算机的名称),单击“检查名称”,然后单击“确定”。
9. 选择“snapshot_agent”,然后将“写入”权限添加到已启用的权限列表中。
现在,snapshot_agent帐户将被授予下列权限:
10. 读取和执行
11. 列出文件夹目录
12. 读取
13. 写入
14. 单击“确定”关闭“快照属性”窗口。
15. 关闭Windows资源管理器。
创建发布
1. 在SQLServerManagementStudio的对象资源管理器中,展开“(本地)”节点(如果当前尚未展开),然后展开“复制”。
2. 右键单击“本地发布”文件夹,然后选择“新建发布”。
3. 在新建发布向导简介屏幕上,单击“下一步”。
4. 如果以前未曾在此计算机上创建发布,将提示您配置分发服务器。
选择第一个选项将本地计算机作为它自己的分发服务器,然后单击“下一步”。
5. 如果以前未曾在此计算机上创建发布,将提示您指定快照文件夹。
键入前面过程中创建的快照文件夹的共享路径。
以\\servername\share格式键入共享路径,不要键入本地路径。
在此演练中,我们建议您键入\\computer\snapshot(其中computer是您计算机的名称),然后单击“下一步”。
6. 在数据库列表中,选择“SQLMobile”,然后单击“下一步”。
7. 在发布类型列表中,选择“合并发布”,然后单击“下一步”。
8. 在“订阅服务器类型”页中,选择“是”以启用对SQLServerCompactEdition订阅服务器的支持,然后单击“下一步”。
9. 在要发布的对象列表中,选中“表”复选框。
如果展开“表”,您将发现SQLMobile数据库中的两个表都已被选中。
单击“下一步”。
10. 会通知您将向表中添加唯一标识符。
所有合并项目均需要uniqueindentifier列。
11. 在“筛选表行”页中,现在即可添加对已发布数据的筛选器。
对于此演练,您将无需筛选数据。
12. 在“快照代理”页中,您可以配置创建快照的时间以及快照代理运行的频率。
单击“下一步”以接受默认设置。
13. 在“代理安全性”对话框中,单击“安全设置”。
14. 在“快照代理安全性”对话框中,输入前面过程中所创建帐户的登录信息。
进程帐户为computer_name\snapshot_agent(其中computer_name是您计算机的名称),密码为p@ssw0rd。
15. 单击“确定”以保存设置。
16. 在“代理安全性”页中,单击“下一步”。
17. 在“向导操作”屏幕上,您可以确定创建发布的时间以及是否希望创建脚本文件。
清除“立即创建快照”,然后单击“下一步”。
18. 在“完成该向导”屏幕上,键入SQLMobile作为发布的名称,然后单击“完成”。
19. 将创建发布。
向导完成后,单击“关闭”。
设置权限
您必须为快照代理帐户和IIS匿名用户帐户授予权限。
还必须将IIS匿名用户帐户添加到发布访问列表(PAL)中。
设置数据库权限
1. 在的对象资源管理器中,展开“安全性”,右键单击“登录名”,然后选择“新建登录名”。
2. 在“新建登录名”对话框中,选择“Windows身份验证”,单击“搜索”,在“输入要选择的对象名称”框中键入computername\snapshot_agent(其中computername为您的计算机名称),单击“检查名称”,然后单击“确定”。
3. 在导航窗格中,选择“用户映射”窗格。
4. 在数据库列表中,选择“distribution”和“db_owner”角色,选择“SQLMobile”和“db_owner”角色,然后单击“确定”。
5. 右键单击“登录名”,然后选择“新建登录名”。
6. 在“新建登录名”对话框中,选择“Windows身份验证”,单击“搜索”,在“输入要选择的对象名称”框中键入computername\iusr_computername(其中computername为您的计算机名称),单击“检查名称”,然后单击“确定”。
7. 在导航窗格中,选择“用户映射”窗格。
8. 在数据库列表中,选择“distribution”和“SQLMobile”,然后单击“确定”。
授予发布权限
1. 在对象资源管理器中,展开“复制”,展开“发布”,右键单击“[SQLMobile]:
SQLMobile”发布,然后单击“属性”。
2. 在导航窗格中,选择“发布访问列表”。
3. 单击“添加”。
在“添加发布访问项”对话框中,列出了IUSR帐户。
选择该帐户,然后单击“确定”。
4. 请确保IUSR帐户当前位于PAL中,然后单击“确定”。
创建发布快照
只有在创建发布快照之后才可对SQLMobile发布的订阅进行初始化。
1. 在SQLServerManagementStudio的对象资源管理器中,展开“(本地)”计算机节点。
2. 展开“本地发布”文件夹,选择发布名称,右键单击“SQLMobile”,然后单击“查看快照代理状态”。
3. 在“查看快照代理状态”对话框中,单击“启动”。
4. 在进行下一操作之前,请确保已成功完成快照作业。
配置IIS和SQLServer2005以实现Web同步
既然已对SQLServer配置了一个发布,则必须使该发布可以通过网络供SQLServerCompactEdition客户端使用。
SQLServerCompactEdition可通过IIS连接到SQLServer。
即,创建虚拟目录并对其进行配置,从而允许客户端访问SQLServerCompactEdition服务器代理。
安装SQLServerCompactEdition服务器组件
1. 在Windows资源管理器中,定位到以下目录:
2. C:
\ProgramFiles\MicrosoftSQLServer\90\Tools\Binn\VSShell\Common7\IDE
3. 双击sqlce30setupen.msi运行安装程序。
4. 在“安装”向导的简介屏幕上,单击“下一步”。
5. 阅读并接受Microsoft软件许可条款,然后单击“下一步”。
6. 在“系统配置检查”屏幕上,确保所有项都通过检查。
如果尚未安装SQLServer2000,则将列出该列表的最后一项作为警告。
因为您正在使用SQLServer2005,所以这并不是问题。
7. 在接下来的屏幕上,单击“下一步”,然后单击“安装”开始安装。
8. 单击“完成”。
配置发布以进行Web同步
2. 展开“本地发布”文件夹,选择发布名称,右键单击该名称,然后选择“配置Web同步”。
3. 在该向导的简介屏幕上,单击“下一步”。
4. 在“订阅服务器类型”屏幕上,选择“SQLServerCompactEdition”,然后单击“下一步”。
5. 在“Web服务器”屏幕的“运行IIS的计算机”文本框中,键入您计算机的名称(如果尚未提供),然后单击“创建新的虚拟目录”。
6. 在显示的树中,展开该计算机,展开“网站”,然后选择“默认网站”。
7. 单击“下一步”。
8. 在“虚拟目录信息”屏幕上的“别名”文本框中,键入SQLMobile,然后单击“下一步”。
9. 如果收到警告对话框,请单击“是”。
10. 在“安全通信”屏幕中,选择“不需要使用安全通道(SSL)”。
11. 重要提示在生产环境中,应该启用SSL加密以保护在订阅服务器与运行IIS“客户端身份验证”屏幕的服务器之间通过Internet交换的数据,选择“客户端将以匿名方式进行连接”,然后单击“下一步”。
12. 在“匿名访问”屏幕上,单击“下一步”接受默认设置。
13. 在“快照共享访问”屏幕上,键入\\computer\snapshot(其中computer是您计算机的名称),然后单击“下一步”。
14. 如果收到快照共享为空的警告,请单击“是”。
15. 单击“完成”。
16. 单击“关闭”。
17. 在InternetExplorer的“地址”中,输入URLhttp:
//localhost/SQLMobile/sqlcesa30.dll?
diag,然后单击“转到”。
从而以诊断模式连接到服务器。
确保SQLServerCompactEdition服务器代理诊断报告显示成功。
SQLServerCompactEdition任务
如果在开发要使用SQLServerCompactEdition的应用程序之前预先创建SQLServerCompactEdition数据库和订阅,通常会节省大量时间。
SQLServerManagementStudio允许您在本地计算机上创建并使用SQLServerCompactEdition数据库。
然后,您可以在开发应用程序时使用此数据库。
创建新的SQLServerCompactEdition数据库
1. 在SQLServerManagementStudio的对象资源管理器中,单击“连接”,然后选择“SQLServerCompactEdition”。
2. 在“数据库文件”字段中,选择“<
新建数据库…>
”。
3. 在文件名文本框中,键入c:
\sqlmobile.sdf,然后单击“确定”。
4. 如果您收到有关空密码的警告,请单击“是”。
本教程中的数据库没有密码保护或进行加密。
5. 在“连接到服务器”对话框中,单击“连接”。
6. 将在对象资源管理器中添加名为“SQLServerCompactEdition[MyComputer\...\sqlmobile]”的新节点。
创建新的订阅
1. 在对象资源管理器中,展开“SQLServerCompact”Edition节点,展开“复制”,右键单击“订阅”,然后选择“新建订阅”。
2. 在简介屏幕上,单击“下一步”。
3. 在“选择发布”屏幕的“发布服务器”下拉列表中,选择“<
查找SQLServer发布服务器…>
4. 在“连接到服务器”对话框中,键入或选择本地计算机名称,然后单击“连接”。
5. 在“选择发布”屏幕的发布列表中,展开“SQLMobile”,选择“SQLMobile”发布,然后单击“下一步”。
6. 在“标识订阅”屏幕上,为订阅名称键入SQLMobile,然后单击“下一步”。
7. 在“Web服务器身份验证”屏幕上,键入前面过程中创建的虚拟目录的URL。
在此演练中,您已经创建了URL为http:
//localhost/SQLMobile的虚拟目录。
8. 单击“订阅服务器将以匿名方式进行连接”,然后单击“下一步”。
9. 在“SQLServer身份验证”屏幕上,单击“下一步”接受默认设置。
10. 在最终屏幕上,该向导将显示示例代码,您可以在应用程序中创建订阅时使用该代码。
选择示例代码(VisualBasic或C#,取决于您在创建应用程序时使用的语言),然后复制代码。
若要执行复制操作,请选择该代码并按Ctrl+C,启动记事本或其他文本编辑器,然后粘贴该示例代码。
在使用下列步骤创建应用程序时,您将使用此代码。
11. 在复制示例代码之后,单击“完成”。
12. 单击“关闭”。
生成应用程序
创建新的智能设备项目
1. 打开VisualStudio2005。
2. 在“文件”菜单上,选择“新建项目”。
3. 在“新建项目”对话框的“项目类型”树中,展开您所使用的开发语言,然后选择“智能设备”。
4. 在模板列表中,选择要创建的项目类型。
对于此演练,请选择“PocketPC2003应用程序”。
5. 为该项目提供名称和位置,然后单击“确定”。
对于此演练,请将该项目命名为SQLMobile。
6. VisualStudio将创建新的项目,并显示Form1,这类似于在智能设备上进行显示。
添加引用
1、在解决方案资源管理器中,右键单击“引用”,然后选择“添加引用”。
如果解决方案资源管理器中没有列出“引用”文件夹,那么单击解决方案资源管理器顶部的“显示所有文件”。
2、在.NET程序集列表中,选择“System.Data.SqlServerCe”,然后单击“确定”。
如果没有列出System.Data.SqlServerCe,请执行下列步骤:
单击“浏览”选项卡。
定位到以下目录:
C:
\ProgramFiles\MicrosoftVisualStudio8\Common7\IDE
选择“System.Data.SqlServerCe.dll”,然后单击“确定”。
解决方案资源管理器中的引用列表现在包括System.Data.SqlServerCe,并且您的项目可以使用该程序集。
3、在解决方案资源管理器中,右键单击“Form1.cs”或“Form1.vb”,然后选择“查看代码”。
4、在窗体的代码顶部,添加指令以使用System.Data.SqlServerCe命名空间:
[C#]
using
System.Data.SqlServerCe;
[VB]
Imports
System.Data.SqlServerCe
添加数据连接
1. 在主窗口中,切换回Form1的“设计”(默认)视图。
2. 从“数据”菜单中,单击“添加新数据源”。
3. 注意如果未显示“添加新数据源”,请选择Form1的“设计”视图,然后再次查看“数据”菜单。
4. 在“选择数据源类型”窗口上,选择“数据库”,然后单击“下一步”。
5. 在“选择您的数据连接”对话框中,单击“新建连接”。
6. 如果显示“添加连接”对话框,请单击“更改”。
7. 在“选择数据源”对话框的“数据源”中,选择“