В общем, цитируйте все строки и цифры без кавычек. Однако ваш SQL будет ломаться, если в строке есть одинарные кавычки, поэтому избегайте одинарных кавычек, удваивая их.
SELECT * FROM superuser WHERE poop = 'johnny''s' -- note how the string [johnny's] have double quotes
С другой стороны, цитирование чисел в SQL - это плохо. Хотя SQL неявно пытается преобразовать эти значения, это может привести к нежелательным результатам. Скажем, у вас есть тип CHAR, и вы вводите его без кавычек 1
вместо кавычек '1'
, вы получите символ в 1-й позиции кодировки вместо фактического символа «1».