Beispiel #1
0
        public static IDatabase GetDatabase(EnumDatabaseType sTypeConnection, string sConnectionString)
        {
            IDatabase oReturnDatabase = null;

            switch (sTypeConnection)
            {
            case EnumDatabaseType.SqlServer:
                oReturnDatabase = new DatabaseSqlServer(sConnectionString);
                break;

            case EnumDatabaseType.Oracle:
                oReturnDatabase = new DatabaseOracle(sConnectionString);
                break;

            case EnumDatabaseType.MySQL:
                oReturnDatabase = new DatabaseMySQL(sConnectionString);
                break;

            case EnumDatabaseType.SQLite:
                oReturnDatabase = new DatabaseSQLite(sConnectionString);
                break;

            default:
                oReturnDatabase = null;
                break;
            }

            return(oReturnDatabase);
        }
 public static DBHelper GetDBHelper(EnumDatabaseType databaseType = EnumDatabaseType.SqlFile)
 {
     if (helper == null)
     {
         helper = new DBHelper(databaseType);
     }
     return(helper);
 }
 /// <summary>
 /// Realiza consulta no banco de dados com apenas a querie passada por parametro e banco de dados selecionado.
 /// Neste caso não será necessário passar alguns parametros, pois eles receberam os seguintes valores: Parametros=null, CommandTimeout=140, CommandType=Text
 /// </summary>
 /// <param name="stringConnection">String de conexão</param>
 /// <param name="commandText">Querie a ser executada</param>
 /// <param name="enumDatabaseType">Tipo de banco de dados que será realizada a consulta</param>
 /// <param name="commandTimeout">Define o time out do comando a ser executado.</param>
 public CommandSql(string stringConnection, string commandText, EnumDatabaseType enumDatabaseType, int commandTimeout = 140)
 {
     this._stringConnection = stringConnection;
     this._commandText      = commandText;
     this._parametros       = null;
     this._commandType      = CommandType.Text;
     this._commandTimeout   = commandTimeout;
     this._enumDatabaseType = enumDatabaseType;
 }
 /// <summary>
 /// Realiza consulta no banco de dados com apenas os seguintes parametros: querie, parametros e enumDatabaseType.
 /// Neste caso os parametros internos recebem os seguintes valores: CommandTimeout=140, CommandType=Text
 /// </summary>
 /// <param name="stringConnection">String de conexão</param>
 /// <param name="commandText">Querie a ser executada</param>
 /// <param name="parametros">Parametros que foram adicionados a querie</param>
 /// <param name="enumDatabaseType">Tipo de banco de dados que será realizada a consulta</param>
 public CommandSql(string stringConnection, string commandText, List <DbParameter> parametros, EnumDatabaseType enumDatabaseType)
 {
     this._stringConnection = stringConnection;
     this._commandText      = commandText;
     this._parametros       = parametros;
     this._commandType      = CommandType.Text;
     this._commandTimeout   = 140;
     this._enumDatabaseType = enumDatabaseType;
 }
