Posso eseguire un'operazione SQLite da Terminal?


3

Quando scarico le transazioni in Quicken Essentials per Mac, la mia banca aggiunge "ACQUISTO DI DEBITO" e altre informazioni indesiderate alle informazioni del beneficiario.

Quicken non ha capacità di trovare e sostituire globalmente.

Ma ho scavato nel file di dati di Quicken e si scopre che tutte le transazioni sono memorizzate in un file SQLite.

Sono stato in grado di aprire questo file con Liya e quindi esegui una query, ad es.

UPDATE ZFIPAYEE SET ZNAME = replace(ZNAME,'DEBIT PURCHASE - ','');

che ha ripulito le mie transazioni.

C'è un modo per eseguire questo tipo di query direttamente da Terminal senza dover aprire Liya e quindi aprire il file?

Risposte:


7

Sì. Puoi usare il /usr/bin/sqlite3 strumento da riga di comando per modificare il database. Viene fornito, di default, con OS X in modo da non dover fare altro che aprire una finestra di Terminale e quindi eseguire:

cd path/to/quicken/storage/directory
sqlite3 <quicken database file>

SQLite version 3.7.13 2012-07-17 17:46:21
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> UPDATE ZFIPAYEE SET ZNAME = replace(ZNAME,'DEBIT PURCHASE - ','');
sqlite> .quit

Puoi fare tutto da una riga di comando come questa se ti piace:

sqlite3 <quicken database file> 'UPDATE ZFIPAYEE SET ZNAME = replace(ZNAME,\'DEBIT PURCHASE - \',\'\');'

Ciò aprirà, modificherà e chiuderà il file del database e restituirà il prompt.

Per ulteriori informazioni sull'utilizzo della riga di comando di SQLite vedi anche: http://www.sqlite.org/sqlite.html


Eccezionale! Ora ... c'è un modo per replace con i caratteri jolly? Voglio anche cancellare tutto il CHECKCARD 1215 riferimenti, dove il 1215 è una data che cambia continuamente. fa replace avere una funzione jolly?
Ze'ev

... o forse potrei semplicemente "tagliare" i primi 14 personaggi in cui like "CHECKCARD ____%" ?
Ze'ev

SQLite supporta quasi l'intera gamma di query SQL, quindi sì, è possibile utilizzare i caratteri jolly con replace. Ti stai cimentando in un argomento che è leggermente fuori dai limiti per Ask Different anche perché non è specifico di Apple. In realtà è una domanda di programmazione.
Ian C.

Quale sito StackExchange suggerisci? Ho cercato i caratteri jolly su Google replace e non è venuto fuori niente di facile.
Ze'ev

1
stackoverflow.com - Non mi citare un carattere jolly e replace anche se. Sono lontano da un esperto di SQL.
Ian C.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.