Exemplo n.º 1
0
        //====================================================================================================
        // Function for executing queries that return data of a single field
        public object ExecuteScalar(ISqlQueryData queryData)
        {
            ResetConnection();
            if (!queryData.IsUsable)
            {
                return(false);
            }

            using (var command = new SqlCommand(queryData.SqlQuery, conn))
            {
                command.CommandType = queryData.CommandType;
                if (queryData.HasParameters)
                {
                    for (int i = 0; i < queryData.NrOfParameters; i++)
                    {
                        command.Parameters.Add(queryData.SqlParameter.ElementAt(0), queryData.GetNextParameterType());
                        command.Parameters[i].Value = queryData.GetNextParameterValue();
                    }
                }
                conn.Open();
                var result = command.ExecuteScalar();
                conn.Close();
                return(result);
            }
        }
Exemplo n.º 2
0
 //====================================================================================================
 // Function for executing queries that do not return data (e.g. UPDATE, INSERT, DELETE, etc.)
 // returns number of affected rows
 public int ExecuteNonQuery(ISqlQueryData queryData)
 {
     ResetConnection();
     using (var command = new SqlCommand(queryData.SqlQuery, conn))
     {
         command.CommandType = queryData.CommandType;
         if (queryData.HasParameters)
         {
             for (int i = 0; i < queryData.NrOfParameters; i++)
             {
                 command.Parameters.Add(queryData.SqlParameter.ElementAt(0), queryData.GetNextParameterType());
                 command.Parameters[i].Value = queryData.GetNextParameterValue();
             }
         }
         var idParameter = new SqlParameter("@ID", SqlDbType.Int)
         {
             Direction = ParameterDirection.Output
         };
         command.Parameters.Add(idParameter);
         conn.Open();
         int result = command.ExecuteNonQuery();
         conn.Close();
         return(result);
     }
 }
Exemplo n.º 3
0
        //====================================================================================================
        // Function for execution regular SELECT queries that return multiple fields
        public SqlDataReader ExecuteReader(ISqlQueryData queryData)
        {
            ResetConnection();
            using (var command = new SqlCommand(queryData.SqlQuery, conn))
            {
                command.CommandType = queryData.CommandType;
                if (queryData.HasParameters)
                {
                    for (int i = 0; i < queryData.NrOfParameters; i++)
                    {
                        command.Parameters.Add(queryData.SqlParameter.ElementAt(0), queryData.GetNextParameterType());
                        command.Parameters[i].Value = queryData.GetNextParameterValue();
                    }
                }

                conn.Open();

                SqlDataReader reader = command.ExecuteReader(CommandBehavior.CloseConnection);

                return(reader);
            }
        }
Exemplo n.º 4
0
        public int GetSingleValue(ISqlQueryData queryData)
        {
            int result = Int32.Parse(RunQuery.GetInstance.ExecuteScalar(queryData).ToString());

            return(result);
        }
Exemplo n.º 5
0
        public int Create(ISqlQueryData queryData)
        {
            int lastWrittenId = (int)(decimal)RunQuery.GetInstance.ExecuteScalar(queryData);

            return(lastWrittenId);
        }
Exemplo n.º 6
0
        public bool Delete(ISqlQueryData queryData)
        {
            int result = RunQuery.GetInstance.ExecuteNonQuery(queryData);

            return((result >= 1) ? true : false);
        }
Exemplo n.º 7
0
        public SqlDataReader Get(ISqlQueryData queryData)
        {
            SqlDataReader reader = query.ExecuteReader(queryData);

            return((reader.HasRows) ? reader : null);
        }