2011-01-18 4 views
0

Cette instruction SQL Je vérifie et il fonctionne:SQL pas mettre à jour la base de données

MISE À JOUR faxcomplete SET DATE = curdate() OÙ DATE = '0000-00-00'

Quand je exécuter le code, il ne met pas à jour la base de données. Je suis un débutant et je ne sais pas comment vérifier si quelque chose ne va pas:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using MySql.Data.MySqlClient; 

namespace ConsoleApplication1 
{ 
    class Program 
    { 
    static void Main(string[] args) 
    { 
     string MyConString = "SERVER=localhost;" + 
          "DATABASE=webboard;" + 
          "UID=root;" + 
          "PASSWORD='';"; 
     MySqlConnection connection = new MySqlConnection(MyConString); 
     MySqlCommand command = connection.CreateCommand(); 
     MySqlDataReader Reader; 
     command.CommandText = "UPDATE `faxcomplete` SET `DATE`= curdate() WHERE `DATE`='0000-00-00'"; 
    } 
    } 

}

+1

Il est mal formaté. C'est une chose qui ne va pas. – Nishant

+6

avez-vous besoin d'exécuter le sql? – ajreal

+0

Quelle est exactement l'erreur que vous obtenez? –

Répondre

4

Essayez d'appeler ExecuteNonQuery sur votre commande.

1

bien une chose que j'ai remarquée est que vous n'exécutez pas la commande ou ne la liez pas à la connexion. J'ai tendance à utiliser quelque chose comme

using (SqlConnection connection = new SqlConnection(connectionString)) 
    { 
     using (SqlCommand command = new SqlCommand("name", connection)) 
     { 
      command.CommandText = "UPDATE `faxcomplete` SET `DATE`= curdate() WHERE `DATE`='0000-00-00'"; 
      command.ExecuteNonQuery(); 
     } 
    } 
+0

Vous venez de vous apercevoir que vous utilisez MySqlConnection etc, vous ne savez pas si cela fait une différence ou non? – Manatherin

3

Exécuter SQL:

command.ExecuteNonQuery();

Vous devez également fermer la connexion une fois que vous avez terminé.

connexion.Fermer();

Vous n'avez pas besoin de la ligne

MySqlDataReader lecteur;

Questions connexes