示例#1
0
        /// <summary>
        /// Same, but only one parameter
        /// </summary>
        /// <param name="query"></param>
        /// <param name="parameter"></param>
        public void Query(string query, MySqlParameter parameter)
        {
            MySqlParameters parameters = new MySqlParameters();

            parameters.AddParameter(parameter);
            Query(query, parameters);
        }
示例#2
0
        /// <summary>
        /// Implement INSERT, UPDATE or DELETE query
        /// </summary>
        /// <param name="query">Your SQL query</param>
        public void Query(string query, MySqlParameters parameters)
        {
            using (var mysqlConn = new MySqlConnection())
            {
                if (query.Contains("SELECT"))
                {
                    throw new Exception("WRONG TYPE OF SQL QUERY, NEED INSERT / UPDATE / DELETE");
                }
                lock (threadLock)
                {
                    mysqlConn.ConnectionString = mysqlCSB.ConnectionString;
                    mysqlConn.Open();
                    MySqlCommand com = new MySqlCommand(@query, mysqlConn);


                    foreach (var param in parameters)
                    {
                        com.Parameters.Add(param);
                    }


                    MySqlDataReader dataReader = com.ExecuteReader();
                    dataReader.Read();
                    dataReader.Close();
                }
            }
        }
示例#3
0
        /// <summary>
        /// Same, but only one parameter
        /// </summary>

        public List <string> SelectQuery(string query, MySqlParameter parameter)
        {
            MySqlParameters parameters = new MySqlParameters();

            parameters.AddParameter(parameter);
            return(SelectQuery(query, parameters));
        }
示例#4
0
        public void UpdateFavor()
        {
            using (DBClient client = new DBClient())
            {
                string myStringIsBigIsVeryVeryBig = "";
                for (int i = 0; i < favoritSources.Count; ++i)
                {
                    myStringIsBigIsVeryVeryBig += favoritSources[i] + ";";
                }
                MySqlParameters mysql_params = new MySqlParameters();
                mysql_params.AddParameter("favor", myStringIsBigIsVeryVeryBig);
                mysql_params.AddParameter("login", User.Name);

                client.Query("UPDATE users SET favorites_source = @favor WHERE login=@login", mysql_params);
            }
        }
示例#5
0
        /// <summary>
        /// Select information from DB
        /// </summary>
        /// <param name="query">Your SELECT query</param>
        /// <param name="parameters">All parameters</param>
        /// <returns>list of selected information</returns>

        public List <string> SelectQuery(string query, MySqlParameters parameters)
        {
            using (var mysqlConn = new MySqlConnection())
            {
                mysqlConn.ConnectionString = mysqlCSB.ConnectionString;

                mysqlConn.Open();

                if (query.Contains("INSERT INTO"))
                {
                    throw new Exception("WRONG TYPE OF SQL QUERY, NEED SELECT");
                }
                List <string> result = new List <string>();


                MySqlCommand com = new MySqlCommand(@query, mysqlConn);

                foreach (var param in parameters)
                {
                    com.Parameters.Add(param);
                }


                using (var dataReader = com.ExecuteReader())
                {
                    while (dataReader.Read())
                    {
                        try
                        {
                            for (int i = 0; i < dataReader.FieldCount; ++i)
                            {
                                result.Add(dataReader.GetString(i));
                            }
                        }
                        catch (System.Data.SqlTypes.SqlNullValueException)
                        {
                            dataReader.Close();
                            return(result);
                        }
                    }

                    dataReader.Close();

                    return(result);
                }
            }
        }
示例#6
0
        public static bool Registration(string login, string password, string email)
        {
            using (DBClient mysql_client = new DBClient())
            {
                string query = @"SELECT login FROM users WHERE login = @login;";

                if (mysql_client.SelectQuery(query, new MySqlParameter("login", login.ToLower())).Count > 0)
                {
                    return(false);
                }
                else
                {
                    MySqlParameters mysql_params = new MySqlParameters();

                    mysql_params.AddParameter(new MySqlParameter("login", login.ToLower()));
                    mysql_params.AddParameter(new MySqlParameter("password", MD5Hashing.GetMd5Hash(password)));
                    mysql_params.AddParameter(new MySqlParameter("email", email));
                    mysql_client.Query("INSERT INTO users (login, password, email) VALUES (@login, @password, @email)", mysql_params);
                    return(true);
                }
            }
        }