2013-11-25 114 views
1

我是新来的Windows Azure。我简要地介绍了设置移动服务和下载性别化Android示例应用程序的设置。查看MSDN Channel 9教程并查看Azure文档。Windows Azure - 移动服务 - SQL数据库

如果我使用Windows Azure SQL数据库设置数据库模式,我该如何将它插回到Azure移动服务中(例如:所以我在数据库模型中具有参照完整性,限制列大小等)。我知道,一旦移动服务和数据库是相同的名称,然后Azure移动服务将其选中。

我想在移动设备发布数据到移动服务时准备好SQL数据库。我注意到的是,当我指定SQL数据库表并尝试向其中插入数据时,它失败了。从移动设备传递的数据格式与SQL表格有区别吗?我在哪里可以找到有关正确设置的信息?

SQL表的例子,所以我想对数据的大小有限制,例如下面的firstname,以便它只能保存最多15个字符的条目。

CREATE TABLE Users (

id       BigInt IDENTITY PRIMARY KEY, 
firstname     VarChar(15), 
lastname     VarChar(15) , 
email      VarChar(255), 
age       Int 
); 

因此,当我做一个插入它不会失败(因为它是目前正在做)。 Azure移动服务和SQL数据库设置等文档在哪里?

还是我通过移动服务选项卡做了这一切通过在Azure移动服务表&列 - >移动服务条目 - >数据选项卡 - >表名称 - 列选项卡 - >添加列

添加列仅支持4种数据类型:字符串,数字,日期,布尔值和列名称。

我是否对使用移动服务和SQL表格有所错误?我是否需要使用Azure SQL数据库并只使用移动服务表/列?如果是这样的话,我怎样才能配置Azure表列以保存精确的数据大小,因为限制上面的名字到上面的15个字符,Azure列似乎是通用大小字符串和数字。我看到这种限制的唯一方法是在检查数据的移动服务插入/更新/删除/读取功能中,例如,

如果(名字> 15),那么 //做一些事情:提醒用户名字太长

如果是这样我怎么通过生成脚本创建移动服务表/列项的情况下?

我错过了Windows Mobile Services的一些基本知识,也就是说,表/列与Azure SQL数据库完全分开吗?

回答

3

有一个简单的文章显示如何use an existing Azure SQL table with Windows Azure Mobile Services,也许它可以帮助你。

+0

谢谢@Thiago! – adrnola

+0

单表示例很适合学习,但在现实生活中,通常有多个表格。请记住,移动同步需要隔离所有表,因此在创建本地数据库时不支持参照完整性。这意味着localDB在表描述/ DDL中没有FK约束的概念。所以如果你在localDB中插入一行,它不会检查相关表格的约束。将本地数据库的更改序列化为PUSH操作。插入优化到一个操作后更新一行 - 注意插入 - 同步失败后更新FK。 – codeputer