Postata in: 'Come modificare una colonna MySql per consentire valori NULL?'

Giorgio Borelli

La sintassi sql corretta per modificare la colonna della tabella MySql e consentire anche l'inserimento di valori NULL è:ALTER TABLE 'MyTable' MODIFY 'MyColumn' varchar(255) NULL;avevi dimenticato ad inserire 'TABLE' dopo 'ALTER' nella query.Se invece vuoi anche che il valore NULL sia quello di default devi scrivere:ALTER TABLE 'MyTable' MOD

Pubblica
06-12-2018 19:04:18 +2

Postata in: 'Come svuotare una tabella MySql?'

Giorgio Borelli

La domanda è un attimo malposta, ci sono comunque due istruzioni sql per svuotare una tabella MySql, se vuoi cancellare tutti i records in essa presenti devi usare il comando 'DELETE' in questo modo:DELETE FROM 'NomeTabella'La particolarità di questa istruzione è che esegue la cancellazione dei records uno per uno (riga per rig

Pubblica
05-12-2018 19:35:38 +1

Postata in: 'Come rinominare un database MySql?'

Giorgio Borelli

Nelle versioni più recenti di MySql non è più possibile cambiare nome ad un database con la vecchia istruzione sql 'RENAME DATABASE'.Per poter rinominare il database sei necessariamente costretto a creare un nuovo database, e successivamente spostare tutte le tabelle dal vecchio al nuovo db. Fortunatamente la sintassi della ist

Pubblica
04-12-2018 19:33:16 +1

Postata in: 'Come rinominare una tabella MySql?'

Giorgio Borelli

Per rinominare una tabella in MySql basta eseguire il comando sql 'RENAME TABLE', la sintassi è davvero semplice, basta scrivere così:RENAME TABLE 'OldTableName' TO 'NewTableName';Il comando RENAME TABLE rinominerà la tabella atomicamente, questo significa che la tabella risulterà bloccata durante l'esecuzione del comand

Pubblica
03-12-2018 19:37:51 +3

Postata in: 'Aggiungere ed aggiornare automaticamente una colonna timestamp in MySql'

Giorgio Borelli

Certo che puoi farlo, in MySql il timestamp rientra tra i tipi specializzati per la gestione del tempo e delle date, e non di rado viene appunto utilizzato per tenere traccia dell'inserimento o modifica di un record come nel tuo caso.Se la tua tabella è già esistente puoi usare ALTER per aggiungere il tuo campo timestamp, in questo mo

Pubblica
13-07-2018 12:17:07 +1

Postata in: 'Qual'è la differenza tra il formato fixed e dynamic di una riga in una tabella MySql'

Giorgio Borelli

Il formato di riga 'fixed' ha una lunghezza fissa che non varia durante le operazioni di DML (Data Manipulation Language), ad es. se definisci per una colonna un tipo CHAR(4) questo occuperà una dimensione fissa di 4byte sempre indipendentemente dalla dimensione del dato inserito/aggiornato. Mentre il formato di riga 'dynamic' è

Pubblica
13-07-2018 11:30:55 +2

Postata in: 'Vedere i permessi (grant) concessi agli utenti MySql'

Giacomo Barrile

Un metodo alternativo all'uso di show grants può essere questo:select * from information_schema.user_privileges where grantee like "'user'%";un grosso vantaggio di questo approccio è che verifica i privilegi (GRANT) assegnati agli utenti di un database MySql indipendentemente dall'host ed inoltre puoi verificare aggiungendo altre cond

Pubblica
13-07-2018 10:51:37 0

Postata in: 'Selezionare una sola riga (record) in modo random su un database MySql'

Giacomo Barrile

Potresti scrivere un qualcosa di simile:SELECT * FROM table WHERE id=CEIL(RAND() * (SELECT COUNT(*) FROM table)));questo presume però che la tua chiave primaria id non preveda salti, ossia sia incrementale e non abbia record cancellati, poichè potrebbe capitarti lo sfortunato caso che ritorni un insieme (riga) vuota.

Pubblica
12-07-2018 12:52:05 0

Postata in: 'Verificare se un indice esiste su un campo di una tabella'

Michele Brughese

L'utente chiede di verificare o mostare l'indice su un determinato campo della sua tabella MySql, quindi sarebbe più opportuno scrivere così:SHOW INDEX FROM tua_tabella WHERE tua_tabella.tua_colonna='nome_colonna';

Pubblica
12-07-2018 12:28:38 0

Postata in: 'Come settare una chiave primaria (primary key) in MongoDB?'

Luciano Gerdone

Come detto da guido in MongoDB puoi specificare un campo come chiave primaria definendo per esso un indice, in questo mododb.users.createIndex( { "user_id": 1 }, { unique: true } )e risultano anche particolarmente performanti.

Pubblica
29-06-2018 13:00:22 +2

Postata in: 'Come settare una chiave primaria (primary key) in MongoDB?'

Guido Sperciani

Beh! Innanzitutto precisiamo che la primary key non la setti a livello di database bensì di tabella, collection in questo caso, ma sono certo che tu intendevi questo.Fatta questa precisazione, bisogna sapere che MongoDB riserva il campo _id come chiave primaria univoca, se tu non la setti, in automatico MongoDB creerà un riferimento u

Pubblica
29-06-2018 12:56:50 +3

Postata in: 'Equivalente operatore like in MongoDB'

Luciano Gerdone

Specificare .* o meno è indifferente, quindi scriveredb.users.find({"name": /.*an.*/})è uguale a scriveredb.users.find({"name": /an/})

Pubblica
29-06-2018 12:42:56 0

Postata in: 'Equivalente operatore like in MongoDB'

Bruno Verzinesi

Sostanzialmente devi usare le espressioni regolari anziché i caratteri wildcard, la sintassi generale èdb.users.find({'name': {'$regex': 'my_text'}})ricordo che nelle regular expression puoi usare anche i caratteri ^ e $ per indicare rispettivamente inizio e fine stringa, ad esempio così ti trova solo i nomi che iniziano per ar

Pubblica
29-06-2018 12:39:38 +2

Postata in: 'Equivalente operatore like in MongoDB'

Guido Sperciani

Devi usaredb.users.find({"name": /.*ar.*/})Nelle espressioni regolari .* equivale al carattere wildcard % ossia fa il matching di qualsiasi carattere (anche più di uno) prima e dopo la stringa 'ar', in questo caso ti troverà tutti i nomi come: sara, mario, carlo e così via, esattamente come sarebbe successo usando l'operatore L

Pubblica
29-06-2018 12:31:46 +1