2015-05-26 10 views
5

Jestem pewien, że jest to dość oczywiste, dla mnie miałoby więcej sensu, gdyby drugi podwójny znak zapytania w tym przykładzie był jeden.Jaka jest różnica między pojedynczym (?) I podwójnym znakiem zapytania (??) w węźle-mysql?

Z ich docs:

Alternatywnie, można użyć ?? znaków jako zastępcze dla identyfikatorów chciałbyś uciekli tak:

var userId = 1; 
var columns = ['username', 'email']; 
var query = connection.query('SELECT ?? FROM ?? WHERE id = ?', [columns, 'users', userId], function(err, results) { 
    // ... 
}); 

console.log(query.sql); // SELECT `username`, `email` FROM `users` WHERE id = 1 
+1

Nie wiem węzeł-mysql, ale patrząc na przykładową instrukcję, wygląda na to, że '' 'jest używane dla identyfikatorów (nazwy tabel, nazwy kolumn), natomiast'? 'Jest używane dla wartości (ciągi, liczby) – knittl

Odpowiedz

10

?? służy do nazw tabel i kolumn, to ucieka im backticks. ? dotyczy wartości zwykłych.

Powiązane problemy