2009-11-23 9 views
2

Je produis un rapport HTML à partir d'une requête à l'aide:Comment spécifier le type de document HTML dans le rapport HTML Oracle SQL * Plus?

set markup html on table "WIDTH='100%' BORDER='1' 
cellpadding='2px' cellspacing='0px'"; 

Est-il possible d'inclure une déclaration DOCTYPE tels que:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 

Je J'ai cherché, mais je ne vois pas de façon évidente de le faire.

MISE À JOUR: Il suffit d'ajouter une invite à un type de document produit les éléments suivants (qui produit une autre erreur de validation!):

<html> 
    <head> 
     <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> 
     <style type="text/css">pre{background-color:white;font-family:"Courier New";font-size:16;color:black;}</style> 
    </head> 
<body> 
    <pre> 
     <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
+0

Les déclarations DOCTYPE doivent être au début du fichier. Ils sont au-dessus/en dehors de l'élément . Vous pouvez voir la source de cette page Web et voir. –

+0

Ouais, je sais que DOCTYPEs doit être au début du fichier. Une idée sur la façon de le faire? ;) –

+0

mettre l'instruction PROMPT AVANT l'instruction set markup html on? –

Répondre

1

Je suppose que vous exécutez à partir de la ligne de commande quelque chose comme ceci:

SQLPLUS -S -M "HTML ON" user/[email protected] @yourQuery.sql > output.html 

Ce que vous pouvez faire est d'ajouter des scripts shell pour concaténer le DOCTYPE et le rapport. Supposons que le doctype est placé dans un fichier DOCTYPE.TXT. Vous ne spécifiez pas d'environnement, mais essayons ... Windows. Ensuite, nous aurions

SQLPLUS -S -M "HTML ON" user/[email protected] @yourQuery.sql > intermediate.html 
COPY DOCTYPE.TXT+intermediate.html output.html 
+0

Cracking idée - à votre santé! –

0

Pourquoi ne pas simplement

prompt <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
    "http://www.w3.org/TR/html4/loose.dtd"> 

dans votre script, AVANT la déclaration set markup html on?