Delete con inner join en SQL Server

En SQL Server, per a eliminar registres d'una taula seguint un criteri que tingui relació amb una altra taula de la base de dades es pot establir una join entre totes dues taules en la mateixa instrucció SQL de Delete.

Si volem fer un delete de registres utilitzant una join cal  especificar en la primera línia de la sentència la taula en la qual es vol aplicar l'eliminació de registres, i en la següent línia la join de les taules que necessitem, i el criteri indicat amb un where..

TOP 10 Software o o Plataforma de Dades per a Empreses: La classificació de Dataprix

La capacitat de gestionar i analitzar grans volums de dades és essencial per a la competitivitat de qualsevol empresa. El programari de base de dades i les plataformes de dades proporcionen el suport necessari per a integrar, emmagatzemar i processar informació de manera àgil i segura.

En Dataprix hem elaborat nostre TOP 10 de programari o plataforma de dades, una classificació que reuneix les solucions més destacades del mercat en termes de rendiment, escalabilitat, seguretat i integració. Descobreix les 10 eines que estan transformant la gestió de dades en les empreses.

ShrinkDatabase de SQL Server pot produir fragmentació i problemes de rendiment

ShrinkDatabase de SQL ServerEn SQL Server es pot utilitzar l'ordre DBCC SHRINKDATABASE per reduir l'espai ocupat pels arxius de dades i de log. El problema de SHRINKDATABASE és que, al contrari del que pugui semblar, si no s'utilitza be, pot donar com a resultat un important increment en la fragmentació dels índexs, i de les taules, cosa que deriva en un empitjorament del rendiment de la nostra base de dades..

 

Canviar el nom de host (hostname) a Windows XP amb DB2 9.7

En molts casos ocorre que per algun motiu canviem el nom de host en el nostre sistema operatiu, si aquest és el cas ia més comptem amb una instal lació de DB2 09/07 ESE i el sistema operatiu és Windows XP, la forma que la nostra instància DB2 arrencar correctament és:

Suposem que el nom antic és OLDNAME i el nou és NEWNAME..

 

Com Twittejar des d'un procedure d'Oracle PL / SQL

Trucant a l'API de Twitter des procediments emmagatzemats de PL / SQL es poden enviar actualitzacions d'estat a un compte de Twitter. A part del curiós que pugui resultar, pot ser un mètode molt eficaç per a avisar-nos a nosaltres o als nostres usuaris sobre qualsevol esdeveniment que es produeixi a la base de dades.

Podem convertir Twitter fàcilment en un sistema d'alertes addicional per quan tinguem problemes a la nostra base de dades Oracle, o simplement si volem assabentar-nos o informar els altres de manera automàtica sobre la finalització de determinats processos, com ara les càrregues del Data Warehouse corporatiu .

Twitteando desde un procedure de Oracle PL/SQL

Recordem que els comptes de Twitter es poden configurar de manera que estiguin obertes a qualsevol usuari, o es poden protegir perquè només accedeixin els usuaris de Twitter als que s'atorgui permís per a 'seguir'.

DBLink en Oracle 23c: Guia 2026 de configuració amb GLOBAL_NAMES, cloud i seguretat avançada

"Sense saber del tema el fàcil pot semblar difícil"

La creació d'un database link de oracle per apuntar d'una base de dades a una altra en principi és fàcil, més si llegeixes el post de dataprix Accés remot mitjançant dblink d'Oracle . La llàstima és que en aquest post no es digui res dels global_names de cada base de dades i com es reanomena el dblink si els global_names estan actius.

Exemple.

  1. Creem el dblink a una base de dades fictícia rrhh (prèvia configuració tnsnames ...):
    create database link dblinkrrhh connect to rrhh identifier by recursoshumanos USING 'rrhh';
  2. Consultem el seu nom i sorpresa, no es diu dblinkrrhh si no DBLINKRRHH.REGRESS.RDBMS.DEV.US.ORACLE.COM. Ho podem veure amb la següent consulta:
    select * from dba_db_links;

    Ara que?

MySql: Slow queries, controlant les consultes a optimitzar

En MySQL esisteix un paràmetre que habilita el registre de les consultes que triguen més de x segons a executar-se, les anomenades Slow Queries. Bàsicament el que fa és ficar-les en un fitxer de log per després consultar-ho amb mysqldumpslow. Aquest mecanisme ens pot ser útil per millorar el rendiment global de la base de dades si reduïm el valor de forma progressiva per als temps d'execució "no admesos" abans de declarar una consulta com "lenta" o slow query...

 

Mysql: Checklist diari

A continuació deixo un petit post de com muntar un sistema automàtic de notificació via mail que ens indiqui quin és l'estat de la nostra base de dades. Per exemple el podem programar una mica abans de començar la nostra jornada laboral i abans de marxar o mentre estem de vacances (jaja. ..). Aquest exemple és sobre un Mysql 5.X corrent a Debian. Passos que segueix...

 

Oracle10g: Posar la base de dades en mode archivelog i fer backups amb rman

La manera archivelog d'una base de dades Oracle protegeix contra la pèrdua de dades quan es produeix una fallada en el medi físic i és el primer pas per poder fer còpies de seguretat (en calent!!) Amb rman. Per posar la base de dades en mode archivelog (sense utilitzar la flash recovery àrea) hem de fer bàsicament dues coses, afegir dos paràmetres nous al fitxer de configuració, reiniciar la base de dades i canviar la manera treball a archivelog.

Com posar la base de dades Oracle 10g en mode archivelog

  1. Editem el init.ora per afegir els següents paràmetres
    *.log_archive_dest='/ejemplo/backup/'
    *.log_archive_format='SID_%r_%t_%s'
    ......

Clonar una base de dades Oracle.

 

Segur que a tots els que treballeu amb Oracle (o amb Sap i com a base de dades Oracle com és el meu cas), us ha sorgit la necessitat de replicar una base de dades productiva (o d'un entorn de proves), en un altre sistema. En el meu cas, treballant amb Sap, regularment realitzar una còpia de la base de dades real en el sistema de desenvolupament (integració), perquè la proves dels canvis, desenvolupaments o parametritzacions siguin el més completes possibles (i el més fàcils possible de cara a l'usuari si disposa de les dades "reals" més actualitzats)...