Delete Data
To delete data on Polybase DB, you must implement a function on your collection
that calls selfdestruct(). By convention, this should be a function called
del().
You can view our example apps Simple CRUD and Polybase DB Social to see it working in action.
Define selfdestruct in Schema
The following provides an example of a delete function that only allows the owner of the record to delete it.
@public
collection City {
id: string;
owner: PublicKey;
constructor (id: string) {
this.id = id;
this.owner = ctx.publicKey;
}
del () {
if (this.owner != ctx.publicKey) {
throw error("You cannot delete this record");
}
selfdestruct();
}
}
Call delete from the SDK
You can now call the del() function:
import { Polybase } from "@polybase/client"
const db = new Polybase({ defaultNamespace: "your-namespace" });
const collectionReference = db.collection("City");
async function updateRecord () {
const recordData = await collectionReference
// the id of the record
.record("new-york")
// call jsjsthe function you defined in your schema to delete a record
.call("del");
}