Asumo que si necesitas mantener esos nombres es porque ya tienes una aplicación diseñada que los usa. de todos modos, si hubiese alguna posibilidad de reemplazar en el código fuente de la aplicación esas denominaciones de campos, sería muy conveniente. Evitarías problemas de migraciones.
De todos modos, te cuento que sí, MySQL tiene un modo de usar caracteres o palabras reservadas en la denominación de campos y tablas, y es precisamente haciendo que las interprete como tales de forma exclusiva.
Esto lo hace cuando encierras los nombres entre acentos agudos (`). No entre apóstrofes ('), ya que esos se usan para cadenas solamente, como por ejemplo los alias de los campos en un SELECT.
Se supone que los acentos agudos y las comillas (") tienen el mismo uso, pero te recomiendo los acentos agudos, por ser más seguros y así evitarás potenciales problemas con el intérprete del parser.
Prueba entonces:
Código:
CREATE TABLE `Prueba`(
`TIPO` VARCHAR(30),
`TEXTO` VARCHAR(100),
`COLOR` INT,
`LEFT` INT,
`TOP` INT,
`SIZE` INT,
`BOLD` BOOL,
`NAME` VARCHAR(50),
`UNDERLINE` BOOL,
`STRIKETHROUGH` BOOL,
`ITALIC` BOOL);