Overblog Tous les blogs Top blogs Lifestyle
Suivre ce blog Administration + Créer mon blog
MENU

Yet Another Stupid Oracle Blog

Publicité

Top articles

  • LOG ERRORS Oracle 10gR2 : don't rollback just for 1 single exception !

    28 octobre 2011 ( #SQL )

    Die Softwareentwickler mögen Schleife und Cursors über alles, und finden desshalb die unwahrscheinlichsten Rechtfertigungen um die globale DML query zu vermeiden. Unter denen gibt's die Handlung der Fehlerfällen : "Neee, die ganze Anfrage darf nicht Rollbacked...

  • My SQL*Plus Chessboard

    15 janvier 2014 ( #SQL cosmétique )

    Nouvelle année, nouvelles résolutions. La première : coder un échiquier pour jouer sous SQL*Plus. J'ai posté le script complet ici : http://pacmann.over-blog.com/pages/my-sql-plus-chessboard-8844899.html 1) Le modèle de données Le modèle de données est...

  • B-TREE INDEX and key redundancy

    24 janvier 2012 ( #SGBD )

    Hier c'étaient des replays de starcraft 2, une autre fois c'était Jack Bauer, ... Aujourd'hui au réveil, une soudaine envie de jouer avec des index. Un index, c'est une structure arborescente qui, à une clef, potentiellement composite, associe une adresse...

  • SQLDeveloper : casting invisibility spell on my code

    03 juillet 2013 ( #SQL cosmétique )

    Comment est-ce qu'après une journée d'archéologie PL/SQLienne je me suis demandé pourquoi j'ai étudié une proc qui n'est jamais appelée ? 1) Création d'une proc inutile SQL> r ismagic 1 create or replace procedure ismagic 2 IS 3 BEGIN 4 --Etape n°31 5...

  • What are we actually waiting for ?

    18 novembre 2013 ( #SGBD )

    Quand on veut savoir pourquoi une procédure rame, on peut par exemple la tracer. "alter session set events 10046 trace name context forever, level 8" est en ce sens un outil efficace, car il permet de déterminer ce qui a fait attendre l'exécution. C'est...

  • Have a look in the past, as of timestamp.

    01 avril 2012 ( #SQL )

    Ne serait-ce que par esprit de contradiction, le premier avril est le parfait moment pour aborder le sujet le moins drôle de l'univers :voir les données avant modifications, et les comparer aux données présentes ! 0) Un jeu d'essai simple : SQL> CREATE...

  • Aggregating intervals

    29 août 2013 ( #SQL )

    Comment rassembler des intervalles qui se chevauchent ? Dans ma jeunesse, j'ai vu (et proposé) des solutions tirées par les cheveux. Et l'autre jour sur OTN, j'ai trouvé la méthode de FrankKulash particulièrement élégante. Petit article hommage pour lui...

  • Indexing few values using 11g virtual column

    22 octobre 2013 ( #SGBD )

    J'avais lu, il y a très longtemps de cela, une astuce de l'oncle Tom pour indexer uniquement quelques valeurs très sélectives d'une colonne. Typiquement un flag ou statut de traitement. 1) FBI is watching you La vieille méthode avant 11G : CREATE TABLE...

  • Why LNNVL should not be a function

    08 août 2013 ( #SGBD )

    Let's have a look at Laurent Schneider's funny query (that he had already posted on several blogs :)) select * from dual where lnnvl(1=0) and lnnvl(1=0) is null; D - X Does it mean that lnnvl(1=0) is both true and unknown ? Of course not. Actually, it...

  • Playing with my IOT

    30 juillet 2013 ( #SGBD )

    L'autre jour, allez savoir pourquoi, je jouais avec des Index Organized Tables (IOT). Ces créatures ont cela de spécial qu'il n'y a pas de table à proprement parler, ou plutôt que l'index clef primaire contient toutes les données. Cette structure est...

  • Autotrace statistics for PL/SQL

    04 décembre 2013 ( #SGBD )

    L'un des moyens d'étudier l'exécution d'une requête SQL, c'est l'autotrace. L'autotrace s'appuie sur les statistiques mesurées sur la session, pour en sortir un différentiel des grandeurs en question avant / après exécution de la requête. set autot traceonly...

  • NTILE is good for you

    22 janvier 2012 ( #SQL )

    Connaître la répartition des valeurs, c'est la clef pour briller en société et réussir ses projets. Genre vous avez une ressource payante, et un résultat qui sera fonction croissante de la quantité de ressource que vous allouez. Ce qui vous intéresse,...

  • Tricked by NATURAL JOIN, once more

    18 juillet 2013 ( #SQL )

    Un des grands problèmes dans ma vie, c'est ma passion pour le NATURAL FULL OUTER JOIN. Parce qu'il y a plein de mots, c'est full, le côté naturel, les joints et tout ça. Et cette lubie m'a encore piégée hier lorsque je faisais une simple comparaison de...

  • Relational division, with COLLECT

    05 décembre 2013 ( #SQL )

    Pour faire suite à mon article précédent , je vais quand même lâcher une solution viable, spécifique à Oracle : SELECT ville_etp FROM t_entrepot WHERE rayon_ryn IN (SELECT rayon_ryn FROM t_rayon) GROUP BY ville_etp HAVING collect(DISTINCT rayon_ryn) =...

  • column NOT ambiguously defined

    20 septembre 2013 ( #SQL )

    Il y a des fois, on agit avant de penser. Au moment même où je validais ma requête, j'attendais un "ORA-00918: column ambiguously defined". Mais ce n'est pas arrivé. 1) Les données de test Précision : on est en version 10.2.0.4.0 create table testeuh...

  • Wasting your time doubling each quote

    04 juillet 2013 ( #SQL )

    Dans la vie, il y a ceux qui sont géniaux, et ceux qui répètent connement ce que disent les gens géniaux. Je fais partie de la deuxième catégorie... Ayant passé mes 32 dernières années (j'ai commencé le SQL Oracle à la sortie de la maternité) à doubler...

  • Rebuild index does definitely not improve clustering factor

    23 décembre 2011 ( #SGBD )

    A mes débuts dans Oracle, je lisais plein de conneries sur l'optimisation. Parmi les gros mythes, il y avait : "rebuild un index améliore le clustering factor". C'est bien entendu absurde : - Le clustering factor se calcule comme le nombre de changement...

  • DBMS_ORDER_YOUR_LUNCH_REMINDER

    15 août 2013 ( #SGBD )

    - Moi : "Salut, ça te dérange si je crée des JOB sur la base de test ? Ca n'ira jamais en prod" - Mon DBA : "Bah pas de problème, je t'ai attribué le rôle DBA, fais toi plais'. Cela dit, si c'est pour des rapports XXXX, ils sont déjà déposés en automatique...

  • Why REGEXP_LIKE is more than a function

    06 août 2013 ( #SGBD )

    Last week, i was quite confused when i read on a forum that Oracle SQL does not support boolean type. Posted question looked like this : CREATE OR REPLACE FUNCTION test_bool(i number) RETURN boolean AS BEGIN return true; END; Function created. SELECT...

  • Choosing the worse string to rows method

    21 août 2013 ( #SQL )

    L'utilisateur : "Salut, je voudrais un filtre à sélection multiple sur les pays pour mon rapport XYZ... idéalement avec des cases à cocher" Notez que ce n'est pas un rapport XXX, on fait pas ça chez nous. Moi : "Désolé, notre framework est pourri, ça...

  • Bitand relational division

    04 décembre 2013 ( #SQL cosmétique )

    Ma grand-mère me disait toujours, "Pacman, n'oublie jamais le côté artistique du SQL, ni le côté obscur de la force". Et là, force est de constater que depuis un moment, je m'y crois trop : j'ai oublié les valeurs essentielles dans lesquelles mes ancêtres...

  • A little more is_numeric

    01 juillet 2013 ( #SQL )

    De retour sur Oracle après 3 ans dans le monde du pipo, je me refais un peu la main en participant au forum OTN. Et là, sur une question classique "comment vérifier qu'une chaîne de caractères est un nombre sous Oracle ?", je m'aperçois que les intervenants...

  • CONNECT BY SYS_GUID() ??

    10 décembre 2013 ( #SQL )

    Dans l'exemple type des row generators (par exemple ici ), on utilise parfois une construction étrange qui est "CONNECT BY level <= N". C'est certes étrange et abusé, mais ça se conçoit : "connecte moi avec n'importe quoi et récursivement, mais pas plus...

  • String aggregation in Oracle : Emulate GROUP_CONCAT

    14 août 2009 ( #SQL )

    The following article will be written in german. Why ? No reason at all, i just hope that there are german people who are interested in SQL queries... Na dann, los geht's. Das heutige Thema handelt ein rekurrenter Bedürfnis : Wie kann man Strings in einer...

  • Euler Challenge 3: the greatest prime factor

    20 juin 2011 ( #Journal intime )

    Ouais, on revient aux choses sérieuses : EULER CHALLENGE N°3 ! http://projecteuler.net/index.php?section=problems The prime factors of 13195 are 5, 7, 13 and 29. What is the largest prime factor of the number 600851475143 ? DISCLAIMER : J'ai la flemme...

1 2 3 > >>