Exemple #1
0
        public static RelationalDatabase Database(ConnectionType connectionType, string ConnectString)
        {
            RelationalDatabase database = null;

            //连接数据库
            switch (connectionType)
            {
            case ConnectionType.SQLSERVER:
                database = new MsSqlServer();
                break;

            case ConnectionType.IBMDB2:
                database = new IbmDb2();
                break;

            case ConnectionType.MSACCESS:
                database = new MsAccess();
                break;

            case ConnectionType.ORACLE:
                database = new Oracle();
                break;

            default:
                break;
            }
            //初始化数据库连接
            if (database != null)
            {
                database.Initialize(ConnectString);
            }
            else
            {
                throw new Exception("初始化数据库时没有成功,连接失败");
            }
            return(database);
        }
Exemple #2
0
        public static RelationalDatabase Database(int ybjklx)
        {
            string    constr = "";
            string    ssql   = "select * from jc_ybjklx where ybjklx=" + ybjklx + " ";
            DataTable tb     = InstanceForm.BDatabase.GetDataTable(ssql);

            if (tb.Rows.Count == 0)
            {
                throw new Exception("没有该接口类型");
            }
            if (Convertor.IsNull(tb.Rows[0]["servername"], "") == "")
            {
                throw new Exception("没有设置医保数据库服务器名");
            }
            string servername = Convertor.IsNull(tb.Rows[0]["servername"], "");
            string username   = Convertor.IsNull(tb.Rows[0]["username"], "");
            string password   = Convertor.IsNull(tb.Rows[0]["password"], "");
            string portname   = Convertor.IsNull(tb.Rows[0]["portname"], "");
            string dbname     = Convertor.IsNull(tb.Rows[0]["dbname"], "");
            int    dbtype     = Convert.ToInt32((tb.Rows[0]["dbtype"]));

            if (dbtype == 1)
            {
                constr = @"packet size=4096;user id=" + username + ";password="******";data source=" + servername + ";persist security info=True;initial catalog=" + dbname;
            }
            else if (dbtype == 3)
            {
                constr = @"Provider=OraOLEDB.Oracle;Data Source=" + servername + ";User Id=" + username + ";Password="******"";
            }
            else
            {
                constr = "";
            }

            RelationalDatabase database = null;

            //连接数据库
            if (dbtype == 1)
            {
                database = new MsSqlServer();
            }
            if (dbtype == 2)
            {
                database = new IbmDb2();
            }
            if (dbtype == 3)
            {
                database = new Oracle();
            }
            if (dbtype == 4)
            {
                database = new MsAccess();
            }

            //初始化数据库连接
            if (database != null)
            {
                database.Initialize(constr);
            }
            else
            {
                throw new Exception("初始化医保数据库时没有成功,连接失败");
            }
            return(database);
        }
