Ejemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="databaseName">
        /// In access ,this para is not used ever
        /// Like SSCE ,Recommend use this base method with( no parameter)</param>
        /// <returns></returns>
        public override List <string> GetTableListInDatabase(string databaseName)
        {
            List <string>  jieguo = new List <string>();
            EfzDataAdapter reader = null;

            string        cmdStr = string.Empty;
            EfzConnection myConn = (EfzConnection)baseConn;

            using (EfzCommand cmd = new EfzCommand(cmdStr, myConn))
            {
                cmd.CommandTimeout = 10;
                try
                {
                    DataTable userTables;

                    userTables = myConn.GetSchema("Tables", new string[] { null, null, null, "TABLE" });
                    Debug.WriteLine("Table count " + userTables.Rows.Count);
                    for (int i = 0; i < userTables.Rows.Count; i++)
                    {
                        jieguo.Add(userTables.Rows[i]["Table_Name"].ToString());
                        Debug.WriteLine(userTables.Rows[i]["Table_Name"].ToString());
                    }
                }
                catch (Exception ee)
                {
                    GlobalDefine.SP.LastErrorMsg = ee.Message;
#if DEBUG
                    Debug.WriteLine(ee.Message);
                    Debug.WriteLine(ee.StackTrace);
                    throw ee;
#else
                    GlobalDefine.SP.LastErrorMsg = ee.Message;
#endif
                }
                finally
                {
                    if (reader != null)
                    {
                        reader.Dispose();
                    }
                }
            }

            return(jieguo);
        }