2010-10-19 35 views
0

J'ai créé une table: INDEX_SIZE_TRACKING avec les attributs suivants:Je veux écrire un statistiques d'index PL/script SQL pour interroger les données et mettre à jour les entrées de suivi

  • Nom Index: nom de l'index. Tapez: VARCHAR (255). C'est la clé primaire de la table.

  • Espace alloué: l'espace mémoire (en octets) alloué à l'index. Type: NUMÉRO

  • Espace utilisé: l'espace mémoire utilisé par l'index. Type: NUMBER

  • Dernière mise à jour: l'heure à laquelle les détails de l'index sont mis à jour dans cette table. Type: VARCHAR (255)

Je veux écrire un script PL/SQL pour interroger les données statistiques d'index et mise à jour de suivi entrées dans la table de INDEX_SIZE_TRACKING. S'il n'existe aucune entrée pour l'index , créez-en une nouvelle; sinon, mettez à jour l'existant. Puis-je avoir une instruction PL/SQL qui peut le faire dans Oracle XE? Merci d'avance! :-)

Répondre

0

Oracle limite les noms d'identifiants à 30 caractères, n'est-ce pas? VARCHAR (255) semble un choix inhabituel. Je suis assez sûr que le paquet dbms_space a ce dont vous avez besoin pour obtenir l'espace alloué et utilisé.

La dernière mise à jour va être une date. Pourquoi diable utiliseriez-vous VARCHAR (255) pour cela?