En tant que développeur expérimenté, vous connaissez peut-être les abréviations (noms) telles que DDL, DML, DCL et TCL, mais en tant que novice en développement de programmes, vous pourriez avoir beaucoup de confusion. je vous donne une explication détaillée, j'espère qu'elle sera utile aux lecteurs.
1. Langage de définition de données DDL
DDL ((Langage de définition de données) : Les commandes principales sont CREATE, ALTER, DROP, etc. , utilisez Les travaux d'initialisation tels que la définition/modification/suppression de structures de données, de types de données, de liens et de contraintes entre des objets de données (tels que des tables), etc. sont principalement utilisés lors de la création de tables. En d'autres termes, les objets exploités par le langage DDL sont des objets. dans la base de données. Plutôt que les données contenues dans l'objet,
DDL contient les instructions suivantes :
1、CREATE : 在数据库中创建新的数据对象 2、ALTER : 修改数据库中对象的数据结构 3、DROP : 删除数据库中的对象 4、DISABLE/ENABLE TRIGGER : 修改触发器的状态 5、UPDATE STATISTIC : 更新表/视图统计信息 6、TRUNCATE TABLE : 清空表中数据 7、COMMENT : 给数据对象添加注释 8、RENAME : 更改数据对象名称
Remarque :
Lors de l'exécution d'une instruction DDL, avant et après chaque instruction, la base de données (oracle/Mysql) soumettra la transaction en cours. Si l'utilisateur exécute une instruction DDL (telle que create table) après avoir utilisé la commande insert, les données de la commande insert seront soumises à la base de données. l'exécution est terminée, l'instruction DDL sera automatiquement soumise et ne pourra pas être annulée
2. Langage de manipulation de données DML
DML (Data Manipulation Language) : utilisé pour ajouter/supprimer/modifier/interroger/fusionner. la base de données. Les opérations sur les données, telles que SELECT, UPDATE, INSERT, DELETE et MERGE, sont des langages utilisés pour opérer sur les données des tables de la base de données
DML contient les instructions suivantes :
<🎜. >
1、INSERT :将数据插入到表或视图 2、DELETE :从表或视图删除数据 3、SELECT :从表或视图中获取数据 4、UPDATE :更新表或视图中的数据 5、MERGE : 对数据进行合并操作(插入/更新/删除)
Si une commande DML est exécutée sans soumission, elle ne sera pas vue par les autres sessions à moins qu'une commande DDL ou une commande DCL ne soit exécutée après la commande DML, ou que l'utilisateur ne quitte la session, ou termine l'instance, auquel moment le système émettra automatiquement la commande de validation pour soumettre les commandes DML non soumises
DCL (Data Control Language) : est une instruction utilisée pour définir. ou modifier les autorisations de l'utilisateur ou du rôle de la base de données, y compris (accorder, refuser, révoquer, etc.
1、GRANT : 赋予用户某种控制权限 2、REVOKE :取消用户某种控制权限
TCL : utilisé pour gérer les transactions. >TCL contient les instructions suivantes :
Étant donné que des verrous au niveau des lignes sont ajoutés lorsque les instructions DML opèrent sur les données de la table, une fois la confirmation terminée, la commande COMMIT pour mettre fin au traitement de la transaction doit être ajoutée à prendre officiellement effet, sinon les modifications ne seront pas nécessairement écrites dans la base de données. Si vous souhaitez annuler ces opérations, vous pouvez utiliser la commande ROLLBACK pour restaurer. Il est préférable d'estimer la plage d'enregistrement des opérations possibles avant d'exécuter INSERT, DELETE et. Instructions UPDATE. Elle doit être limitée à une plage plus petite, par exemple dix mille enregistrements, sinon ORACLE utilisera un segment d'annulation important pour traiter cette transaction. Le programme répond lentement ou même ne répond plus. S'il y a des centaines de milliers ou plus de ces opérations enregistrées. Ces instructions SQL peuvent être complétées en sections. Ajoutez COMMIT pour confirmer le traitement de la transaction.
1、COMMIT : 保存已完成事务动作结果 2、SAVEPOINT : 保存事务相关数据和状态用以可能的回滚操作 3、ROLLBACK : 恢复事务相关数据至上一次COMMIT操作之后 4、SET TRANSACTION : 设置事务选项
La seule chose qui nécessite une attention particulière est TRUNCATE. Bien qu'elle soit fonctionnellement équivalente à DELETE toutes les données de la table, car elle fonctionne au niveau de la table au lieu de la ligne (lorsque les données de la table ne peuvent pas être supprimées immédiatement pour une raison quelconque, TRUNCATE). verrouillera la table entière, tandis que DELETE verrouille la ligne), il est donc inclus dans DDL.
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!