Consulta sobre validación de registro existente en Mysql desde C#

Cerrado
Fernando_1986
Message postés
15
Date d'inscription
sábado, 30 de mayo de 2020
Estatus
Miembro
Última intervención
domingo, 15 de agosto de 2021
- 13 jun 2020 a las 03:21
Buenas noches. Espero que anden bien !. Les consulto a ver si me pueden ayudar. Estoy haciendo un programa donde al presionar el botón de salir, me pregunte primero si quiero salir, si le pongo que si, que verifique desde un textbox (llamado txtfecha) si es viernes, y de ser así, que me haga un resguardo de la base de datos (llamada bd) MySql, la mande por email, que me guarde en una tabla de dicha base la fecha de ese día (la tabla se llama resguardos y contiene solo una columna llamada fechas y es PK) y que finalmente se cierre el programa, y si no es viernes, que solamente salga. Todo eso lo hice bien y anda perfecto, pero no estoy sabiendo hacer algo que es mucho mas simple de todo lo que mencione anteriormente. Cuando salgo por primera vez en el día hace todo el proceso bien, pero si vuelvo a entrar y a salir del programa ya por segunda vez, me tira error porque detecta que en la tabla resguardos ya hay un registro con la fecha del día, lo cual esta perfecto que no me deje hacer todo el proceso nuevamente, pero en vez de darme error, obviamente quisiera que me salga un messagebox diciéndome que ya hay un registro con esa fecha. Básicamente lo que tendría que hacer es antes de generar el resguardo, mandarlo por email y guardar la fecha en la tabla resguardos, seria primero verificar que ya la tabla resguardos no contenga un registro con la fecha que quiere guardar, y de ser así, que me salga un messagebox y listo. Espero haberme explicado. Les adjunto el código completo que utilice y captura de pantalla del error
.
GRACIAS POR TODO !!!!

        private void sALIRToolStripMenuItem_Click(object sender, EventArgs e)
{
string Resguardo = "C:\\Archivos de Sistema\\Resguardo\\Resguardo.sql";
string Enlace_Backup = "server=localhost;PORT=3306;user=root;pdw=;database=bd; Convert Zero Datetime=True;";
using (MySqlConnection ConexionBackup = new MySqlConnection(Enlace_Backup))
{
if (MessageBox.Show("¿ Desea Cerrar el Programa?", "Cerrar Programa", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) using (MySqlCommand comando = new MySqlCommand())
{
if (txtdiaactual.Text == "Friday")
{
string agregar = "insert into resguardos values('" + txtfecha.Text + "')";
{
if (funciones_Resguardos.Nuevo_Resguardo(agregar))
{
using (MySqlBackup Mysqlbackup = new MySqlBackup(comando))
{
comando.Connection = ConexionBackup;
ConexionBackup.Open();
Mysqlbackup.ExportToFile(Resguardo);
ConexionBackup.Close();
MessageBox.Show("Resguardo Realizado Exitosamente en C:/Archivos de Sistema/Resguardo");
txtfecha.Text = hoy.ToShortDateString();
System.Net.Mail.Attachment adjunto = new System.Net.Mail.Attachment("C:\\Archivos de Sistema\\Resguardo\\Resguardo.sql");
System.Net.Mail.MailMessage emailresguardo = new System.Net.Mail.MailMessage();
emailresguardo.To.Add("xxxxxxxxxxxxxxxxx@gmail.com");
emailresguardo.Subject = "Resguardo Base de Datos";
emailresguardo.SubjectEncoding = System.Text.Encoding.UTF8;
emailresguardo.Body = "Resguardo de Base de Datos Sistema de Gestion con fecha " + txtfecha.Text;
emailresguardo.BodyEncoding = System.Text.Encoding.UTF8;
emailresguardo.IsBodyHtml = false;
emailresguardo.Attachments.Add(adjunto);
emailresguardo.From = new System.Net.Mail.MailAddress("xxxxxxxxxxxxxxxxx@gmail.com", "Taller Alberto");

System.Net.Mail.SmtpClient cliente = new System.Net.Mail.SmtpClient();

cliente.Credentials = new System.Net.NetworkCredential("xxxxxxxxxxxxxxxxx@gmail.com", "Password");
cliente.Port = 587;
cliente.EnableSsl = true;

cliente.Host = "smtp.gmail.com";
try
{
cliente.Send(emailresguardo);
MessageBox.Show("Resguardo Enviado por Email Correctamente");
Application.Exit();
}
catch (Exception)
{
MessageBox.Show("Error al Resguardo por Email");
Application.Exit();
}
}
}
else
{
MessageBox.Show("Resguardo ya Generado en el dia de la fecha");
Application.Exit();
}
}
}
else
{
}
}
}
}