新命令文本所返回数据的架构与主查询的架构不同
2013-05-27 14:13
375 查看
测试
在vs2008中,给数据集添加select查询时经常出现提示:新命令文本所返回数据的架构与主查询的架构不同。
究其原因是新添加的select查询和主查询中的字段不同所引起的,这边不同包括字段数目、名字(别名)等因素。下边分情形进行测试:
1).都不使用别名,新查询字段数目少于主查询字段数目
主查询:Select Id,Name,Age FROM Student
新查询:Select Id,Name FROM Student
测试结果:vs有提示;少了的字段仍会显示出来,但值为空;主查询一更新,新查询的字段会自动更新成和主查询相同。
2).都不使用别名,新查询字段数目多于主查询字段数目
主查询:Select Id,Name,Age FROM Student
新查询:Select Id,Name,Age,Remarks FROM Student
测试结果:vs有提示;多了的字段能正常显示,有值;字段随主查询更新。
3).都不使用别名,新查询字段数目等于主查询字段数目
主查询:Select Id,Name,Age FROM Student
新查询:Select Id,Name,Age FROM Student
测试结果:vs无提示,一切均正常。
4).都使用别名,新查询字段数目少于主查询字段数目
主查询:Select Id as 编号,Name as 姓名,Age as 年龄 FROM Student
新查询:Select Id as 编号,Name as 姓名 FROM Student
测试结果:vs有提示;少了的字段仍会显示出来,但值为空;字段不随主查询更新。
5).都使用别名,新查询字段数目多于主查询字段数目
主查询:Select Id as 编号,Name as 姓名,Age as 年龄 FROM Student
新查询:Select Id as 编号,Name as 姓名,Age as 年龄,Remarks as 备注 FROM Student
测试结果:vs有提示;多了的字段能正常显示,有值;字段随主查询更新。
6).都使用别名,新查询字段数目等于主查询字段数目
主查询:Select Id as 编号,Name as 姓名,Age as 年龄 FROM Student
新查询:Select Id as 编号,Name as 姓名,Age as 年龄 FROM Student
测试结果:vs无提示,一切均正常。
7).主查询不使用别名,新查询使用别名,字段数目查等
主查询:Select Id,Name,Age FROM Student
新查询:Select Id as 编号,Name as 姓名,Age as 年龄 FROM Student
测试结果:vs有提示;别名都当新字段显示,有值,但原字段值为空;主查询一更新,新查询的字段全部字段丢失(本例结果就丢失了)或自动更新成和主查询相同(新查询只有一个字段使用别名)。
8).主查询使用别名,新查询不使用别名,字段数目查等
主查询:Select Id as 编号,Name as 姓名,Age as 年龄 FROM Student
新查询:Select Id,Name,Age FROM Student
测试结果:vs有提示;原有字段都当新字段显示,有值,但别名字段值为空;主查询一更新,新查询的字段全部字段丢失。
测试结果分析
当新查询字段的数目、名称(别名)和主查询不一致时,vs都会弹出提示:新命令文本所返回数据的架构与主查询的架构不同。当主查询更新时,新查询的字段可能会自动更新成和主查询相同。
在vs2008中,给数据集添加select查询时经常出现提示:新命令文本所返回数据的架构与主查询的架构不同。
究其原因是新添加的select查询和主查询中的字段不同所引起的,这边不同包括字段数目、名字(别名)等因素。下边分情形进行测试:
1).都不使用别名,新查询字段数目少于主查询字段数目
主查询:Select Id,Name,Age FROM Student
新查询:Select Id,Name FROM Student
测试结果:vs有提示;少了的字段仍会显示出来,但值为空;主查询一更新,新查询的字段会自动更新成和主查询相同。
2).都不使用别名,新查询字段数目多于主查询字段数目
主查询:Select Id,Name,Age FROM Student
新查询:Select Id,Name,Age,Remarks FROM Student
测试结果:vs有提示;多了的字段能正常显示,有值;字段随主查询更新。
3).都不使用别名,新查询字段数目等于主查询字段数目
主查询:Select Id,Name,Age FROM Student
新查询:Select Id,Name,Age FROM Student
测试结果:vs无提示,一切均正常。
4).都使用别名,新查询字段数目少于主查询字段数目
主查询:Select Id as 编号,Name as 姓名,Age as 年龄 FROM Student
新查询:Select Id as 编号,Name as 姓名 FROM Student
测试结果:vs有提示;少了的字段仍会显示出来,但值为空;字段不随主查询更新。
5).都使用别名,新查询字段数目多于主查询字段数目
主查询:Select Id as 编号,Name as 姓名,Age as 年龄 FROM Student
新查询:Select Id as 编号,Name as 姓名,Age as 年龄,Remarks as 备注 FROM Student
测试结果:vs有提示;多了的字段能正常显示,有值;字段随主查询更新。
6).都使用别名,新查询字段数目等于主查询字段数目
主查询:Select Id as 编号,Name as 姓名,Age as 年龄 FROM Student
新查询:Select Id as 编号,Name as 姓名,Age as 年龄 FROM Student
测试结果:vs无提示,一切均正常。
7).主查询不使用别名,新查询使用别名,字段数目查等
主查询:Select Id,Name,Age FROM Student
新查询:Select Id as 编号,Name as 姓名,Age as 年龄 FROM Student
测试结果:vs有提示;别名都当新字段显示,有值,但原字段值为空;主查询一更新,新查询的字段全部字段丢失(本例结果就丢失了)或自动更新成和主查询相同(新查询只有一个字段使用别名)。
8).主查询使用别名,新查询不使用别名,字段数目查等
主查询:Select Id as 编号,Name as 姓名,Age as 年龄 FROM Student
新查询:Select Id,Name,Age FROM Student
测试结果:vs有提示;原有字段都当新字段显示,有值,但别名字段值为空;主查询一更新,新查询的字段全部字段丢失。
测试结果分析
当新查询字段的数目、名称(别名)和主查询不一致时,vs都会弹出提示:新命令文本所返回数据的架构与主查询的架构不同。当主查询更新时,新查询的字段可能会自动更新成和主查询相同。
相关文章推荐
- 数据集(xsd)添加查询提示:新命令文本所返回数据的架构与主查询的架构不同
- Thinkphp框架下对某个字段查询数据的时候进行唯一过滤,返回唯一不同的值
- 和SQL内连接不同,SQL外连接返回到查询结果集合中的不仅包含符合连接条件的行,而且还包括左表(左外连接时)、右表(右外连接时)或两个边接表(全外连接)中的所有数据行,下面就为您详细介绍SQL外连接,
- php查询mysql中的数据,并将结果返回为JSON格式,提取JSON中的数据,写入页面不同的id号中
- orcale不同版本数据导入、导出及库版本查询
- Json返回查询的数据,前台ajax获取
- 分组查询 综合点号不同时间相同时间的数据!
- SqlServer和Oracle从多行记录(数据集)中查询结果并拼接成一个字符串的SQL语句(纵表数据转成拼接的文本)
- json返回hibernate的结果会自动调用(get)查询出关联表的数据,解决方法
- Jquery easyui的翻页无效,一直都是第一页的数据 (会显示第二页的数据 但很快有再次查询返回第一页)
- Xqk.Data数据框架开发指南:丰富的、灵活的查询方法(第二部分:适应不同数据库系统的查询)
- C++文本查询程序 定义类管理数据 用引用共享数据 不用智能指针 C++Primer练习12.27
- C++文本查询程序 定义类管理数据 用智能指针 C++Primer练习12.30
- C++文本查询程序 定义类管理数据 用智能指针 用StrBlob代替vector<string> C++Primer 练习12.32
- sql 不同表格不同数据的前几行查询
- oracle不同版本间数据的导入导出/oracle IMP 命令详解
- 内容提供者查询数据cursor与框架返回数据集合的兼容
- 数据库两表联合查询表不同数据
- springMVC+mybatis查询数据,返回resultType=”map”时,如果数据为空的字段,则该字段省略不显示的解决方案
- Mybatis 查询int类型数据,返回记录条数为0时报错问题解决