Exemple #1
0
        public sealed override void Open(string connectionString)
        {
            if (string.IsNullOrEmpty(connectionString))
            {
                throw new Exception("Invalid connection string");
            }
            try
            {
                if (IsOpened)
                {
                    return;
                }

                baseConn = new MySqlConnection(connectionString);
                baseConn.Open();
                invalidator = new InvalidatorForMySql();
            }
            catch (MySqlException ee)
            {
                throw ee;
            }
        }
Exemple #2
0
        public sealed override void Open(BaseLoginInfo pInfo)
        {
            //Record to base class (Vital)
            baseLoginInfo = pInfo;

            LoginInfo_MySql         myInfo  = pInfo as LoginInfo_MySql;
            LoginInfo_ForAllDbTypes allInfo = pInfo as LoginInfo_ForAllDbTypes;

            if ((myInfo == null) && (allInfo == null))
            {
                throw new ArgumentException("Only Support MySql login info and AllDBTypes Info");
            }

            if (IsOpened)
            {
                return;
            }

            try
            {
                string myConnString = string.Empty;
                if (allInfo != null)
                {
                    myInfo          = new LoginInfo_MySql();
                    myInfo.Database = allInfo.Database;
                    myInfo.Pwd      = allInfo.Pwd;
                    myInfo.Server   = allInfo.Server;
                    myInfo.Username = allInfo.Username;
                    myInfo.Port     = allInfo.Port;
                }

                myConnString = DbConnectionString.MySql.GetMySqlConnectionString(
                    myInfo.Server,
                    myInfo.Username,
                    myInfo.Pwd,
                    myInfo.Port,
                    myInfo.Database,
                    myInfo.ConnectionTimeOut,
                    50,
                    myInfo.IsPolling
                    );

                baseConn = new MySqlConnection(myConnString);
                baseConn.Open();

                Debug.WriteLine("Connection Timeout is " + baseConn.ConnectionTimeout);

                invalidator = new InvalidatorForMySql();
                //Set Current Opened Database
                base.CurDatabase = myInfo.Database;
                base.CurPwd      = myInfo.Pwd;

                if (string.IsNullOrEmpty(myInfo.Database))
                {
                    DoExecuteNonQuery("use mysql;");
                }
                else
                {
                    DoExecuteNonQuery("use " + myInfo.Database + ";");
                }
            }
            catch (Exception ee)
            {
                throw ee;
            }
        }