Foxtable(狐表)用户栏目专家坐堂 → [求助]副本表删除列问题


  共有2570人关注过本帖树形打印复制链接

主题:[求助]副本表删除列问题

帅哥哟,离线,有人找我吗?
307587760
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:134 积分:1037 威望:0 精华:0 注册:2014/12/15 10:51:00
[求助]副本表删除列问题  发帖心情 Post By:2015/7/1 11:17:00 [只看该作者]

请问老师:我在窗口的Table中添加了一张临时表然后作为了副本
现在我需要删除副本表中的某一列,当我用以下代码的时候
if DataTables.DataCols.Contains("删除列") then
DataTables.DataCols.Delete("删除列")
end if
系统提示:只能删除用代码添加的列
我想问问,还能通过什么方式删除我副本表里面的列呢?


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/1 11:22:00 [只看该作者]

 为什么一定要删除?隐藏不行?

 

If Tables("表A").Cols.Contains("第一列") Then
    Tables("表A").DataTable.DataCols.Delete("第一列")
    Tables("表A").cols("第一列").Visible = False
End If


 回到顶部
帅哥哟,离线,有人找我吗?
307587760
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:134 积分:1037 威望:0 精华:0 注册:2014/12/15 10:51:00
  发帖心情 Post By:2015/7/1 11:25:00 [只看该作者]

因为同事做了个全局判断:
如果包含这一列,就不让修改这张表的数据,而且不让改全局代码,
说的可以删除列,隐藏的话,还是不能修改数据,
因为DataTable中还是有这一列的么

 回到顶部
帅哥哟,离线,有人找我吗?
307587760
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:134 积分:1037 威望:0 精华:0 注册:2014/12/15 10:51:00
  发帖心情 Post By:2015/7/1 11:27:00 [只看该作者]

老师,我窗口里的表绑定了临时表,然后作为副本了,像我这种情况,是否只能直接删除临时表中的列了呢?

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/1 11:31:00 [只看该作者]

 你说的临时表,是指动态生成的表么?动态的就可以删除,看2楼代码。

 回到顶部
帅哥哟,离线,有人找我吗?
307587760
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:134 积分:1037 威望:0 精华:0 注册:2014/12/15 10:51:00
  发帖心情 Post By:2015/7/1 11:55:00 [只看该作者]

是用SQL拼接出来的,应该叫临时表呢,还是叫查询表?
代码我用了,提示只能删除用代码添加的列

 回到顶部
帅哥哟,离线,有人找我吗?
y2287958
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4752 积分:34568 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2015/7/1 12:04:00 [只看该作者]

上个例子吧

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/1 12:05:00 [只看该作者]

以下是引用307587760在2015/7/1 11:55:00的发言:
是用SQL拼接出来的,应该叫临时表呢,还是叫查询表?
代码我用了,提示只能删除用代码添加的列

 

如果提示,就是不能删除,只能隐藏。你同事判断是否存在的代码改一下,改成判断是否隐藏即可

 

If Tables("表A").Cols.Contains("第一列") AndAlso Tables("表A").Cols("第一列").Visible = False Then

 

End If


 回到顶部
帅哥哟,离线,有人找我吗?
307587760
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:134 积分:1037 威望:0 精华:0 注册:2014/12/15 10:51:00
  发帖心情 Post By:2015/7/1 18:59:00 [只看该作者]

同事的代码不让改,最终结果是直接把原表中存在的做判断的列删除了
结贴!

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/1 19:12:00 [只看该作者]

 呃,表结构,是不应该乱删除的,特别是数据列。

 回到顶部