sql >> Database >  >> RDS >> Mysql

hoe string aanwezig in databasekolom te controleren?

Je tekenreeksaaneenschakeling is in de war, het zou moeten zijn:(verder vereenvoudigd )

$selDoc="SELECT * FROM documents WHERE 'U".$_SESSION['userId']."' IN (senderID,receiver_id) ORDER BY id DESC";

wanneer de bovenstaande verklaring wordt geparseerd, ziet deze er als volgt uit:

SELECT * 
FROM   documents 
WHERE  'UXX' IN (senderID,receiver_id)  // where XX is the userID
ORDER  BY id DESC

Even terzijde:de query is kwetsbaar met SQL Injection als de waarde(s ) van de variabelen kwam van buitenaf. Bekijk het onderstaande artikel om te zien hoe u dit kunt voorkomen. Door PreparedStatements . te gebruiken u kunt het gebruik van enkele aanhalingstekens rond waarden verwijderen.



  1. Hoe een rij in te voegen in postgreSQL pgAdmin?

  2. SQL Server-gegevens invoegen met Oracle® SQL*Loader

  3. Problemen met het maken van een tijdelijke tabel uit een UNION

  4. Master-Master MySQL-databasereplicatie configureren