示例#1
0
        public static void updateFile(ArchivoClass c)
        {
            MySqlConnection  conexion = null;
            MySqlTransaction myTrans  = null;

            try {
                conexion = getConnection();
                conexion.Open();

                myTrans = conexion.BeginTransaction();

                MySqlCommand comando = new MySqlCommand("UPDATE Archivo set nombre=@nombre, rutaPrograma=@ruta, img = @img where id=@idArchivo", conexion);
                comando.Parameters.AddWithValue("@nombre", c.nombre);
                comando.Parameters.AddWithValue("@ruta", c.rutaPrograma);
                comando.Parameters.AddWithValue("@img", c.img);
                comando.Parameters.AddWithValue("@idArchivo", c.id);
                comando.ExecuteNonQuery();

                myTrans.Commit();
            } catch (MySqlException e) {
                if (myTrans != null)
                {
                    myTrans.Rollback();
                }
                Console.WriteLine("No se ha podido cambiar el nombre del archivo:\n" + e);
                throw e;
            } finally {
                if (conexion != null)
                {
                    conexion.Close();
                }
            }
        }
示例#2
0
        public static void deleteFile(ArchivoClass a)
        {
            MySqlConnection conexion = null;

            try {
                conexion = getConnection();
                conexion.Open();

                MySqlCommand comando = new MySqlCommand("DELETE FROM Archivo where id=@id", conexion);
                comando.Parameters.AddWithValue("@id", a.id);
                comando.ExecuteNonQuery();

                comando.Parameters.Clear();
                comando = new MySqlCommand("UPDATE Carpeta set numArchivos=numArchivos-1 where id=@idCarpeta", conexion);
                comando.Parameters.AddWithValue("@idCarpeta", a.idCarpeta);
                comando.ExecuteNonQuery();
            } catch (MySqlException e) {
                Console.WriteLine("No se ha podido borrar la carpeta \n" + e);
                throw e;
            } finally {
                if (conexion != null)
                {
                    conexion.Close();
                }
            }
        }
示例#3
0
        public static void saveFile(ArchivoClass ac)
        {
            MySqlConnection  conexion = null;
            MySqlTransaction myTrans  = null;

            try {
                conexion = getConnection();
                conexion.Open();

                myTrans = conexion.BeginTransaction();

                MySqlCommand comando = new MySqlCommand("SELECT id FROM Archivo WHERE rutaPrograma=@ruta and fk_Carpeta=@idCarpeta", conexion);
                comando.Parameters.AddWithValue("@ruta", ac.rutaPrograma);
                comando.Parameters.AddWithValue("@idCarpeta", ac.idCarpeta);
                MySqlDataReader reader = comando.ExecuteReader();
                if (!reader.HasRows)
                {
                    comando.Parameters.Clear();
                    reader.Close();

                    comando             = new MySqlCommand("INSERT INTO Archivo VALUES (null, @nombre, @ruta, @rutaPrograma, @img, @idCarpeta)", conexion);
                    comando.Transaction = myTrans;
                    comando.Parameters.AddWithValue("@nombre", ac.nombre);
                    comando.Parameters.AddWithValue("@ruta", ac.rutaSistema);
                    comando.Parameters.AddWithValue("@rutaPrograma", ac.rutaPrograma);
                    comando.Parameters.AddWithValue("@img", ac.img);
                    comando.Parameters.AddWithValue("@idCarpeta", ac.idCarpeta);
                    comando.ExecuteNonQuery();
                    myTrans.Commit();

                    comando.Parameters.Clear();
                    comando = new MySqlCommand("UPDATE Carpeta set numArchivos=numArchivos+1 where id=@idCarpeta", conexion);
                    comando.Parameters.AddWithValue("@idCarpeta", ac.idCarpeta);
                    comando.ExecuteNonQuery();

                    comando.Parameters.Clear();
                    comando = new MySqlCommand("SELECT id FROM Archivo where rutaPrograma=@ruta and fk_Carpeta=@idCarpeta", conexion);
                    comando.Parameters.AddWithValue("@ruta", ac.rutaPrograma);
                    comando.Parameters.AddWithValue("@idCarpeta", ac.idCarpeta);
                    reader = comando.ExecuteReader();
                    if (!reader.HasRows)
                    {
                        reader.Read();
                        Int32 id = (Int32)reader["id"];
                        ac.id = id;
                        reader.Close();
                        comando.Parameters.Clear();
                    }
                }
            } catch (MySqlException e) {
                Console.WriteLine("No se ha podido añadir " + ac.nombre);
                Console.WriteLine("Archivo " + e);
                throw e;
            } finally {
                if (conexion != null)
                {
                    conexion.Close();
                }
            }
        }
示例#4
0
        public static List <ArchivoClass> loadFiles(long idCarpeta)
        {
            List <ArchivoClass> archivos = new List <ArchivoClass>();
            MySqlConnection     conexion = null;

            try {
                conexion = getConnection();
                conexion.Open();

                MySqlTransaction myTrans = conexion.BeginTransaction();

                MySqlCommand comando = new MySqlCommand("SELECT a.id as id,a.nombre as nombre,a.rutaSistema as rutaSistema,a.rutaPrograma as rutaPrograma, a.img as img " +
                                                        "FROM Archivo a, Carpeta c WHERE c.id=a.fk_Carpeta and c.id=@fkCarpeta", conexion);
                comando.Parameters.AddWithValue("@fkCarpeta", idCarpeta);
                MySqlDataReader reader = comando.ExecuteReader();

                if (reader.HasRows)
                {
                    while (reader.Read())
                    {
                        Int32 idArchivo = (Int32)reader["id"];
                        ICollection <string> generos = new List <string>();
                        ArchivoClass         archivo = new ArchivoClass((long)idArchivo, reader["nombre"].ToString(), reader["rutaSistema"].ToString(), reader["rutaPrograma"].ToString(), reader["img"].ToString(), idCarpeta);
                        archivos.Add(archivo);
                    }
                    reader.Close();
                    conexion.Close();
                    return(archivos);
                }
            } catch (MySqlException e) {
                Console.WriteLine("Boton  \n" + e);
            } finally {
                if (conexion != null)
                {
                    conexion.Close();
                }
            }
            return(null);
        }