{"id":19767667,"url":"https://github.com/erikwegner/rust-oracle-database-poc","last_synced_at":"2026-06-05T21:31:41.627Z","repository":{"id":137330547,"uuid":"589157466","full_name":"ErikWegner/rust-oracle-database-poc","owner":"ErikWegner","description":"Access Oracle database from Rust application","archived":false,"fork":false,"pushed_at":"2023-01-15T10:51:50.000Z","size":9,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-11T00:27:30.371Z","etag":null,"topics":["oracle-database","rust-lang"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ErikWegner.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-01-15T09:01:09.000Z","updated_at":"2023-01-15T10:02:23.000Z","dependencies_parsed_at":null,"dependency_job_id":"1043217c-bbe4-40e8-81b9-8c0137f2212a","html_url":"https://github.com/ErikWegner/rust-oracle-database-poc","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ErikWegner%2Frust-oracle-database-poc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ErikWegner%2Frust-oracle-database-poc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ErikWegner%2Frust-oracle-database-poc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ErikWegner%2Frust-oracle-database-poc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ErikWegner","download_url":"https://codeload.github.com/ErikWegner/rust-oracle-database-poc/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241100181,"owners_count":19909655,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["oracle-database","rust-lang"],"created_at":"2024-11-12T04:31:33.624Z","updated_at":"2025-02-28T04:18:57.294Z","avatar_url":"https://github.com/ErikWegner.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# rust-oracle-database-poc\n\nAccess Oracle database from Rust application\n\nInspired by https://blogs.oracle.com/timesten/post/using-rust-with-oracle-databases\n\n## Driver setup\n\nSee https://oracle.github.io/odpi/doc/installation.html#linux\n\n```bash\n# To be the root user, use sudo -i\napt install libaio1\nmkdir -p /opt/oracle\ncd /opt/oracle\nwget https://download.oracle.com/otn_software/linux/instantclient/218000/instantclient-basiclite-linux.x64-21.8.0.0.0dbru.zip\nunzip instantclient-basiclite-linux.x64-21.8.0.0.0dbru.zip\necho /opt/oracle/instantclient_21_8 \u003e /etc/ld.so.conf.d/oracle-instantclient.conf\nldconfig\n```\n\n## Database setup\n\n```\ndocker exec -it rust-oracle-database_devcontainer-db-1 /bin/bash\n\nsqlplus / as sysdba\n\nALTER SESSION SET CONTAINER = XEPDB1;\nCREATE USER rustapp IDENTIFIED BY kuMxNAZ2xYSh CONTAINER=CURRENT;\nGRANT ALL PRIVILEGES TO rustapp CONTAINER=CURRENT;\n\nexit\n\nexport NLS_LANG=GERMAN_GERMANY.UTF8\nsqlplus rustapp/kuMxNAZ2xYSh@XEPDB1\n\nCREATE TABLE Persons (\n    PersonID int,\n    LastName varchar(255),\n    FirstName varchar(255),\n    Address varchar(255),\n    City varchar(255)\n);\n\nINSERT INTO Persons (PersonID, LastName, FirstName, Address, City) VALUES (1, 'Wegner', 'Erik', 'Blumenstraße 1', 'Neustadt');\nINSERT INTO Persons (PersonID, LastName) VALUES (2, '++anonymized');\n```\n\n## Run\n\nTo run the application: `SVC_NAME=//db/XEPDB1 cargo run`\n\nOutput:\n\n    Service Name is //db/XEPDB1\n\n    Oracle Client Version: 21.8.0.0.0\n\n    Database Server Version: 21.3.0.0.0\n\n    Server Banner: Oracle Database 21c Express Edition Release 21.0.0.0.0 - Production\n    Version 21.3.0.0.0\n\n    PERSONID LASTNAME FIRSTNAME ADDRESS CITY \n    1,Wegner,Erik,Blumenstraße 1,Neustadt\n    2,++anonymized,NULL,NULL,NULL\n\n    Bye\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ferikwegner%2Frust-oracle-database-poc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ferikwegner%2Frust-oracle-database-poc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ferikwegner%2Frust-oracle-database-poc/lists"}