|
主题:[建议]数据库的小问题 [收藏主题] |
上次问了个嵌套查询数据类型不对的问题,最后我找到了原因: KS_Article表中的SpecialID字段数据类型为"文本". 但是KS_Special中的SpecialID为"自动编号". 所以如果用到了KS_Article.SpecialID 等于KS_Special.SpecialID就会出现数据类型不正确的问题. 也许你认为,只要加个引号不就可以了么?像这样: KS_Article.SpecialID='某个专题的SpecialID' 但是如果用嵌套查询,结果返回很多个SpecialID就行不通了,就会出现数据类型错误.例如: select * from KS_Article where SpecialID in (select SpecialID where FolderID='20071809384091') (提取属于某个栏目的专题下的所有文章) 就会出现数据类型错误 因为子查询返回的是一个由很多数值类型的数字组成的数组,像这样: 返回:(7,8,9,15,18) 我们不能把数组的每个元素都加上引号. 做不到:('7','8','9','15','18') 所以如果大家需要做类似于这样的功能的话,就可以把KS_Article中的"SpecialID"字段类型改成"数值型"(给新手:在access中打开数据库,右键单击KS_Article,选择"设计视图",找到"SpecialID"字段,在"数据类型"栏里重新选择即可.) [此贴子已经被作者于2007-12-15 11:12:22编辑过] |
|
支持(0) | 反对(0) 顶端 底部 |
<上一主题 | 下一主题 > |