Permite eliminar registros de una tabla virtual. Existen dos modalidades:
- Con atributo where elimina los registros que cumplen la condición indicada en el atributo.
- 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>
Attributes | |||||
---|---|---|---|---|---|
Name | Type | Required | Default | Description | |
Aname | string | Nombre de la tabla virtual. La tabla virtual se puede indicar mediante este atributo o bien puede pasarse como un argumento. | |||
Arow | string | Número de la fila a eliminar. Si se omite, se refiere a la fila actual. | |||
Awhere | string | Condición de igualdad de una o más columnas del vtable. Se eliminan todos los registros del vtable que cumplen con la condición indicada en el atributo. |
Arguments | |||||
---|---|---|---|---|---|
Name | Type | Required | Unique | Nullable | Description |
Evtable | vtable | Tabla virtual de la que se desea borrar el registro. |
Returns | |
---|---|
Type | Description |
vtable | Devuelve la vtable resultante de la eliminación del registro. |
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>