Difference between revisions of "NL/Documentation/BASIC Guide/Data Sources"

From Apache OpenOffice Wiki
Jump to: navigation, search
(Created page with "{{NL/Documentation/BASICGuideTOC/v2 |ShowPrevNext=block |ShowPrevPage=block |PrevPage=NL/Documentation/BASIC Guide/Database Access Types |NextPage=NL/Documentation/BASIC Guide..." (tussenstap opslaan))
 
m
(3 intermediate revisions by 2 users not shown)
Line 15: Line 15:
  
  
<source lang="oobas">
+
<syntaxhighlight lang="oobas">
 
Dim DatabaseContext As Object
 
Dim DatabaseContext As Object
 
Dim Namen
 
Dim Namen
Line 27: Line 27:
 
   MsgBox Namen(I)
 
   MsgBox Namen(I)
 
Next I
 
Next I
</source>
+
</syntaxhighlight>
  
 
De individuele gegevensbronnen zijn gebaseerd op de service <idl>com.sun.star.sdb.DataSource</idl> en kunnen worden bepaald vanuit de databasecontext met behulp van de methode <tt>getByName</tt>:
 
De individuele gegevensbronnen zijn gebaseerd op de service <idl>com.sun.star.sdb.DataSource</idl> en kunnen worden bepaald vanuit de databasecontext met behulp van de methode <tt>getByName</tt>:
  
<source lang="oobas">
+
<syntaxhighlight lang="oobas">
 
Dim DatabaseContext As Object
 
Dim DatabaseContext As Object
 
Dim GegevensBron As Object
 
Dim GegevensBron As Object
Line 37: Line 37:
 
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
 
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
 
GegevensBron = DatabaseContext.getByName("Klanten")
 
GegevensBron = DatabaseContext.getByName("Klanten")
</source>
+
</syntaxhighlight>
  
 
Het voorbeeld maakt een object <tt>DataSource</tt> voor een gegevensbron, genaamd '''Klanten'''.
 
Het voorbeeld maakt een object <tt>DataSource</tt> voor een gegevensbron, genaamd '''Klanten'''.
  
Data sources provide a range of properties, which in turn provide general information about the origin of the data and information about access methods. The properties are:
+
Gegevensbronnen verschaffen een scala aan eigenschappen, welke op hun beurt algemene informatie verschaffen over de oorsprong van de gegevens en informatie over hun methoden van toegangs. De eigenschappen zijn:
  
;<tt>Name (String)</tt>:name of data source
+
;<tt>Name (String)</tt>:naam van de gegevensbron
;<tt>URL (String)</tt>:URL of data source in the form of '''jdbc: subprotocol : subname''' or '''sdbc: subprotocol : subname'''
+
;<tt>URL (String)</tt>:URL van de gegevensbron in de vorm van '''jdbc: subprotocol : subnaam''' of '''sdbc: subprotocol : subnaam'''
;<tt>Settings (Array)</tt>:array containing <tt>PropertyValue</tt>-pairs with connection parameters (usually at least user name and password)
+
;<tt>Settings (Array)</tt>:array die paren van <tt>PropertyValue</tt> bevat met parameters voor de verbinding (gewoonlijk ten minste gebruikersnaam en wachtwoord)
;<tt>User (String)</tt>:user name
+
;<tt>User (String)</tt>:gebruikersnaam
;<tt>Password (String)</tt>:user password (is not saved)
+
;<tt>Password (String)</tt>:wachtwoord van gebruiker (wordt niet opgeslagen)
;<tt>IsPasswordRequired (Boolean)</tt>:the password is needed and is interactively requested from user.
+
;<tt>IsPasswordRequired (Boolean)</tt>:het wachtwoord is nodig en wordt interactief vereist van de gebruiker
;<tt>IsReadOnly (Boolean)</tt>:permits read-only access to the database
+
;<tt>IsReadOnly (Boolean)</tt>:staat alleen-lezen toegang tot de database toe
;<tt>NumberFormatsSupplier (Object)</tt>:object containing the number formats available for the database (supports the <idl>com.sun.star.util.XNumberFormatsSupplier</idl> interface)
+
;<tt>NumberFormatsSupplier (Object)</tt>:object dat de getalopmaak, beschikbaar voor de database, bevat (ondersteunt de interface <idl>com.sun.star.util.XNumberFormatsSupplier</idl>)
;<tt>TableFilter (Array)</tt>:list of table names to be displayed
+
;<tt>TableFilter (Array)</tt>:lijst van tabelnamen die moet worden weergegeven
;<tt>TableTypeFilter (Array)</tt>:list of table types to be displayed. Values available are <tt>TABLE</tt>, <tt>VIEW</tt> and <tt>SYSTEM TABLE</tt>
+
;<tt>TableTypeFilter (Array)</tt>:lijst van tabeltypen die moet worden weergegeven. Beschikbare waarden zijn <tt>TABLE</tt>, <tt>VIEW</tt> en <tt>SYSTEM TABLE</tt>
;<tt>SuppressVersionColumns (Boolean)</tt>:suppresses the display of columns that are used for version administration
+
;<tt>SuppressVersionColumns (Boolean)</tt>:onderdrukt de weergave van kolommen die worden gebruikt voor versiebeheer
  
