Difference between revisions of "NL/Documentation/BASIC Guide/Data Sources"
(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)) |
|||
Line 41: | Line 41: | ||
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'''. | ||
− | + | 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>: | + | ;<tt>Name (String)</tt>:naam van de gegevensbron |
− | ;<tt>URL (String)</tt>:URL | + | ;<tt>URL (String)</tt>:URL van de gegevensbron in de vorm van '''jdbc: subprotocol : subnaam''' of '''sdbc: subprotocol : subnaam''' |
− | ;<tt>Settings (Array)</tt>:array | + | ;<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>: | + | ;<tt>User (String)</tt>:gebruikersnaam |
− | ;<tt>Password (String)</tt>: | + | ;<tt>Password (String)</tt>:wachtwoord van gebruiker (wordt niet opgeslagen) |
− | ;<tt>IsPasswordRequired (Boolean)</tt>: | + | ;<tt>IsPasswordRequired (Boolean)</tt>:het wachtwoord is nodig en wordt interactief vereist van de gebruiker |
− | ;<tt>IsReadOnly (Boolean)</tt>: | + | ;<tt>IsReadOnly (Boolean)</tt>:staat alleen-lezen toegang tot de database toe |
− | ;<tt>NumberFormatsSupplier (Object)</tt>:object | + | ;<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>: | + | ;<tt>TableFilter (Array)</tt>:lijst van tabelnamen die moet worden weergegeven |
− | ;<tt>TableTypeFilter (Array)</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>: | + | ;<tt>SuppressVersionColumns (Boolean)</tt>:onderdrukt de weergave van kolommen die worden gebruikt voor versiebeheer |
− | {{Documentation/Note| | + | {{Documentation/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}}.}} |
− | == | + | == 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. | 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. |
Revision as of 18:18, 11 March 2013
- SQL: een Query-taal
- Typen toegang tot database
- Gegevensbronnen
- Toegang tot database
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
Query's
Predefined queries can be assigned to a data source. Apache OpenOffice 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.
An object which supports the com.sun.star.sdb.QueryDefinition service is concealed behind a query. The queries are accessed by means of the QueryDefinitions method of the data source.
The following example lists the names of data source queries can be established in a message box.
Dim DatabaseContext As Object Dim DataSource As Object Dim QueryDefinitions As Object Dim QueryDefinition As Object Dim I As Integer DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext") DataSource = DatabaseContext.getByName("Customers") QueryDefinitions = DataSource.getQueryDefinitions() For I = 0 To QueryDefinitions.Count() - 1 QueryDefinition = QueryDefinitions(I) MsgBox QueryDefinition.Name Next I
In addition to the Name property used in the example, the com.sun.star.sdb.QueryDefinition provides a whole range of other properties. These are:
- Name (String)
- query name
- Command (String)
- SQL command (typically a SELECT command)
The following example shows how a query object can be created in a program-controlled manner and can be assigned to a data source.
Dim DatabaseContext As Object Dim DataSource As Object Dim QueryDefinitions As Object Dim QueryDefinition As Object Dim I As Integer DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext") DataSource = DatabaseContext.getByName("Customers") QueryDefinitions = DataSource.getQueryDefinitions() QueryDefinition = createUnoService("com.sun.star.sdb.QueryDefinition") QueryDefinition.Command = "SELECT * FROM Customer" QueryDefinitions.insertByName("NewQuery", QueryDefinition)
The query object is first created using the createUnoService call, then initialized, and then inserted into the QueryDefinitions object by means of insertByName.
Content on this page is licensed under the Public Documentation License (PDL). |