Exemple #3
0
        private static int RunFromCommandLine(string[] args)
        {
            var handle = NativeMethods.GetConsoleWindow();

            if (handle == IntPtr.Zero)
            {
                NativeMethods.AllocConsole();
            }
            else
            {
                NativeMethods.ShowWindow(handle, 5);
            }

            string          objects;
            Profile         template       = ParseCommandLineArguments(args, out objects);
            IDatabasePlugin databasePlugin = null;

            ShowTitle();

            if (template.DatabaseType == DatabaseTypes.Unknown)
            {
                Console.WriteLine(@"You must select a database type with the ""sql-plugin="" switch!");
                Console.WriteLine(@"    sql-plugin=SqlServer");
                Console.WriteLine(@"    sql-plugin=MySql");
                Console.WriteLine(@"    sql-plugin=Sqlite");
                Console.WriteLine(@"    sql-plugin=MsAccess");

                return(101);
            }

            if (template.DatabaseType == DatabaseTypes.SqlServer)
            {
                databasePlugin = new SqlServer
                {
                    DatabaseName              = template.SqlServerDatabaseName,
                    DatabasePort              = template.SqlServerPort,
                    DatabaseServer            = template.SqlServerServerName,
                    OutputDirectory           = template.OutputFolder,
                    Password                  = template.SqlServerPassword,
                    TrustedConnection         = template.SqlServerTrustedConnection,
                    UserName                  = template.SqlServerUserName,
                    Objects                   = objects,
                    DefaultSchema             = template.SqlServerDefaultSchema,
                    IncludeComments           = template.IncludeComments,
                    ProgressBar               = null,
                    DataNamespaceName         = template.DataNameSpace,
                    BusinessNamespaceName     = template.BusinessNameSpace,
                    AutoRightTrimStrings      = template.AutomaticallyRightTrimData,
                    HasCustomConnectionString = template.SqlServerUseCustomConnectionString,
                    CustomConnectionString    = template.SqlServerCustomConnectionString,
                    HasDynamicDataRetrieval   = template.EnableDynamicDataRetrieval,
                    AllowSerialization        = template.AllowSerialization,
                    PluralizationTemplate     = template.PluralizationTemplate,
                    Language                  = template.Language
                };
            }

            if (template.DatabaseType == DatabaseTypes.MySql)
            {
                databasePlugin = new DatabasePlugins.MySql
                {
                    DatabaseName              = template.MySqlDatabaseName,
                    DatabasePort              = template.MySqlPort,
                    DatabaseServer            = template.MySqlServerName,
                    OutputDirectory           = template.OutputFolder,
                    Password                  = template.MySqlPassword,
                    UserName                  = template.MySqlUserName,
                    Objects                   = objects,
                    IncludeComments           = template.IncludeComments,
                    ProgressBar               = null,
                    DataNamespaceName         = template.DataNameSpace,
                    BusinessNamespaceName     = template.BusinessNameSpace,
                    AutoRightTrimStrings      = template.AutomaticallyRightTrimData,
                    HasCustomConnectionString = template.SqlServerUseCustomConnectionString,
                    CustomConnectionString    = template.SqlServerCustomConnectionString,
                    HasDynamicDataRetrieval   = template.EnableDynamicDataRetrieval,
                    AllowSerialization        = template.AllowSerialization,
                    PluralizationTemplate     = template.PluralizationTemplate,
                    Language                  = template.Language
                };
            }

            if (template.DatabaseType == DatabaseTypes.Sqlite)
            {
                databasePlugin = new Sqlite
                {
                    DatabaseName              = template.SqliteFileName,
                    OutputDirectory           = template.OutputFolder,
                    Password                  = template.SqlitePassword,
                    Objects                   = objects,
                    IncludeComments           = template.IncludeComments,
                    ProgressBar               = null,
                    DataNamespaceName         = template.DataNameSpace,
                    BusinessNamespaceName     = template.BusinessNameSpace,
                    AutoRightTrimStrings      = template.AutomaticallyRightTrimData,
                    HasCustomConnectionString = template.SqlServerUseCustomConnectionString,
                    CustomConnectionString    = template.SqlServerCustomConnectionString,
                    HasDynamicDataRetrieval   = template.EnableDynamicDataRetrieval,
                    AllowSerialization        = template.AllowSerialization,
                    PluralizationTemplate     = template.PluralizationTemplate,
                    Language                  = template.Language
                };
            }

            if (template.DatabaseType == DatabaseTypes.MsAccess)
            {
                databasePlugin = new MsAccess
                {
                    DatabaseName              = template.AccessFileName,
                    OutputDirectory           = template.OutputFolder,
                    Password                  = template.AccessPassword,
                    Objects                   = objects,
                    IncludeComments           = template.IncludeComments,
                    ProgressBar               = null,
                    DataNamespaceName         = template.DataNameSpace,
                    BusinessNamespaceName     = template.BusinessNameSpace,
                    AutoRightTrimStrings      = template.AutomaticallyRightTrimData,
                    HasCustomConnectionString = template.SqlServerUseCustomConnectionString,
                    CustomConnectionString    = template.SqlServerCustomConnectionString,
                    HasDynamicDataRetrieval   = template.EnableDynamicDataRetrieval,
                    AllowSerialization        = template.AllowSerialization,
                    PluralizationTemplate     = template.PluralizationTemplate,
                    Language                  = template.Language
                };
            }

            try
            {
                if (databasePlugin != null)
                {
                    databasePlugin.CreateLayers();
                }
            }
            catch
            {
                return(1);
            }

            return(0);
        }