sql >> Database teknologi >  >> RDS >> Mysql

Hvordan undslipper jeg specialtegn i MySQL?

Oplysningerne i dette svar kan føre til usikker programmeringspraksis.

De oplysninger, der gives her, afhænger i høj grad af MySQL-konfigurationen, inklusive (men ikke begrænset til) programversionen, databaseklienten og den anvendte tegnkodning.

Se http://dev.mysql.com/doc/ refman/5.0/da/string-literals.html

MySQL recognizes the following escape sequences.
\0     An ASCII NUL (0x00) character.
\'     A single quote (“'”) character.
\"     A double quote (“"”) character.
\b     A backspace character.
\n     A newline (linefeed) character.
\r     A carriage return character.
\t     A tab character.
\Z     ASCII 26 (Control-Z). See note following the table.
\\     A backslash (“\”) character.
\%     A “%” character. See note following the table.
\_     A “_” character. See note following the table.

Så du har brug for

select * from tablename where fields like "%string \"hi\" %";

Selvom som noterer Bill Karwin nedenfor , er det ikke standard SQL at bruge dobbelte anførselstegn til strengskilletegn, så det er god praksis at bruge enkelte anførselstegn. Dette forenkler tingene:

select * from tablename where fields like '%string "hi" %';


  1. En oversigt over den serielle pseudo-datatype for PostgreSQL

  2. Tilføj kolonner til en eksisterende tabel i SQL Server-database

  3. Guide til designdatabase til nyhedsbrev i MySQL

  4. Postgres kunne ikke oprette forbindelse til serveren