Normalement on peut tout à fait insérer des champs vides dans une base.
En fait, ta requête me semble correcte (mise à part le 'news' entre quote, car je vois pas comment tu pourrais insérer des données dans une chaîne de caractère)
La lise des champs avant le values est facultative à condition de fournir le même nombre de valeurs que de champs. Toutefois, si demain j'ai un mec qui bosse avec moi qui fait ça, c'est lui ou moi, mais l'un des deux quitte le projet, par expérience, y'a rien de mieu pour planter l'intégralité du code pour une raison "incompréhensible" 6 mois après la mise en prod du soft, quand un admin se sera amusé à faire un alter table histoire de modifier quelques trucs dans la table... Donc toujours fournir la liste des champs en plus des valeurs, ça permet au SGBD de savoir quelle donnée insérer dans quelle colonnes, au cas ou des colonnes soient rajoutées, ou qu'elles ne soient plus de le même ordre, ce qui arrive régulièrement dans une base qui "vit" )