设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1476|回复: 6
打印 上一主题 下一主题

[其它] 判断某MDE中的某表中是否存在着某个字段

[复制链接]
跳转到指定楼层
1#
发表于 2006-7-9 01:15:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  判断某MDE中的某表中是否存在着某个字段,此字段是文本.

谢谢.

[此贴子已经被作者于2006-7-8 17:19:03编辑过]

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2006-7-9 22:30:00 | 只看该作者
在线等.
3#
发表于 2006-7-9 22:49:00 | 只看该作者
下面列子判断test表是否存在A列的字段

Dim Rs As New ADODB.Recordset
Dim Conn As New ADODB.Connection
Set Conn = CurrentProject.Connection

Rs.Open "select * from test", Conn, adOpenDynamic, adLockOptimistic
For I = 0 To Rs.Fields.Count - 1
If Rs.Fields(I).Name = "A列" Then
MsgBox "A列存在"
End If
Next

Set Conn = Nothing
Set Rs = Nothing
4#
 楼主| 发表于 2006-7-10 17:46:00 | 只看该作者
首先谢谢版主.

不知有否更简单的.如一个函数就能解决.
5#
发表于 2006-7-10 17:54:00 | 只看该作者
自己动手改改不久可以了吗?
6#
发表于 2006-7-10 18:08:00 | 只看该作者
Function ExistTableField(strTableName As String, strFieldName As String) As Boolean

'=============================================================================
'用途:检测某表中是否存在某个字段
' strTableName  表示要检测的表名
' strFieldName  表示要检测的字段名
' 用法: If ExistTableField("tblFAQ", "Answer") = True Then
'          MsgBox "Answer已存在tblFAQ表中"
'        end if


'=============================================================================
Dim Rs As New ADODB.Recordset
Dim Conn As New ADODB.Connection
Set Conn = CurrentProject.Connection

Rs.Open "select * from " + strTableName + "", Conn, adOpenDynamic, adLockOptimistic
ExistTableField = False
For I = 0 To Rs.Fields.Count - 1
If Rs.Fields(I).Name = "" + strFieldName + "" Then
ExistTableField = True
End If
Next

Set Conn = Nothing
Set Rs = Nothing

End Function


[此贴子已经被作者于2006-7-10 12:00:41编辑过]

7#
发表于 2006-7-11 01:35:00 | 只看该作者
一般的表设计好后,基本不做动态改动的,因为能改表设计的权限是很大的,危及程序安全.您为什么会有这样的需求呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-3 05:24 , Processed in 0.090875 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表