Beispiel #5
0
 /// <summary>
 /// 返回数据访问类实例
 /// </summary>
 /// <param name="connectionString">连接字符串</param>
 /// <param name="databaseType">数据库类型,默认值为EnumDatabaseType.SQLServer</param>
 /// <returns>IDataAccess实例</returns>
 public static IDataAccess CreateInstance(string connectionString, EnumDatabaseType databaseType = EnumDatabaseType.SQLServer)
 {
     switch (databaseType)
     {
         case EnumDatabaseType.SQLServer:
             return new SqlDataAccess(connectionString);
         default:
             return null;
     }
 }
        private void cb_db_Type_SelectedIndexChanged(object sender, EventArgs e)
        {
            ConnectString = AES.GetDecryptConnectString(CommonConfigurationManager.GetAppConfig("ConnectString"));
            string[] sqlStrArray = null;
            if (ConnectString != null && ConnectString.Contains(";"))
            {
                sqlStrArray = ConnectString.Split(';');
            }
            if (cb_db_Type.Text == cb_db_Type.Items[0].ToString())
            {
                tlp_SQL_File.Visible   = false;
                tlp_SQL_Server.Visible = true;
                DatabaseType           = EnumDatabaseType.SqlServer;
                if (sqlStrArray != null && sqlStrArray.All(str => !str.Contains("AttachDbFilename")))
                {
                    string serverName = sqlStrArray.Where(cs => cs.Contains("Data Source")).FirstOrDefault();
                    if (serverName != null)
                    {
                        serverName    = serverName.Substring(serverName.IndexOf('=') + 1);
                        tx_db_IP.Text = serverName.Trim();
                    }
                }
            }
            else
            {
                tlp_SQL_File.Visible   = true;
                tlp_SQL_Server.Visible = false;
                DatabaseType           = EnumDatabaseType.SqlFile;
                if (sqlStrArray != null)
                {
                    string filePath = sqlStrArray.Where(cs => cs.Contains("AttachDbFilename")).FirstOrDefault();
                    if (filePath != null)
                    {
                        filePath            = filePath.Substring(filePath.IndexOf('=') + 1);
                        tx_db_FilePath.Text = filePath.Trim();
                    }
                }
            }
            if (sqlStrArray != null)
            {
                string userId = sqlStrArray.Where(cs => cs.Contains("User ID")).FirstOrDefault();
                if (userId != null)
                {
                    userId = userId.Substring(userId.IndexOf('=') + 1);
                    tx_db_UserName.Text = userId.Trim();
                }

                string password = sqlStrArray.Where(cs => cs.Contains("Password")).FirstOrDefault();
                if (password != null)
                {
                    password            = password.Substring(password.IndexOf('=') + 1);
                    tx_db_Password.Text = password.Trim();
                }
            }
        }
        public static IDataAccess CreateDataAccess(EnumDatabaseType dbType, string connStr)
        {
            switch (dbType)
            {
            case EnumDatabaseType.SqlServer: return(new SqlServerDAL(connStr));

            case EnumDatabaseType.Oracle: return(new OracleDAL(connStr));

            default:
                throw new Exception("不支持的类型!");
            }
        }
        private DBHelper(EnumDatabaseType databaseType)
        {
            switch (databaseType)
            {
            case EnumDatabaseType.SqlFile:
                connector = new SqlServerConnector();
                break;

            case EnumDatabaseType.SqlServer:
                connector = new SqlServerConnector();
                break;
            }
        }
Beispiel #9
0
 /// <summary>
 /// 登录验证
 /// </summary>
 /// <param name="connStr">连接字符串</param>
 /// <param name="dbType">数据库类型</param>
 /// <returns></returns>
 public bool CheckLogin(string connStr, EnumDatabaseType dbType)
 {
     IDataAccess dataAccess = DataAccessFactory.CreateInstance(connStr, dbType);
     try
     {
         object result = dataAccess.ExecuteScalar("SELECT 1");
         if (result != null && (Convert.ToInt32(result) == 1))
         {
             return true;
         }
         return false;
     }
     catch (Exception)
     {
         return false;
     }
 }
Beispiel #10
0
        public static AbstractDatabase CreateDatabase(EnumDatabaseType enumDatabaseType, string stringDeConexao)
        {
            Type database = null;

            if (enumDatabaseType == EnumDatabaseType.SqlServer)
            {
                database = typeof(SqlServer);
            }
            else if (enumDatabaseType == EnumDatabaseType.MySql)
            {
                database = typeof(MySql);
            }
            else if (enumDatabaseType == EnumDatabaseType.Firebird)
            {
                database = typeof(Firebird);
            }

            try
            {
                // Obtém o construtor
                ConstructorInfo constructor = database.GetConstructor(new Type[] { });

                // Invova o construtor para retornar a instancia
                AbstractDatabase createdObject = (AbstractDatabase)constructor.Invoke(null);

                // Inicializa a propriedade ConnectionString para o banco de dados.
                createdObject.connectionString = stringDeConexao;

                // Retorna a intância com um banco de dados
                return(createdObject);
            }
            catch (Exception excep)
            {
                throw new Exception("Erro ao instanciar o banco de dados. " + excep.Message);
            }
        }
Beispiel #11
0
 public DataAccessService(EnumDatabaseType config)
 {
     _config = config;
 }
Beispiel #12
0
 public BasicDALImpl()
 {
     _tableName    = typeof(T).Name;
     _connStr      = ConfigurationManager.ConnectionStrings["CommonStr"].ToString();
     _dataBaseType = EnumDatabaseType.Oracle;
 }
Beispiel #13
0
 public DatabaseLog(string applicationName, string connectionString, EnumDatabaseType enumDatabaseType)
 {
     _connectionString = connectionString;
     _applicationName  = applicationName;
     _enumDatabaseType = enumDatabaseType;
 }