commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

gnue/common/utils/xml2sql display.xsl mssql.xsl...


From: Jan Ischebeck
Subject: gnue/common/utils/xml2sql display.xsl mssql.xsl...
Date: Tue, 23 Jul 2002 16:56:37 -0400

CVSROOT:        /cvsroot/gnue
Module name:    gnue
Changes by:     Jan Ischebeck <address@hidden>  02/07/23 16:56:37

Modified files:
        common/utils/xml2sql: display.xsl mssql.xsl mysql.xsl pgsql.xsl 
                              sybase.xsl 
Added files:
        common/utils/xml2sql: Makefile.sample README 

Log message:
        add README and a sample Makefile to xml2sql
        fix "no 'primary key' sql code generated" bug in all xsl files.
        (bug because of syntax change between .xml and .gsd)
        add INSERT data support to all database xsl files.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/utils/xml2sql/Makefile.sample?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/utils/xml2sql/README?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/utils/xml2sql/display.xsl.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/utils/xml2sql/mssql.xsl.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/utils/xml2sql/mysql.xsl.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/utils/xml2sql/pgsql.xsl.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/utils/xml2sql/sybase.xsl.diff?tr1=1.3&tr2=1.4&r1=text&r2=text

Patches:
Index: gnue/common/utils/xml2sql/display.xsl
diff -c gnue/common/utils/xml2sql/display.xsl:1.3 
gnue/common/utils/xml2sql/display.xsl:1.4
*** gnue/common/utils/xml2sql/display.xsl:1.3   Fri Jul 19 14:59:01 2002
--- gnue/common/utils/xml2sql/display.xsl       Tue Jul 23 16:56:37 2002
***************
*** 41,47 ****
          <xsl:variable name="name"><xsl:value-of 
select="@name"/></xsl:variable>
          <td><xsl:value-of select="$name"/>
            <xsl:for-each select="../../primarykey/pkfield">
!             <xsl:if test=". = $name"><xsl:text> </xsl:text><img 
src="key.png"/></xsl:if>
            </xsl:for-each>
          </td>
          <td><xsl:value-of select="@type"/></td>
--- 41,47 ----
          <xsl:variable name="name"><xsl:value-of 
select="@name"/></xsl:variable>
          <td><xsl:value-of select="$name"/>
            <xsl:for-each select="../../primarykey/pkfield">
!             <xsl:if test="@name = $name"><xsl:text> </xsl:text><img 
src="key.png"/></xsl:if>
            </xsl:for-each>
          </td>
          <td><xsl:value-of select="@type"/></td>
Index: gnue/common/utils/xml2sql/mssql.xsl
diff -c gnue/common/utils/xml2sql/mssql.xsl:1.3 
gnue/common/utils/xml2sql/mssql.xsl:1.4
*** gnue/common/utils/xml2sql/mssql.xsl:1.3     Fri Jul 19 14:59:01 2002
--- gnue/common/utils/xml2sql/mssql.xsl Tue Jul 23 16:56:37 2002
***************
*** 6,11 ****
--- 6,14 ----
        <xsl:call-template name="doPrimaryKey"><xsl:with-param 
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
        <xsl:call-template name="doIndexes"><xsl:with-param 
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
        <xsl:call-template name="doConstraints"><xsl:with-param 
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
+     </xsl:for-each>
+     <xsl:for-each select="data/tabledata">
+       <xsl:call-template name="doTableData"/>
      </xsl:for-each></sql>
    </xsl:template>
  
***************
*** 56,67 ****
    <xsl:template name="doPrimaryKey">
      <xsl:param name="table"></xsl:param>
      <xsl:if test="$table != &quot;&quot;">
!       <xsl:if test="count(./primarykey/pkfield[text()]) &gt; 0">
          <command><xsl:text>Alter Table </xsl:text><xsl:value-of 
select="$table"/><xsl:text> Add Constraint </xsl:text>
          <xsl:value-of select="primarykey/@name"/><xsl:text> Primary 
