首页 > 编程语言 >C# OleDb判断ACCESS中是否存在表

C# OleDb判断ACCESS中是否存在表

时间:2023-07-12 14:12:29浏览次数:27  
标签:useConn schemaTable false OleDb C# 数据库 ACCESS return null

添加引用

 

代码加入引用

 

代码如下

        /// <summary>
        /// 公有数据库连接对象
        /// </summary>
        public OleDbConnection UseConn
        {
            get { return useConn; }
            set { useConn = value; }
        }

        /// <summary>
        /// 指定路径初始化数据库连接对象
        /// </summary>
        /// <param name="sqlPath">数据库路径</param>
        /// <param name="sqlName">数据库名称</param>
        public AccessSQL(string sqlPath, string sqlName)
        {
            useConn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + sqlPath + sqlName + ".mdb");
            OpenSQL();
        }

        /// <summary>
        /// 打开数据库连接
        /// </summary>
        /// <returns>正常打开返回true,异常返回false</returns>
        public bool OpenSQL()
        {
            try
            {
                if (useConn.State == System.Data.ConnectionState.Closed)
                {
                    useConn.Open();
                }
                return true;
            }
            catch (Exception ex)
            {
                MessageBox.Show("连接数据库时发生异常:\r\n\r\n" + ex.Message);
                return false;
            }
        }

        /// <summary>
        /// 判断某个表是否存在
        /// </summary>
        /// <param name="tableName">表名</param>
        /// <returns>存在返回true,不存在返回false</returns>
        public bool IsExitsTables(string tableName)
        {
            DataTable schemaTable = UseConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
            if (schemaTable == null)
            {
                return false;
            }
            else
            {
                for (int r = 0; r < schemaTable.Rows.Count; r++)
                {
                    string colName = schemaTable.Rows[r]["TABLE_NAME"].ToString();
                    if (colName == tableName)
                    {
                        return true;
                    }
                }
                return false;
            }
        }

 

标签:useConn,schemaTable,false,OleDb,C#,数据库,ACCESS,return,null
From: https://www.cnblogs.com/Kirito-Asuna-Yoyi/p/IsAccessExitsTables.html

相关文章

  • springboot 自定义整合caffeine 本地缓存
    1、自定义缓存配置类@Data@ConfigurationProperties(prefix="page.cache")publicclassPageCacheProperties{privateCaffeineConfigPropertiescaffeine=newCaffeineConfigProperties();//本地缓存配置privatePageCacheAsyncExecutorConfigpool=newP......
  • C编译获取预编译中间文件
     方法一:JourneyofaCProgramtoLinuxExecutablein4Stages(thegeekstuff.com)C源码到可执行文件的preprocess/compile/assemble/link四阶段_zh_yt的博客-CSDN博客 使用 -save-temps 选项时打开根目录下的CMakeList文件中加上set(CMAKE_CXX_FLAGS"${CMAKE_CXX......
  • LeetCode 剑指 Offer 12. 矩阵中的路径
    题目链接:LeetCode剑指Offer12.矩阵中的路径题意:给定一个 mxn二维字符网格 board和一个字符串单词 word。如果 word存在于网格中,返回true;否则,返回false。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元......
  • golang channel Synchronization
    在Go语言中,通道(channel)是一个很重要的并发同步机制,可以用来在不同的goroutine之间发送和接收数据。通道实现了一个先进先出(FIFO)的数据结构,所以可以确保数据的接收顺序与发送顺序一致。此外,通道的发送和接收操作都是原子的,这意味着你不需要额外的锁来同步数据访问。这里有几......
  • C源码到可执行文件的preprocess/compile/assemble/link四阶段
     C源码到可执行文件的preprocess/compile/assemble/link四阶段_zh_yt的博客-CSDN博客   C源码到可执行文件的preprocess/compile/assemble/link四阶段参考资料http://www.thegeekstuff.com/2011/10/c-program-to-an-executable/http://courses.cms.caltech.edu/cs11/ma......
  • C++ 数据封装
     所有的C++程序都有以下两个基本要素:程序语句(代码):这是程序中执行动作的部分,它们被称为函数。程序数据:数据是程序的信息,会受到程序函数的影响。封装是面向对象编程中的把数据和操作数据的函数绑定在一起的一个概念,这样能避免受到外界的干扰和误用,从而确保了安全。数据封装......
  • C++ 接口(抽象类)
     接口描述了类的行为和功能,而不需要完成类的特定实现。C++接口是使用抽象类来实现的,抽象类与数据抽象互不混淆,数据抽象是一个把实现细节与相关的数据分离开的概念。如果类中至少有一个函数被声明为纯虚函数,则这个类就是抽象类。https://www.lekaowang.com/cfa/oitt/......
  • BOSHIDA DC电源模块过载保护的原理
    BOSHIDADC电源模块过载保护的原理DC电源模块过载保护的原理是通过电路设计和控制算法来实现的,其基本思想是在系统发生过载时,通过控制电路的工作状态和输出特性,实现对输出电流的限制和保护。具体来说,DC电源模块的过载保护主要包括两个方面:一是电流保护,即控制输出电流的大小和稳......
  • PolarDB-PG TPC-C 测试
    在本节中,我们将学习如何对PolarDB-PG进行TPCC测试,本次实践将基于单机本地存储来运行。TPC-C测试TPC-C是一种衡量OLTP性能的基准测试。TPC-C混合了五种不同类型和复杂程度的并发交易,这五种并发交易又包括了在线执行以及排队延迟执行。TPC-C数据库由九种类型的表组成,以......
  • 松鼠智能AI:为您量身定制的chatgpt智能聊天机器人
    在当今的智能化时代,人工智能技术在各个领域都有着广泛的应用,其中聊天机器人更是得到了大家的热烈欢迎。然而,许多人在与AI聊天时却经常出现一种状况:聊天机器人明明有着强大的智能,却不能真正理解用户的需求,无法解答专业问题,经常给人一种“对牛弹琴”的感觉。为了解决这一问题,你可以尝......