User Tools

Site Tools


vba:access:sqlscript:scriptexamples

This is an old revision of the document!


[VBA][Access] Klasse SQLScript - SQL Befehle

Diese Beispiele basieren alle auf der Klasse .. Es werden hier nur die SQL-Statements gezeigt und den Rückgabewert.

Einfache Access-SQL

Auf einfache SELECT etc. gehe ich hier nicht weiter ein

SET

SET param = value

Ms Access SQL kennt bei den Abfragen Variablen/Parameters. SQLScript kann damit arbeiten. Wenn man einem Parameter einen Wert zuteilt, bleibt der erhalten bis der Cache des Containers gelehrt wird.
Siehe auch SELECT mit Parametern/Variabeln

Setzen eines Wertes geht über die Funktion SET

SET act_id = 13
SET search_date = #01-01-2015#

Somit haben wir jetzt eine Variabel act_id mit dem Wert 13 und search_date mit dem ersten Tag im 2015. Diese Variablen kann an wie gewohnt im Access mittels SELECT abfragen. Oder man kann sie in einem Filter brauchen. Genauso wie die benannten Parameter einer Abfrage.

Hier mein Testscript, dass ich über die Konole aufrufe

SET act_id = 13;
PROMPT IN der Tabelle die ID [act_id] herausfiltern;
SELECT * FROM tbl_t1 WHERE id = act_id;
Set Paramter [ACT_ID] to 13

> IN der Tabelle die ID [act_id] herausfiltern

| id | val |
|----|-----|
| 13 | ABC |

SELECT mit Parametern/Variabeln

Wie in SET bereits erwähnt, kennt MS Access SQL Paramter. Entweder sind sie vordefiniert oder aber es sind Feldnamen die in der Quelle nicht vorhanden sind. Wir kennen dass, wenn man eine Abfrage öffnet und Access fragt nach einem Wert für ein Feld.

Ind em folgenden SQL ist [act_id] ein undefinierter Paramter.

SELECT t.*
FROM tbl_t1 AS t
WHERE t.id = [act_id];

Beim ausführen erscheint eine Inputbox, die nach dem Wert für act_id fragt. Dieser Wert wird anschliessend in den Cache des Containers gespeichert. ANalog zum Scriptseiten SET

SHOW

SHOW ist ein Befehl, den man aus anderen DBMS kennt um Objekte in der Datenbank anzuzeigen. Tabellen, Spalten etc.

SQLScript kennt mehrere verschiedene Objekte die analysiert werden können

TABLES Auflistung der Tabellen und der Index

SHOW VIEWS/TABLES

SHOW TABLES [WHERE conditions]
SHOW VIEWS [WHERE conditions]

Alle Tabellen ausgeben

SHOW TABLES
| table_name                  | row_count | last_update         | indexes                                    |
|-----------------------------|-----------|---------------------|--------------------------------------------|
| ADDON_SQL_CONSOLE_SESSION   | 19        | 13.04.2015 12:57:28 | ID, PrimaryKey (PK)                        |
| t_sql_test                  | 1         | 17.04.2015 10:08:24 | idx_sql_val, Index_F44530CA_8088_4FED (PK) |
| tbl_t1                      | 2         | 13.04.2015 12:09:01 | idx_val, Index_B4C4285A_B98F_4415 (PK)     |
| TODO: ADDON_SQL_CONSOLE_LOG | 0         | 13.04.2015 12:26:40 | PrimaryKey (PK), SESSION_ID, STEP_ID       |

Liste filtern

SHOW TABLES WHERE TABLE_NAME LIKE '*_t*'
| table_name | row_count | last_update         | indexes                                    |
|------------|-----------|---------------------|--------------------------------------------|
| t_sql_test | 1         | 17.04.2015 10:08:24 | idx_sql_val, Index_F44530CA_8088_4FED (PK) |
| tbl_t1     | 2         | 13.04.2015 12:09:01 | idx_val, Index_B4C4285A_B98F_4415 (PK)     |

SHOW COLUMNS

SHOW COLUMNS FROM table
SHOW COLUMNS FROM view

Zeigt die Spalten einer Tabelle oder einer View mit ihren Eigenschafte an

Table

SHOW COLUMNS FROM tbl_t1
| nr | field_name | field_type | allow_zero_length | required | source_table | source_field | autoincrement | default_value |
|----|------------|------------|-------------------|----------|--------------|--------------|---------------|---------------|
| 1  | id         | LONG       | False             | False    | tbl_t1       | id           | False         |               |
| 2  | val        | TEXT(25)   | False             | False    | tbl_t1       | val          | False         |               |

View

SHOW COLUMNS FROM vw_t1
| nr | field_name | field_type | allow_zero_length | required | source_table | source_field | autoincrement | default_value |
|----|------------|------------|-------------------|----------|--------------|--------------|---------------|---------------|
| 1  | id         | LONG       | False             | False    | tbl_t1       | id           | False         |               |
| 2  | val        | TEXT(25)   | False             | False    | tbl_t1       | val          | False         |               |
| 3  | jetzt      | DATE       | False             | False    |              |              | False         |               |
SHOW INDEXES
SHOW INDEXES FROM table
SHOW INDEXES FROM tbl_t1
| index_name               | primary_key | unique |
|--------------------------|-------------|--------|
| idx_val                  | False       | False  |
| Index_B4C4285A_B98F_4415 | True        | True   |^

SHOW Variables/Paramters

vba/access/sqlscript/scriptexamples.1429272833.txt.gz · Last modified: 17.04.2015 14:13:53 by yaslaw