Key(</xsl:text>
          <xsl:for-each select="primarykey/pkfield">
            <xsl:if test="position() &gt; 1"><xsl:text>, </xsl:text></xsl:if>
!           <xsl:value-of select="."/>
          </xsl:for-each>
          <xsl:text>)
  GO
--- 59,70 ----
    <xsl:template name="doPrimaryKey">
      <xsl:param name="table"></xsl:param>
      <xsl:if test="$table != &quot;&quot;">
!       <xsl:if test="count(./primarykey/address@hidden) &gt; 0">
          <command><xsl:text>Alter Table </xsl:text><xsl:value-of 
select="$table"/><xsl:text> Add Constraint </xsl:text>
          <xsl:value-of select="primarykey/@name"/><xsl:text> Primary 
Key(</xsl:text>
          <xsl:for-each select="primarykey/pkfield">
            <xsl:if test="position() &gt; 1"><xsl:text>, </xsl:text></xsl:if>
!           <xsl:value-of select="@name"/>
          </xsl:for-each>
          <xsl:text>)
  GO
***************
*** 117,121 ****
--- 120,144 ----
          </command>
        </xsl:for-each>
      </xsl:if>
+   </xsl:template>
+ 
+   <xsl:template name="doTableData">
+     <xsl:variable name="tableName" select="@tablename"/>
+     <xsl:for-each select="rows/row">
+       <command><xsl:text>Insert into </xsl:text>
+         <xsl:value-of select="$tableName"/>
+         <xsl:text> values (</xsl:text>
+         <xsl:variable name="numValues" select="count(value)"/>
+         <xsl:for-each select="value">
+            <xsl:value-of select="."/>
+            <xsl:if test="position() &lt; $numValues">
+               <xsl:text>, </xsl:text>
+            </xsl:if>
+         </xsl:for-each>
+         <xsl:text>)
+ GO
+ </xsl:text>
+       </command>
+     </xsl:for-each>
    </xsl:template>
  </xsl:stylesheet>
Index: gnue/common/utils/xml2sql/mysql.xsl
diff -c gnue/common/utils/xml2sql/mysql.xsl:1.3 
gnue/common/utils/xml2sql/mysql.xsl:1.4
*** gnue/common/utils/xml2sql/mysql.xsl:1.3     Fri Jul 19 14:59:01 2002
--- gnue/common/utils/xml2sql/mysql.xsl Tue Jul 23 16:56:37 2002
***************
*** 6,11 ****
--- 6,14 ----
        <xsl:call-template name="doPrimaryKey"><xsl:with-param 
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
        <xsl:call-template name="doIndexes"><xsl:with-param 
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
        <xsl:call-template name="doConstraints"><xsl:with-param 
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
+     </xsl:for-each>
+     <xsl:for-each select="data/tabledata">
+       <xsl:call-template name="doTableData"/>
      </xsl:for-each></sql>
    </xsl:template>
  
***************
*** 64,74 ****
    <xsl:template name="doPrimaryKey">
      <xsl:param name="table"></xsl:param>
      <xsl:if test="$table != &quot;&quot;">
!       <xsl:if test="count(./primarykey/pkfield[text()]) &gt; 0">
          <command><xsl:text>Alter Table </xsl:text><xsl:value-of 
select="$table"/><xsl:text> Add Primary Key(</xsl:text>
          <xsl:for-each select="primarykey/pkfield">
            <xsl:if test="position() &gt; 1"><xsl:text>, </xsl:text></xsl:if>
!           <xsl:value-of select="."/>
          </xsl:for-each>
          <xsl:text>);</xsl:text></command>
        </xsl:if>
--- 67,77 ----
    <xsl:template name="doPrimaryKey">
      <xsl:param name="table"></xsl:param>
      <xsl:if test="$table != &quot;&quot;">
!       <xsl:if test="count(./primarykey/address@hidden) &gt; 0">
          <command><xsl:text>Alter Table </xsl:text><xsl:value-of 
