Maison  >  Article  >  base de données  >  Comment modifier les valeurs des colonnes dans la base de données Oracle

Comment modifier les valeurs des colonnes dans la base de données Oracle

PHPz
PHPzoriginal
2023-04-04 09:01:263220parcourir

La base de données Oracle est l'un des systèmes de gestion de bases de données relationnelles les plus couramment utilisés au monde. Lors de l'exploitation et de la maintenance de la base de données Oracle, il est souvent nécessaire de modifier les colonnes du tableau pour répondre aux besoins de la logique métier. Cet article présentera en détail comment modifier les valeurs des colonnes dans la base de données Oracle pour référence des lecteurs.

1. Utilisez l'instruction UPDATE pour modifier les valeurs des colonnes

L'instruction UPDATE est l'un des moyens les plus couramment utilisés pour modifier les données dans la base de données Oracle. L'instruction UPDATE peut facilement modifier les valeurs des colonnes dans la table. La syntaxe de base est la suivante :

UPDATE nom_table
SET colonne1 = valeur1, colonne2 = valeur2,...
condition WHERE ;

Parmi eux, nom_table représente le nom de la table qui doit être modifiée ; etc. représentent les noms de colonnes qui doivent être modifiés ; value1 , value2, etc. indiquent la valeur qui doit être modifiée ; la condition indique la condition de modification des données ;

Ce qui suit est un exemple. Supposons que nous devions changer le poste dans l'enregistrement avec le nom de l'employé « Zhang San » dans le tableau de « Programmeur » en « Ingénieur logiciel ».

UPDATE Employee_table
SET position = 'Software Engineer'
WHERE name = 'Zhang San';

2. Utilisez des blocs d'instructions PL/SQL pour modifier les valeurs des colonnes

En plus d'utiliser les instructions UPDATE, nous pouvons également utiliser PL/ Blocs d'instructions SQL pour implémenter les modifications de table Modification des valeurs des colonnes. PL/SQL est un langage de processus dédié aux bases de données Oracle. Sa syntaxe est similaire à d'autres langages de programmation et peut être utilisé pour écrire des procédures stockées, des déclencheurs, des fonctions, etc.

Ce qui suit est un exemple. Supposons que nous devions augmenter tous les salaires de la table des employés de 500 yuans. Nous pouvons utiliser le bloc d'instructions PL/SQL suivant pour y parvenir :

DECLARE
v_increase_salary NUMBER(10,2) := 500;
BEGIN
FOR emp IN (SELECT * FROM employe_table)
LOOP

UPDATE employee_table
SET salary = emp.salary + v_increase_salary
WHERE id = emp.id;

END LOOP;
COMMIT;
END;

Dans l'exemple ci-dessus, nous définissons d'abord une variable v_increase_salary pour stocker la valeur du salaire qui doit être augmenté. Ensuite, utilisez une boucle FOR pour parcourir tous les enregistrements des employés et augmenter leur valeur salariale de 500 yuans via l'instruction UPDATE. Enfin, soumettez les résultats de la modification via l'instruction COMMIT.

3. Utilisez TRIGGER pour modifier les valeurs des colonnes

TRIGGER est un objet très couramment utilisé dans la base de données Oracle et peut être utilisé pour effectuer automatiquement des opérations spécifiques. En créant TRIGGER sur la table, nous pouvons effectuer automatiquement les opérations associées lorsque des opérations sur les données se produisent, comme la modification des valeurs des colonnes. La méthode de fonctionnement spécifique est la suivante :

CREATE OR REPLACE TRIGGER trigger_name
AFTER INSERT OR UPDATE OR DELETE
ON table_name
FOR EACH ROW
BEGIN
-- trigger_body
-- Modifier la valeur de la colonne spécifiée dans la table et autres opérations
END;

Parmi eux, table_name représente le nom de la table où TRIGGER doit être créé ; trigger_name représente le nom de TRIGGER, qui ne doit pas entrer en conflit avec d'autres noms d'objet ; AFTER INSERT OR UPDATE OR DELETE représente que TRIGGER est déclenché ; lors de l'exécution d'opérations INSERT, UPDATE ou DELETE ; FOR EACH ROW représente la paire. Chaque ligne d'enregistrements effectue une opération séparément ; trigger_body indique l'opération spécifique qui doit être effectuée lors du déclenchement de TRIGGER.

Ce qui suit est un exemple. Supposons que nous devions ajouter un déclencheur à la table des employés afin que lorsque le salaire d'une personne est modifié, la valeur du salaire avant modification soit enregistrée dans la table de l'historique des salaires des employés. Vous pouvez utiliser l'instruction SQL suivante. crée le DÉCLENCHEUR correspondant :

CRÉER OU REPLACER LE DÉCLENCHEUR trg_save_salary
APRÈS LA MISE À JOUR SUR employé_table
POUR CHAQUE LIGNE
BEGIN
INSÉRER DANS salaire_history_table(emp_id, old_salary, new_salary, update_date)
VALUES(:OLD.id, :OLD .salary , : NEW.salary, SYSDATE);
END;

Dans l'exemple ci-dessus, nous avons créé un TRIGGER nommé trg_save_salary, qui sera déclenché lorsqu'une opération UPDATE se produit dans la table employe_table. Grâce à l'instruction INSERT INTO, nous enregistrons le salaire avant modification dans la table salaire_history_table et enregistrons ensemble d'autres informations connexes (numéro d'employé, ancienne valeur du salaire, nouvelle valeur du salaire, date de modification).

Résumé :

La base de données Oracle est l'un des systèmes de gestion de bases de données relationnelles les plus couramment utilisés au monde. En maîtrisant l'utilisation des instructions UPDATE, des blocs d'instructions PL/SQL et de TRIGGER, vous pouvez modifier les valeurs des colonnes​​dans les tableaux. et répondre aux besoins des entreprises. Dans les applications réelles, différentes méthodes de modification doivent être sélectionnées en fonction de différents scénarios commerciaux pour obtenir des effets d'exploitation et de maintenance optimaux.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn