public override bool GetInfoByDb(string connStr, ref DbModels rel)
 {
     using (Helper = new DBStructureHelper(connStr))
     {
         if (Helper.Open())
         {
             OutputText?.Invoke("开始获取数据库信息(" + Helper.Server + (Helper.Port == "-1" ? "" : ":" + Helper.Port) + "  " + Helper.DbName + ")\n", OutputType.Comment);
             Helper.Set_DbHander(SetLen);
             if (Helper.GetTables(out List <string> tempList, out string errorMsg))
             {
                 rel.DbModel = Helper.GetDbInfo();
                 OutputText?.Invoke("\n", OutputType.None);
                 OutputText?.Invoke("\n", OutputType.Comment);
                 return(true);
             }
             else
             {
                 OutputText?.Invoke("获取数据库信息失败:" + errorMsg, OutputType.Comment);
                 return(false);
             }
         }
         else
         {
             OutputText("打开数据库失败(" + Helper.DbName + ")", OutputType.Comment);
             return(false);
         }
     }
 }
 public override bool GetInfoByDb(string connStr, ref DbModels rel)
 {
     rel.Views = new Dictionary <string, ViewInfo>();
     using (Helper = new DBStructureHelper(connStr))
     {
         if (Helper.Open())
         {
             OutputText("开始获取数据库视图结构(" + Helper.Server + (Helper.Port == "-1" ? "" : ":" + Helper.Port) + "  " + Helper.DbName + ")\n", OutputType.Comment);
             Helper.Set_DbHander(SetLen);
             if (Helper.GetViews(out List <string> tempTrig, out string errorMsg))
             {
                 OutputText("  获取到 " + tempTrig.Count + " 个视图\n", OutputType.Comment);
                 foreach (var item in tempTrig)
                 {
                     rel.Views.Add(item, Helper.GetViewInfo(item));
                 }
                 OutputText("\n", OutputType.None);
                 OutputText("\n", OutputType.Comment);
                 return(true);
             }
             else
             {
                 OutputText("获取视图信息失败:" + errorMsg, OutputType.Comment);
                 return(false);
             }
         }
         else
         {
             OutputText("打开数据库失败(" + Helper.DbName + ")", OutputType.Comment);
             return(false);
         }
     }
 }
예제 #3
0
 public override bool GetInfoByDb(string connStr, ref DbModels rel)
 {
     rel.Tables = new Dictionary<string, TableInfo>();
     using (Helper = new DBStructureHelper(connStr))
     {
         if (Helper.Open())
         {
             OutputText?.Invoke("开始获取数据库表结构(" + Helper.Server + (Helper.Port == "-1" ? "" : ":" + Helper.Port) + "  " + Helper.DbName + ")\n", OutputType.Comment);
             Helper.Set_DbHander(SetLen);
             if (Helper.GetTables(out List<string> tempList, out string errorMsg))
             {
                 OutputText?.Invoke("  获取到 " + tempList.Count + " 个表\n", OutputType.Comment);
                 OutputText?.Invoke("...", OutputType.Comment);
                 foreach (string tabName in tempList)
                 {
                     rel.Tables.Add(tabName, Helper.GetTableInfo(tabName));
                 }
                 OutputText?.Invoke("\n", OutputType.None);
                 OutputText?.Invoke("\n", OutputType.Comment);
                 return true;
             }
             else
             {
                 OutputText?.Invoke("获取表信息失败:" + errorMsg, OutputType.Comment);
                 return false;
             }
         }
         else
         {
             OutputText("打开数据库失败(" + Helper.DbName + ")", OutputType.Comment);
             return false;
         }
     }
 }
예제 #4
0
        public override bool GetInfoByDb(string connStr, ref DbModels rel)
        {
            List <Function> tempList;
            string          errorMsg;

            using (Helper = new DBStructureHelper(connStr))
            {
                Helper.Set_DbHander(SetLen);
                if (Helper.Open())
                {
                    OutputText("开始获取数据库函数结构(" + Helper.Server + (Helper.Port == "-1" ? "" : ":" + Helper.Port) + "  " + Helper.DbName + ")\n", OutputType.Comment);
                    bool   tempBool = true;
                    string spName2  = "";
                    if (isFun)
                    {
                        spName2  = "函数";
                        tempBool = Helper.GetFuncs(out tempList, out errorMsg);
                    }
                    else
                    {
                        spName2  = "存储过程";
                        tempBool = Helper.GetProcs(out tempList, out errorMsg);
                    }
                    if (tempBool)
                    {
                        OutputText("  获取到 " + tempList.Count + " 个" + spName2 + "\n", OutputType.Comment);
                        OutputText("...", OutputType.Comment);
                        if (isFun)
                        {
                            rel.Functions = new Dictionary <string, Function>();
                            foreach (var item in tempList)
                            {
                                item.Info = Helper.GetFuncInfo(item.Name);
                                rel.Functions.Add(item.Name, item);
                            }
                        }
                        else
                        {
                            rel.Procs = new Dictionary <string, Function>();
                            foreach (var item in tempList)
                            {
                                item.Info = Helper.GetProcInfo(item.Name);
                                rel.Procs.Add(item.Name, item);
                            }
                        }
                        OutputText("\n", OutputType.None);
                        OutputText("\n", OutputType.Comment);
                        return(true);
                    }
                    else
                    {
                        OutputText("获取" + spName2 + "信息失败:" + errorMsg, OutputType.Comment);
                        return(false);
                    }
                }
                else
                {
                    OutputText("打开数据库失败(" + Helper.DbName + ")", OutputType.Comment);
                    return(false);
                }
            }
        }