Permite eliminar registros de una tabla virtual. Existen dos modalidades:
  1. Con atributo where elimina los registros que cumplen la condición indicada en el atributo.
  2. Sin atributo where elimina un único registro. Si hay atributo row, se elimina la fila correspondiente al valor del atributo. Sin atributo row, se elimina la fila actual.

1 vtable.delete

<vtable.delete
    name='name'
    row='row'
    where='where'
>
    <vtable /> *
</vtable.delete>
Example
Copy
<xsql-script name='vtable_delete_sample1'>
    <body>
        <vtable name='v_test'>
            <column name='codigo' type='char' unique='true' />
            <column name='nombre' type='char' size='25' />
        </vtable>

        <vtable.insert name='v_test'><column name='codigo'>A1</column><column name='nombre'>Nombre A1</column></vtable.insert>
        <vtable.insert name='v_test'><column name='codigo'>A2</column><column name='nombre'>Nombre A2</column></vtable.insert>
        <vtable.insert name='v_test'><column name='codigo'>A3</column><column name='nombre'>Nombre A3</column></vtable.insert>

        <println><v_test /></println>
        <vtable.delete name='v_test' row='2' />
        <println><v_test /></println>
    </body>
</xsql-script>
Example

Ejemplo de vtable.delete usando el atributo where.

Copy
<xsql-script name='vtable_where'>
   <body>
       <vtable name='personas'>
           <column name='dni'       type='string' unique='true' />
           <column name='nombre'    type='string'               />
           <column name='apellido1' type='string'               />
           <column name='apellido2' type='string'               />
       </vtable>

       <vtable.insert name='personas'>
           <string>46352700Z</string>
           <string>John</string>
           <string>Smith</string>
           <string>Simpson</string>
       </vtable.insert>

       <vtable.insert name='personas'>
           <string>49352110X</string>
           <string>David</string>
           <string>Robert</string>
           <string>Jones</string>
       </vtable.insert>

       <vtable.insert name='personas'>
           <string>46282627B</string>
           <string>John</string>
           <string>Frederick</string>
           <string>Herschel</string>
       </vtable.insert>
       
       <println>Partimos de los siguientes datos</println>
       
       <println>
           <personas />
       </println>

        <println>Cambiamos el segundo apellido de las entrados con nombres empezados con 'J'</println>
       <vtable.update name='personas' where="fn:startsWith(nombre, 'J')">
           <column name='apellido2'>xxxxxxx</column>
       </vtable.update>
       
       <println>
           <personas />
       </println>
       
       <println>Borramos las entrados con nombres empezados con 'D'</println>
       <vtable.delete name='personas' where="fn:startsWith(nombre, 'D')" />
       
       <println>
           <personas />
       </println>
   </body>
</xsql-script>