none
Comment créer un trigger pour une table précise dans SQL Server via le code C# RRS feed

  • Question

  • Bonjour à tous.

    Je développe une application en WPF dans laquelle l'utilisateur se connecte à sa base de données locale et sélectionne les tables dans lesquelles les triggers doivent être créé.

    Voici mon code pour créer le trigger mais il ne fonctionne pas

    private void createTrigger_Click(object sender, RoutedEventArgs e)
            {
                string connectionDatabase = "Server=" + MainWindow.apbsServerMain.ServerName + ";User Id=" + MainWindow.apbsServerMain.ServerUsername + ";Password=" + MainWindow.apbsServerMain.ServerPassword + ";";
                using (SqlConnection connection = new System.Data.SqlClient.SqlConnection(connectionDatabase))
                {
                    connection.Open();
                    using (SqlCommand cmd = new SqlCommand())
                    {
                        try
                        {
                            cmd.Connection = connection;
                            cmd.CommandType = System.Data.CommandType.Text;
                            SqlTransaction transaction = connection.BeginTransaction();
                            foreach (string item in listViewTest.Items)
                            {
                                MessageBox.Show(item);
                                cmd.CommandText = "USE" + MainWindow.apbsServerMain.ServerDatabase;
                                cmd.ExecuteNonQuery();
                                cmd.CommandText = "CREATE TRIGGER " + item + "Inserted ON " + item + " FOR INSERT AS BEGIN SELECT * FROM  " + item + "; END";
                                cmd.ExecuteNonQuery();
                            }
                        }
                        catch (Exception)
                        {
    
                        }
                    }
                }
            }

    Si quelqu'un pourrais m'aider ça serais vraiment la bienvenue.

    Merci d'avance.

    lundi 16 mai 2016 16:47

Réponses

  • Bonjour, Nelson Nokimi,


    Dans la variable connectionDatabase qui contient la chaîne de connection, il faudra ajouter Initial Catalog
    (source : Syntaxe de chaîne de connexion , partie Connexions SQL Server).
    Je vous remercie par avance de votre retour.

    Cordialement,
    Teodora


    Votez! Appel à la contribution TechNet Community Support. LE CONTENU EST FOURNI "TEL QUEL" SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. S'il vous plaît n'oubliez pas de "Marquer comme réponse" les réponses qui ont résolu votre problème. C'est une voie commune pour reconnaître ceux qui vous ont aidé, et rend plus facile pour les autres visiteurs de trouver plus tard la résolution.

    mardi 17 mai 2016 12:29
    Modérateur