数据库连接时,在combobox中出现显示ACCESS中所有表名时出现系统表

![图片说明](https://img-ask.csdn.net/upload/201601/13/1452687789_922371.png)图片说明

怎么在显示的时候将这些系统表名去除呢?
我在ACCESS中显示表名的时候,系统表没有显示,但是用C#在combobox中显示所有表名时,尽然把系统表都显示出来了,请问怎么改C#语言

4个回答

 你可以加上一个判断
if (!表名.Contains("~TMP"))
    comboBox1.Items.Add(表名);

这不是系统表,这些都是临时表。

sql语句里面过滤一下。

caohuan95568
caohuan95568 这个语句怎么写呢
接近 4 年之前 回复

图片说明

你可以使用下面的查询语句

SELECT * FROM MSysObjects WHERE Type=1 AND Flags=0

Type=1表示是表,而不视图或者报表等
Flags=0表示常规表,而不是系统表临时表等
另外,在工具->选项里面有个系统表的选项。如果你遇到权限错误,可以参考如何设置Access访问msysobjects系统表权限 ,虽然翻译错误不少,但是应该可以看明白。

caohuan95568
caohuan95568 为什么我的程序中没有type和flags
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!