select="$table"/><xsl:text> Add Primary Key(</xsl:text>
          <xsl:for-each select="primarykey/pkfield">
            <xsl:if test="position() &gt; 1"><xsl:text>, </xsl:text></xsl:if>
!           <xsl:value-of select="@name"/>
          </xsl:for-each>
          <xsl:text>);</xsl:text></command>
        </xsl:if>
***************
*** 120,124 ****
--- 123,144 ----
          </command>
        </xsl:for-each>
      </xsl:if>
+   </xsl:template>
+   <xsl:template name="doTableData">
+     <xsl:variable name="tableName" select="@tablename"/>
+     <xsl:for-each select="rows/row">
+       <command><xsl:text>Insert into </xsl:text>
+         <xsl:value-of select="$tableName"/>
+         <xsl:text> values (</xsl:text>
+         <xsl:variable name="numValues" select="count(value)"/>
+         <xsl:for-each select="value">
+            <xsl:value-of select="."/>
+            <xsl:if test="position() &lt; $numValues">
+               <xsl:text>, </xsl:text>
+            </xsl:if>
+         </xsl:for-each>
+         <xsl:text>);</xsl:text>
+       </command>
+     </xsl:for-each>
    </xsl:template>
  </xsl:stylesheet>
Index: gnue/common/utils/xml2sql/pgsql.xsl
diff -c gnue/common/utils/xml2sql/pgsql.xsl:1.3 
gnue/common/utils/xml2sql/pgsql.xsl:1.4
*** gnue/common/utils/xml2sql/pgsql.xsl:1.3     Fri Jul 19 14:59:01 2002
--- gnue/common/utils/xml2sql/pgsql.xsl Tue Jul 23 16:56:37 2002
***************
*** 55,66 ****
    <xsl:template name="doPrimaryKey">
      <xsl:param name="table"></xsl:param>
      <xsl:if test="$table != &quot;&quot;">
!       <xsl:if test="count(./primarykey/pkfield[text()]) &gt; 0">
          <command><xsl:text>Create Unique Index </xsl:text><xsl:value-of 
select="primarykey/@name"/><xsl:text> On </xsl:text>
          <xsl:value-of select="$table"/><xsl:text>(</xsl:text>
          <xsl:for-each select="primarykey/pkfield">
            <xsl:if test="position() &gt; 1"><xsl:text>, </xsl:text></xsl:if>
!           <xsl:value-of select="."/>
          </xsl:for-each>
          <xsl:text>);</xsl:text></command>
        </xsl:if>
--- 55,66 ----
    <xsl:template name="doPrimaryKey">
      <xsl:param name="table"></xsl:param>
      <xsl:if test="$table != &quot;&quot;">
!       <xsl:if test="count(./primarykey/address@hidden) &gt; 0">
          <command><xsl:text>Create Unique Index </xsl:text><xsl:value-of 
select="primarykey/@name"/><xsl:text> On </xsl:text>
          <xsl:value-of select="$table"/><xsl:text>(</xsl:text>
          <xsl:for-each select="primarykey/pkfield">
            <xsl:if test="position() &gt; 1"><xsl:text>, </xsl:text></xsl:if>
!           <xsl:value-of select="@name"/>
          </xsl:for-each>
          <xsl:text>);</xsl:text></command>
        </xsl:if>
***************
*** 113,121 ****
      </xsl:if>
    </xsl:template>
  
!         <xsl:template name="doTableData"><xsl:variable name="tableName" 
select="@tablename"/>
!        <xsl:for-each select="rows/row"> <command>Insert into <xsl:value-of 
select="$tableName"/> values (<xsl:variable name="numValues" 
select="count(value)"/><xsl:for-each select="value"><xsl:value-of 
select="."/><xsl:if test="position() &lt; $numValues"><xsl:text>, 
</xsl:text></xsl:if></xsl:for-each>);</command>
!        </xsl:for-each>
    </xsl:template>
- 
  </xsl:stylesheet>
--- 113,133 ----
      </xsl:if>
    </xsl:template>
  
