diff options
| author | Thomas Schmucker <ts@its1.de> | 2026-07-11 16:01:16 +0200 |
|---|---|---|
| committer | Thomas Schmucker <ts@its1.de> | 2026-07-11 16:01:16 +0200 |
| commit | 3c9cc7d383df019dacbd80480730723fe4b20b44 (patch) | |
| tree | 9f04e09e48a77889f9bdb530c982c59e02c0818a /db-test.c | |
| parent | 7046da7c9c6e9a486e5d98f8a180d3b0e898debe (diff) | |
| download | use-berkeley-db-185-3c9cc7d383df019dacbd80480730723fe4b20b44.tar.gz use-berkeley-db-185-3c9cc7d383df019dacbd80480730723fe4b20b44.tar.bz2 use-berkeley-db-185-3c9cc7d383df019dacbd80480730723fe4b20b44.zip | |
Infrastruktur hinzugefügt
Diffstat (limited to 'db-test.c')
| -rw-r--r-- | db-test.c | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/db-test.c b/db-test.c deleted file mode 100644 index 2789ce0..0000000 --- a/db-test.c +++ /dev/null | |||
| @@ -1,66 +0,0 @@ | |||
| 1 | #include <stdio.h> | ||
| 2 | #include <stdio.h> | ||
| 3 | #include <stdlib.h> | ||
| 4 | #include <limits.h> | ||
| 5 | |||
| 6 | #include <db.h> | ||
| 7 | #include <fcntl.h> | ||
| 8 | |||
| 9 | typedef struct { | ||
| 10 | char username[20]; | ||
| 11 | char fullname[50]; | ||
| 12 | int age; | ||
| 13 | } user_type; | ||
| 14 | |||
| 15 | int main(void) | ||
| 16 | { | ||
| 17 | DB *db = dbopen("database.db", O_RDWR | O_CREAT, 0644, DB_BTREE, NULL); | ||
| 18 | if ( db != NULL ) { | ||
| 19 | fprintf(stderr, "Datenbank eröffnet...\n"); | ||
| 20 | |||
| 21 | #if INSERT | ||
| 22 | user_type users[] = { | ||
| 23 | { "datengott", "Thomas Schmucker", 44 }, | ||
| 24 | { "user1", "Sabine Müller", 23 }, | ||
| 25 | { "sql-user", "SQL Database User", -1 } | ||
| 26 | }; | ||
| 27 | |||
| 28 | for ( int i = 0; i != 3; ++i ) { | ||
| 29 | DBT data = { .data = &users[i], .size = sizeof(users[i]) }; | ||
| 30 | DBT key = { .data = &users[i].username, .size = sizeof(users[i].username) }; | ||
| 31 | |||
| 32 | int res = db->put(db, &key, &data, 0); | ||
| 33 | if ( res == -1 ) { | ||
| 34 | fprintf(stderr, "failed to insert data!\n"); | ||
| 35 | } | ||
| 36 | } | ||
| 37 | #endif | ||
| 38 | |||
| 39 | #if LOOKUP | ||
| 40 | { | ||
| 41 | DBT key = { .data = &users[0].username, .size = sizeof(users[0].username) }; | ||
| 42 | DBT data; | ||
| 43 | |||
| 44 | int res = db->get(db, &key, &data, 0); | ||
| 45 | if ( res == 0 ) { | ||
| 46 | user_type *user = data.data; | ||
| 47 | printf("Fullname: %s, Age: %d\n", user->fullname, user->age); | ||
| 48 | } | ||
| 49 | } | ||
| 50 | #endif | ||
| 51 | |||
| 52 | { | ||
| 53 | DBT key, data; | ||
| 54 | int err = db->seq(db, &key, &data, R_FIRST); | ||
| 55 | while ( !err ) { | ||
| 56 | user_type *user = data.data; | ||
| 57 | printf("Fullname: %s, Age: %d\n", user->fullname, user->age); | ||
| 58 | |||
| 59 | err = db->seq(db, &key, &data, R_NEXT); | ||
| 60 | } | ||
| 61 | } | ||
| 62 | |||
| 63 | db->close(db); | ||
| 64 | } | ||
| 65 | return EXIT_SUCCESS; | ||
| 66 | } | ||
