Comment Oracle rend-il l'index invalide??
Jan 26, 2022 am 10:25 AMCauses de l'échec de l'index Oracle?: 1. Ne pas utiliser la clause WHERE?; 2. Utiliser "IS NULL" et "IS NOT NULL"?; 3. Utiliser les fonctions dans la clause WHERE?; 4. Utiliser LIKE pour une requête floue?; opération d'inégalité dans la clause WHERE?; 6. Comparez les types de données sans correspondance, etc.
L'environnement d'exploitation de ce tutoriel : système Windows 10, version Oracle 11g, ordinateur Dell G3.
Comment Oracle rend-il les index invalides ?
L'objectif des index Oracle est d'éviter les analyses de tables complètes et d'améliorer l'efficacité des requêtes, mais cela est parfois contre-productif.
Par exemple, s'il y a des millions de données dans une table et qu'un index est ajouté à un certain champ, mais que les performances de la requête ne s'améliorent pas, cela peut être d? à l'échec de l'index Oracle. Les index Oracle ont certaines restrictions. Si vous violez ces restrictions d'index, même si vous avez ajouté un index, Oracle effectuera toujours une analyse complète de la table. Les performances des requêtes ne seront pas améliorées par rapport à l'absence d'index. à la base de données La surcharge du système liée à la maintenance de l'index entra?ne une dégradation des performances. Ce qui suit est un résumé des sept contraintes pouvant entra?ner l'échec des index Oracle.
1. Pas de clause WHERE
2. Utilisez IS NULL et IS NOT NULL
SELECT ... FROM emp WHERE comm IS NULL?; L'index de la colonne comm sera invalide
3. Utilisation de fonctions dans
Si vous n'utilisez pas d'index basés sur des fonctions, l'utilisation de fonctions sur des colonnes indexées dans la clause Where entra?nera l'optimisation de ces index par l'optimiseur. Par exemple?:
select * from staff where trunc(birthdate) = '01-MAY-82';
Mais lorsque la fonction est appliquée à la condition, l'index peut prendre effet. Remplacez l'instruction ci-dessus par l'instruction suivante et vous pouvez effectuer une recherche dans l'index.
select * from staff where birthdate < (to_date('01-MAY-82') + 0.9999);
Remarque?: Oracle utilise toujours des index pour les fonctions MIN, MAX.
4. Utilisez LIKE '%T' pour une requête floue
5. Utilisez l'opération d'inégalité dans la clause WHERE
L'opération d'inégalité comprend?: <>, !=, NOT colum >=?? , NOT colum <= ?
Cette restriction peut être remplacée par OR, par exemple?: colum <> 0 ===> colum>0 OR colum<0
6. Fusionner à l'aide de
SELECT emp_id, emp_m, salary_q ... FROM emp WHERE job='manager' AND deptno>10
job et deptno sont tous deux des index non uniques. Dans cette condition, Oracle ne fusionnera pas les index, il n'utilisera que le premier index.
7. Comparaison de types de données sans correspondance
dept_id est un champ varchar2 Il y a un index sur ce champ, mais l'instruction suivante effectuera une analyse complète de la table.
select * from dept where dept_id = 900198;
En effet, Oracle convertira automatiquement la clause Where en to_number(dept_id)=900198, ce qui équivaut à utiliser une fonction, qui limite l'utilisation des index. La bonne fa?on de l'écrire est la suivante?:
select * from dept where dept_id = '900198';
Tutoriel recommandé?: "Tutoriel vidéo Oracle"
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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Pour désinstaller MySQL en toute sécurité et en toute sécurité et nettoyer tous les fichiers résiduels, suivez les étapes suivantes: 1. Stop MySQL Service; 2. Désinstaller les packages MySQL; 3. Nettoyer des fichiers de configuration et des répertoires de données; 4. Vérifiez que la désinstallation est approfondie.

Oracle n'est pas seulement une entreprise de base de données, mais aussi un leader des systèmes de cloud computing et ERP. 1. Oracle fournit des solutions complètes de la base de données aux services cloud et aux systèmes ERP. 2. OracleCloud défie AWS et Azure, fournissant des services IaaS, PaaS et SaaS. 3. Les systèmes ERP d'Oracle tels que E-BusinessSuite et FusionApplications aident les entreprises à optimiser les opérations.

MongoDB convient aux données non structurées et aux exigences élevées d'évolutivité, tandis qu'Oracle convient aux scénarios qui nécessitent une cohérence stricte des données. 1.MongoDB Stockez de manière flexible les données dans différentes structures, adaptées aux médias sociaux et à l'Internet des objets. 2. Le modèle de données structuré Oracle garantit l'intégrité des données et convient aux transactions financières. 3.MongoDB éclate horizontalement à travers des éclats, et Oracle évolue verticalement à travers RAC. 4.MongoDB a des co?ts de maintenance faibles, tandis qu'Oracle a des co?ts d'entretien élevés mais est entièrement pris en charge.

Résumé du premier paragraphe de l'article: Lors du choix du logiciel pour développer des applications de framework YI, plusieurs facteurs doivent être pris en compte. Bien que les outils de développement d'applications mobiles natifs tels que Xcode et Android Studio puissent offrir un contr?le et une flexibilité solides, les cadres multiplateformes tels que React Native et Flutter deviennent de plus en plus populaires avec les avantages de pouvoir se déployer sur plusieurs plates-formes à la fois. Pour les développeurs nouveaux dans le développement mobile, les plates-formes à faible code ou sans code telles que Appsheet et Glide peuvent créer rapidement et facilement des applications. De plus, les fournisseurs de services cloud tels que AWS Amplify et Firebase fournissent des outils complets

La principale différence entre MySQL et Oracle est les licences, les fonctionnalités et les avantages. 1. Licence: MySQL fournit une licence GPL gratuitement, et Oracle adopte une licence propriétaire, qui est co?teuse. 2. Fonction: MySQL a des fonctions simples et convient aux applications Web et aux petites et moyennes entreprises. Oracle a des fonctions puissantes et convient aux données à grande échelle et aux entreprises complexes. 3. Avantages: MySQL est sans source, adapté aux startups, et Oracle est fiable en performances, adapté aux grandes entreprises.

La différence entre MySQL et Oracle dans les performances et l'évolutivité est: 1. MySQL fonctionne mieux sur des ensembles de données de petite et moyenne taille, adaptés à une mise à l'échelle rapide et à une lecture et à l'écriture efficaces; 2. Oracle a plus d'avantages à gérer de grands ensembles de données et des requêtes complexes, adaptées à la haute disponibilité et à la logique métier complexe. MySQL s'étend à travers les technologies de réplication et de fragment ma?tre-esclave, tandis qu'Oracle atteint la haute disponibilité et l'évolutivité via RAC.

MySQL utilise GPL et des licences commerciales pour les projets petits et open source; Oracle utilise des licences commerciales pour les entreprises qui nécessitent des performances élevées. La licence GPL de MySQL est gratuite et les licences commerciales nécessitent un paiement; Les frais de licence Oracle sont calculés en fonction des processeurs ou des utilisateurs, et le co?t est relativement élevé.

Dans différents scénarios d'application, le choix de MongoDB ou Oracle dépend des besoins spécifiques: 1) Si vous devez traiter une grande quantité de données non structurées et ne pas avoir d'exigences élevées pour la cohérence des données, choisissez MongoDB; 2) Si vous avez besoin de cohérence des données strictes et de requêtes complexes, choisissez Oracle.
