officeba > 单独文章


在Access2007中使用“多值”实现文字的sum

问题: 在 access 97 - access 2003 的时代,我们依靠掌握关系型数据库的基本范式来完成多值数据库的设计,但是为此我们不得不多写很多代码。

access 97 - access 2003 时代,为了完善数据结构,我们需要建立 2 张表来存储以下结构:
dq           xm
A           张三,李四
B           王五,王六,王七
C           王九


设计表结构
表1:
dq(地区)  ms(描述)
A         沿海城市,人口发达
B         内陆城市,人口疏松
C         边疆城市,外国人多

 

表2:
dq(地区)  xm(姓名)
A         张三
A         李四
B         王五
B         王六
B         王七
C         王九

然后用 VBA 代码进行合并。

回答:

 

 而 access 2007 中我们完全可以使用多值。创建多值的步骤如下:
将表转为设计视图
选定字段
选定“参阅”选卡
更改“显示控件”为组合框
更改“行来源类型”为“值列表”或者“表/查询”
设定行来源,更改“允许多值”为“是”

图片如下:

在Access2007中使用“多值”实现文字的sum

图片如下:

在Access2007中使用“多值”实现文字的sum

图片如下:

在Access2007中使用“多值”实现文字的sum

多了多值字段,SQL 语句也发生了相应的变化,比如:普通字段[A]一旦有了多值属性,那么它会增加一个子字段[A.VALUE]
查询所有的记录,并且每个值占一行:
select [id],[A],[A].[value] from [table name]
查询所有记录,但是多值都合并为一行显示:
select [id],[A] from [table name]
删除整行:
delete from [table name] where [A].[value] = 5
删除多值字段的其中某个字段
delete [A].[value] from [table name] where [A].[value] = 5
 


声明:欢迎各大网站转载本站文章,还请保留一条能直接指向本站的超级链接,谢谢!

时间:2008-04-06 08:51:11,点击:65824


【OfficeBa论坛】:阅读本文时遇到了什么问题,可以到论坛进行交流!Excel专家邮件:342327115@qq.com(大家在Excel使用中遇到什么问题,可以咨询此邮箱)。

【声明】:以上文章或资料除注明为Office自创或编辑整理外,均为各方收集或网友推荐所得。其中摘录的内容以共享、研究为目的,不存在任何商业考虑。如有任何异议,请与本站联系,本站确认后将立即撤下。谢谢您的支持与理解!


相关评论

我要评论

评论内容