calc base connection explanation

I can’t understand what’s written here

Create a new database with the embedded HSQLDB. Define the tables in Base. Create a spreadsheet as external form for the embedded database to show and update the database. You can do calculations on this form and add charts, the linking is done via form control elements.

from here

I can add a form, linked to base, in calc but then how I do calculations and charts with it?

In the spreadsheet: menu > View > Data Source (F4) to view the database and to choose the table.
Drag the top corner of the table into the spreadsheet and work into the one for calculations, graphs, etc.
N.B. The database must be registered in order to view it.

If my answer helped you, vote it with :heavy_check_mark: (here on the left)

That’s the solution #2 in the original post:

Create a new database with the embedded HSQLDB. Define the table in Base, drag-drop it to Calc or insert them from data source browser(F4). You get a linked data range “Import”. Edit the data in Base and refresh the linked range in Calc.

I’m asking specifically for the method #3

Dear @charlie.it ,

If embedded HSQLDB or embedded Firebird database is connected via Calc’s BASIC code and :

[1] BASIC code reads Calc’s cell content and add it in new record to embedded database.

str1 = oCell.oSheet.GetCellByPosition(1,1).String
str2 = oCell.oSheet.GetCellByPosition(2,1).String  
sql1 = "insert into ""table1"" (""Field1"", ""Field2"") values ('" & str1 & "', " & str2 & "')"
oStatement = db.CreateStatement : Oresult = oStatement.ExecuteQuery(sql1)

And [2] BASIC code loads database into Calc cells.

oCell = oSheet.GetCellByPosition(1,5) : oCell.String = oRowSet.GetString(1)
oCell = oSheet.GetCellByPosition(2,5) : oCell.String = oRowSet.GetString(2)

Is registering embedded database an absolute must ?