!   <xsl:template name="doTableData">
!     <xsl:variable name="tableName" select="@tablename"/>
!     <xsl:for-each select="rows/row">
!       <command><xsl:text>Insert into </xsl:text>
!         <xsl:value-of select="$tableName"/>
!         <xsl:text> values (</xsl:text>
!         <xsl:variable name="numValues" select="count(value)"/>
!         <xsl:for-each select="value">
!            <xsl:value-of select="."/>
!            <xsl:if test="position() &lt; $numValues">
!               <xsl:text>, </xsl:text>
!            </xsl:if>
!         </xsl:for-each>
!         <xsl:text>);</xsl:text>
!       </command>
!     </xsl:for-each>
    </xsl:template>
  </xsl:stylesheet>
Index: gnue/common/utils/xml2sql/sybase.xsl
diff -c gnue/common/utils/xml2sql/sybase.xsl:1.3 
gnue/common/utils/xml2sql/sybase.xsl:1.4
*** gnue/common/utils/xml2sql/sybase.xsl:1.3    Fri Jul 19 14:59:01 2002
--- gnue/common/utils/xml2sql/sybase.xsl        Tue Jul 23 16:56:37 2002
***************
*** 6,11 ****
--- 6,14 ----
        <xsl:call-template name="doPrimaryKey"><xsl:with-param 
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
        <xsl:call-template name="doIndexes"><xsl:with-param 
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
        <xsl:call-template name="doConstraints"><xsl:with-param 
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
+     </xsl:for-each>
+     <xsl:for-each select="data/tabledata">
+       <xsl:call-template name="doTableData"/>
      </xsl:for-each></sql>
    </xsl:template>
  
***************
*** 56,67 ****
    <xsl:template name="doPrimaryKey">
      <xsl:param name="table"></xsl:param>
      <xsl:if test="$table != &quot;&quot;">
!       <xsl:if test="count(./primarykey/pkfield[text()]) &gt; 0">
          <command><xsl:text>Alter Table </xsl:text><xsl:value-of 
select="$table"/><xsl:text> Add Constraint </xsl:text>
          <xsl:value-of select="primarykey/@name"/><xsl:text> Primary 
Key(</xsl:text>
          <xsl:for-each select="primarykey/pkfield">
            <xsl:if test="position() &gt; 1"><xsl:text>, </xsl:text></xsl:if>
!           <xsl:value-of select="."/>
          </xsl:for-each>
          <xsl:text>)
  GO
--- 59,70 ----
    <xsl:template name="doPrimaryKey">
      <xsl:param name="table"></xsl:param>
      <xsl:if test="$table != &quot;&quot;">
!       <xsl:if test="count(./primarykey/address@hidden) &gt; 0">
          <command><xsl:text>Alter Table </xsl:text><xsl:value-of 
select="$table"/><xsl:text> Add Constraint </xsl:text>
          <xsl:value-of select="primarykey/@name"/><xsl:text> Primary 
Key(</xsl:text>
          <xsl:for-each select="primarykey/pkfield">
            <xsl:if test="position() &gt; 1"><xsl:text>, </xsl:text></xsl:if>
!           <xsl:value-of select="@name"/>
          </xsl:for-each>
          <xsl:text>)
  GO
***************
*** 117,121 ****
--- 120,144 ----
          </command>
        </xsl:for-each>
      </xsl:if>
+   </xsl:template>
+ 
+   <xsl:template name="doTableData">
+     <xsl:variable name="tableName" select="@tablename"/>
+     <xsl:for-each select="rows/row">
+       <command><xsl:text>Insert into </xsl:text>
+         <xsl:value-of select="$tableName"/>
+         <xsl:text> values (</xsl:text>
+         <xsl:variable name="numValues" select="count(value)"/>
+         <xsl:for-each select="value">
+            <xsl:value-of select="."/>
+            <xsl:if test="position() &lt; $numValues">
+               <xsl:text>, </xsl:text>
+            </xsl:if>
+         </xsl:for-each>
+         <xsl:text>)
+ GO
+         </xsl:text>
+       </command>
+     </xsl:for-each>
    </xsl:template>
  </xsl:stylesheet>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]