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); }
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); }
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); }