{{Documentation/Note|The data sources from {{OOo}} are not 1:1 comparable with the data sources in ODBC. Whereas an ODBC data source only covers information about the origin of the data, a data source in {{OOo}} also includes a range of information about how the data is displayed within the database windows of {{OOo}}.}}
+
{{Note|De gegevensbronnen van {{OOo}} zijn niet 1:1 te vergelijken met gegevensbronnen in ODBC. Waar een gegevensbron in ODBC alleen informatie behandelt over de origine van de gegevens, bevat een gegevensbron in {{OOo}} ook een scala aan informatie over hoe de gegevens worden weergegeven binnen de vensters van de database van {{OOo}}.}}
  
== Queries ==
+
== Query's ==
  
Predefined queries can be assigned to a data source. {{OOo}} notes the SQL commands of queries so that they are available at all times. Queries are used to simplify working with databases because they can be opened with a simple mouse click and also provide users without any knowledge of SQL with the option of issuing SQL commands.
+
Vooraf gedefinieerde bevragingen (query's) kunnen worden toegewezen aan gegevensbronnen. {{OOo}} noteert de opdrachten in SQL van query's zodat zij altijd beschikbaar zijn. Query's worden gebruikt om het werken met gegevensbronnen te vereenvoudigen omdat zij kunnen worden geopend met één simpele muisklik en verschaffen gebruikers zonder enige kennis van SQL de optie van het gebruik van opdrachten.
  
An object which supports the <idl>com.sun.star.sdb.QueryDefinition</idl> service is concealed behind a query. The queries are accessed by means of the <tt>QueryDefinitions</tt> method of the data source.
+
Een object dat de service <idl>com.sun.star.sdb.QueryDefinition</idl> ondersteunt is verborgen achter een query. De query's worden toegankelijk gemaakt door middel van de methode <tt>QueryDefinitions</tt> van de gegevensbron.
  
The following example lists the names of data source queries can be established in a message box.
+
Het volgende voorbeeld somt de namen van de query's van de gegevensbron, die kunnen worden vastgesteld, op in een berichtenvenster.
  
<source lang="oobas">
+
<syntaxhighlight lang="oobas">
 
Dim DatabaseContext As Object
 
Dim DatabaseContext As Object
Dim DataSource As Object
+
Dim GegevensBron As Object
Dim QueryDefinitions As Object
+
Dim QueryDefinities As Object
Dim QueryDefinition As Object
+
Dim QueryDefinitie As Object
 
Dim I As Integer
 
Dim I As Integer
  
 
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
 
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("Customers")
+
GegevensBron = DatabaseContext.getByName("Klanten")
QueryDefinitions = DataSource.getQueryDefinitions()
+
QueryDefinities = GegevensBron.getQueryDefinitions()
  
For I = 0 To QueryDefinitions.Count() - 1
+
For I = 0 To QueryDefinities.Count() - 1
   QueryDefinition = QueryDefinitions(I)
+
   QueryDefinitie = QueryDefinities(I)
   MsgBox QueryDefinition.Name
+
   MsgBox QueryDefinitie.Name
 
Next I
 
Next I
</source>
+
</syntaxhighlight>
  
In addition to the Name property used in the example, the <idl>com.sun.star.sdb.QueryDefinition</idl> provides a whole range of other properties. These are:
+
In aanvulling op de eigenschap Name, gebruikt in het voorbeeld, verschaft de <idl>com.sun.star.sdb.QueryDefinition</idl> een heel scala aan andere eigenschappen. Deze zijn:
  
;<tt>Name (String)</tt>:query name
+
;<tt>Name (String)</tt>:naam van de query
;<tt>Command (String)</tt>:SQL command (typically a <tt>SELECT</tt> command)
+
;<tt>Command (String)</tt>:opdracht in SQL (meestal een opdracht <tt>SELECT</tt>)
  
The following example shows how a query object can be created in a program-controlled manner and can be assigned to a data source.
+
Het volgende voorbeeld toont hoe een object query kan worden gemaakt op een programma-gecontroleerde manier en kan worden toegewezen aan een gegevensbron.
  
<source lang="oobas">
+
<syntaxhighlight lang="oobas">
 
Dim DatabaseContext As Object
 
Dim DatabaseContext As Object
Dim DataSource As Object
+
Dim GegevensBron As Object
Dim QueryDefinitions As Object
+
Dim QueryDefinities As Object
Dim QueryDefinition As Object
+
Dim QueryDefinitie As Object
 
Dim I As Integer
 
Dim I As Integer
  
 
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
 
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("Customers")
+
GegevensBron = DatabaseContext.getByName("Klanten")
QueryDefinitions = DataSource.getQueryDefinitions()
+
QueryDefinities = GegevensBron.getQueryDefinitions()
QueryDefinition = createUnoService("com.sun.star.sdb.QueryDefinition")
+
QueryDefinitie = createUnoService("com.sun.star.sdb.QueryDefinition")
QueryDefinition.Command = "SELECT * FROM Customer"
+
QueryDefinitie.Command = "SELECT * FROM Klanten"
QueryDefinitions.insertByName("NewQuery", QueryDefinition)
+
QueryDefinities.insertByName("NieuweQuery", QueryDefinitie)
</source>
+
</syntaxhighlight>
  
The query object is first created using the <tt>createUnoService</tt> call, then initialized, and then inserted into the <tt>QueryDefinitions</tt> object by means of <tt>insertByName</tt>.
+
Het object query wordt eerst gemaakt met behulp van de aanroep <tt>createUnoService</tt>, dan geïnitialiseerd, en dan ingevoegd in het object <tt>QueryDefinities</tt> door middel van <tt>insertByName</tt>.
  
 
{{InterWiki Languages BasicGuide|articletitle=Documentation/BASIC Guide/Data Sources}}
 
{{InterWiki Languages BasicGuide|articletitle=Documentation/BASIC Guide/Data Sources}}
 
{{PDL1}}
 
{{PDL1}}

Revision as of 13:13, 31 December 2019

Book.png


Een database kan worden opgenomen in Apache OpenOffice door een, waar in het algemeen naar wordt verwezen als een gegevensbron, te maken. De gebruikers-interface verschaft een overeenkomende optie voor het maken van Gegevensbronnen in het menu Extra. U kunt echter ook gegevensbronnen maken en daarmee werken met behulp van Apache OpenOffice BASIC.

Een database context-object dat is gemaakt met behulp van de functie createUnoService dient als het startpunt voor toegang tot een gegevensbron. Dit is gebaseerd op de service com.sun.star.sdb.DatabaseContext en is het basisobject voor alle bewerkingen van de database.

Het volgende voorbeeld toont hoe een databasecontext kan worden gemaakt en dan worden gebruikt om te bepalen of alle gegevensbronnen beschikbaar zijn. Het geeft de namen weer in een berichten-venster.


Dim DatabaseContext As Object
Dim Namen
Dim I As Integer
 
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
 
Namen = DatabaseContext.getElementNames()
 
For I = 0 To UBound(Namen())
  MsgBox Namen(I)
Next I

De individuele gegevensbronnen zijn gebaseerd op de service com.sun.star.sdb.DataSource en kunnen worden bepaald vanuit de databasecontext met behulp van de methode getByName:

Dim DatabaseContext As Object
Dim GegevensBron As Object
 
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
GegevensBron = DatabaseContext.getByName("Klanten")

Het voorbeeld maakt een object DataSource voor een gegevensbron, genaamd Klanten.

Gegevensbronnen verschaffen een scala aan eigenschappen, welke op hun beurt algemene informatie verschaffen over de oorsprong van de gegevens en informatie over hun methoden van toegangs. De eigenschappen zijn:

Name (String)
naam van de gegevensbron
URL (String)
URL van de gegevensbron in de vorm van jdbc: subprotocol : subnaam of sdbc: subprotocol : subnaam
Settings (Array)
array die paren van PropertyValue bevat met parameters voor de verbinding (gewoonlijk ten minste gebruikersnaam en wachtwoord)
User (String)
gebruikersnaam
Password (String)
wachtwoord van gebruiker (wordt niet opgeslagen)
IsPasswordRequired (Boolean)
het wachtwoord is nodig en wordt interactief vereist van de gebruiker
IsReadOnly (Boolean)
staat alleen-lezen toegang tot de database toe
NumberFormatsSupplier (Object)
object dat de getalopmaak, beschikbaar voor de database, bevat (ondersteunt de interface com.sun.star.util.XNumberFormatsSupplier)
TableFilter (Array)
lijst van tabelnamen die moet worden weergegeven
TableTypeFilter (Array)
lijst van tabeltypen die moet worden weergegeven. Beschikbare waarden zijn TABLE, VIEW en SYSTEM TABLE
SuppressVersionColumns (Boolean)
onderdrukt de weergave van kolommen die worden gebruikt voor versiebeheer
Documentation note.png De gegevensbronnen van Apache OpenOffice zijn niet 1:1 te vergelijken met gegevensbronnen in ODBC. Waar een gegevensbron in ODBC alleen informatie behandelt over de origine van de gegevens, bevat een gegevensbron in Apache OpenOffice ook een scala aan informatie over hoe de gegevens worden weergegeven binnen de vensters van de database van Apache OpenOffice.

Query's

Vooraf gedefinieerde bevragingen (query's) kunnen worden toegewezen aan gegevensbronnen. Apache OpenOffice noteert de opdrachten in SQL van query's zodat zij altijd beschikbaar zijn. Query's worden gebruikt om het werken met gegevensbronnen te vereenvoudigen omdat zij kunnen worden geopend met één simpele muisklik en verschaffen gebruikers zonder enige kennis van SQL de optie van het gebruik van opdrachten.

Een object dat de service com.sun.star.sdb.QueryDefinition ondersteunt is verborgen achter een query. De query's worden toegankelijk gemaakt door middel van de methode QueryDefinitions van de gegevensbron.

Het volgende voorbeeld somt de namen van de query's van de gegevensbron, die kunnen worden vastgesteld, op in een berichtenvenster.

Dim DatabaseContext As Object
Dim GegevensBron As Object
Dim QueryDefinities As Object
Dim QueryDefinitie As Object
Dim I As Integer
 
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
GegevensBron = DatabaseContext.getByName("Klanten")
QueryDefinities = GegevensBron.getQueryDefinitions()
 
For I = 0 To QueryDefinities.Count() - 1
  QueryDefinitie = QueryDefinities(I)
  MsgBox QueryDefinitie.Name
Next I

In aanvulling op de eigenschap Name, gebruikt in het voorbeeld, verschaft de com.sun.star.sdb.QueryDefinition een heel scala aan andere eigenschappen. Deze zijn:

Name (String)
naam van de query
Command (String)
opdracht in SQL (meestal een opdracht SELECT)

Het volgende voorbeeld toont hoe een object query kan worden gemaakt op een programma-gecontroleerde manier en kan worden toegewezen aan een gegevensbron.

Dim DatabaseContext As Object
Dim GegevensBron As Object
Dim QueryDefinities As Object
Dim QueryDefinitie As Object
Dim I As Integer
 
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
GegevensBron = DatabaseContext.getByName("Klanten")
QueryDefinities = GegevensBron.getQueryDefinitions()
QueryDefinitie = createUnoService("com.sun.star.sdb.QueryDefinition")
QueryDefinitie.Command = "SELECT * FROM Klanten"
QueryDefinities.insertByName("NieuweQuery", QueryDefinitie)

Het object query wordt eerst gemaakt met behulp van de aanroep createUnoService, dan geïnitialiseerd, en dan ingevoegd in het object QueryDefinities door middel van insertByName.


Content on this page is licensed under the Public Documentation License (PDL).
Personal tools