Come aggiungere una clausola where in un’istruzione MySQL Insert?

Questo non funziona:

INSERT INTO users (username, password) VALUES ("Jack","123") WHERE id='1'; 

Qualche idea su come restringere l’inserimento in una particolare riga tramite id?

In una dichiarazione di inserimento non avresti una riga esistente per fare un where claues su? Stai inserendo una nuova riga, intendevi fare una modifica dell’aggiornamento?

 update users set username='JACK' and password='123' WHERE id='1'; 

Un inserto condizionale da utilizzare tipicamente in uno script MySQL potrebbe essere:

 insert into t1(col1,col2,col3,...) select val1,val2,val3,... from dual where [conditional predicate]; 

Devi usare la tabella fittizia doppia.

In questo esempio, solo la seconda istruzione di inserimento inserirà effettivamente i dati nella tabella:

 create table t1(col1 int); insert into t1(col1) select 1 from dual where 1=0; insert into t1(col1) select 2 from dual where 1=1; select * from t1; +------+ | col1 | +------+ | 2 | +------+ 1 row in set (0.00 sec) 

Per aggiungere semplicemente una clausola WHERE all’interno di un’istruzione INSERT;

 INSERT INTO table_name (column1,column2,column3) SELECT column1, column2, column3 FROM table_name WHERE column1 = 'some_value' 

Prova questo:

 Update users Set username = 'Jack', password='123' Where ID = '1' 

O se stai effettivamente cercando di inserire:

 Insert Into users (id, username, password) VALUES ('1', 'Jack','123'); 

Penso che stai cercando UPDATE e non inserire?

 UPDATE `users` SET `username` = 'Jack', `password` = '123' WHERE `id` = 1 
 INSERT INTO users (id,username, password) VALUES ('1','Jack','123') ON DUPLICATE KEY UPDATE username='Jack',password='123' 

Funzionerà solo se il campo id è univoco / pk (tuttavia non PK composito) Inoltre, questo verrà inserito se non viene trovato alcun id del valore 1 e se non esiste, aggiorna il record con id 1.

 UPDATE users SET username='&username', password='&password' where id='&id' 

Questa query ti chiederà di inserire il nome utente, la password e l’ID in modo dinamico

Per riga vuota come possiamo inserire valori sulla clausola where

Prova questo

 UPDATE table_name SET username="",password="" WHERE id =""