Categoria: database

Da Laravel 5.7 / PHP 7.4 a Laravel 8 / PHP 8.1: una migrazione senza traumi

Qualche giorno fa ho deciso di impiegare un po’ di tempo per aggiornare un’applicazione Laravel rimasta ferma per anni. L’applicazione girava in produzione con: Il provider di hosting continuava a ricordarmi che PHP 7.4 era ormai fuori supporto e suggeriva il passaggio a PHP 8, suggerimento che era abbastanza inistente da dentro l’interfaccia di amministrazione …

Continua a leggere

DBeaver e MySQL: perché compare l’errore Public Key Retrieval is not allowed?

Mi sono imbattuto in un comportamento piuttosto curioso utilizzando DBeaver con un server MySQL locale. All’avvio di DBeaver, il tentativo di connessione falliva con il messaggio: La cosa sorprendente era che bastava aprire un terminale ed eseguire: Una volta autenticato con il client a riga di comando, tornando in DBeaver la connessione funzionava perfettamente. Il …

Continua a leggere

Having fun with ChatGPT

Ho installato la versione 24.3.1.347 di Oracle SQL Developer però ho una sorpresa: sembra non sia possibile raggruppare le connessioni in cartelle. Risposta: Eh sì — è una sorpresa che ha colpito parecchi utenti anche esperti di SQL Developer!Vediamo bene la situazione 1. In SQL Developer 24.3.1 (e in generale 23.x–24.x) Purtroppo l’interfaccia “Connections” non …

Continua a leggere

Porting di una app Oracle a MySQL

Durante un porting ho incontrato queste differenze che ho dovuto gestire. Function Non può contenere istruzioni DDL (es. CREATE TABLE). Non può nemmeno chiamare una procedura che contene istruzioni DDL. Se si vogliono lanciare istruzioni DDL, utilizzare le procedure, non le function. Procedure Può contenere DDL però mi da’ un fastidioso errore alla dichiarazione di …

Continua a leggere

Driver Java/MySQL per Mirth Connect: dove posizionare le librerie?

Java

Ci sono due directory in cui è possibile depositare archivi JAR (Java Archive) per estendere le funzionalità di Mirth Connect, nel mio caso la libreria che consente di connettersi a MySQL: custom-lib/ e server-lib/database/. Le due directory hanno scopi leggermente differenti e vengono utilizzate per gestire librerie personalizzate o di sistema in maniera modulare: 1. …

Continua a leggere

Port forwarding con Docker

docker network layout

La mappatura delle porte Docker, nota anche come port forwarding , è una tecnica utilizzata per esporre i servizi di rete – che sono in esecuzione all’interno di un contenitore Docker – verso l’host, verso altri contenitori Docker dello stesso host o verso altri host o dispositivi di rete. Il port forwarding consente di mappare una porta specifica …

Continua a leggere

Oracle: update – select

Ovvero come scrivere un’istruzione SQL per aggiornare i campi di una tabella prendendo i valori da un’altra in join. La soluzione è valida per il dialetto di Oracle, con qualche modifica si fa girare per altri RDBMS. Me lo dimentico sempre e ogni volta devo andare a googlare per trovarlo. Basta! Me lo riporto qui …

Continua a leggere

Laravel – primi passi: i Model

Laravel: singola tabella database

Abbiamo visto come intercettare una rotta (URI) e come gestirla con una funzione anonima, utilizzando sia una vista per visualizzare una pagina complessa che un output diretto. Abbiamo poi visto come gestre questa rotta utilizzando un controller, e limitandoci a visualizzare una stringa di benvenuto. Ora ci accingiamo a fare in modo che il controller …

Continua a leggere

Laravel – primi passi: i Controller

Laravel: singola tabella database

Proseguendo con l’invocazione delle rotte con Laravel, facciamo un riassunto: abbiamo visto come invocare l’applicazione usando una rotta. E abbiamo visto come si può usare il metodo statico Route::get() per associare un percorso URI (rotta) ad una funzione anonima. La quale al suo interno può emettere un output semplice (echo) oppure invocare una vista Blade. …

Continua a leggere

Test Laravel

Laravel logo

In questo articolo porto un esempio di test con Laravel. Laravel consente di eseguire due tipi di test: Unit per piccoli test su singole funzioni del controller o del model. Feature per testare intere funzionalità dell’applicativo dalla richesta HTTP alla produzione dell’output. Laravel crea i test in due directory: <APP>/tests/Feature <APP>/test/Unit Per creare un test …

Continua a leggere