1 unstable release
0.1.0 | Mar 24, 2023 |
---|
#2070 in Database interfaces
150KB
1K
SLoC
rfirebird - Firebird tool for raw access the database files
This is a study and demonstration project. Only use this project with offline copy of your database file.
Examples
Tables of a database
cargo run tables dbs/employee.fdb
name | is_system_table | relation
--------------------------+-----------------+----------
RDB$PAGES | true | 0
RDB$DATABASE | true | 1
RDB$FIELDS | true | 2
RDB$INDEX_SEGMENTS | true | 3
Columns of a table
cargo run columns dbs/employee.fdb sales
position | name | size | type | scale | is_not_null | is_computed
----------+--------------+------+-----------+-------+-------------+-------------
0 | PO_NUMBER | 8 | Char | 0 | true | false
1 | CUST_NO | 4 | Integer | 0 | true | false
2 | SALES_REP | 2 | Smallint | 0 | false | false
Values of a table
cargo run rows dbs/employee.fdb customer
CUST_NO | CUSTOMER | CONTACT_FIRST | CONTACT_LAST | PHONE_NO | ADDRESS_LINE1 | ADDRESS_LINE2 | CITY | STATE_PROVINCE | COUNTRY | POSTAL_CODE | ON_HOLD
---------+---------------------------+---------------+---------------+-----------------+-----------------------------+---------------+-------------------+----------------+-------------+-------------+---------
1001 | Signature Design | Dale J. | Little | (619) 530-2710 | 15500 Pacific Heights Blvd. | | San Diego | CA | USA | 92121 |
1002 | Dallas Technologies | Glen | Brown | (214) 960-2233 | P. O. Box 47000 | | Dallas | TX | USA | 75205 | *
Goals
- Open database files
- Access tables
- Read data rows
- Handle big database files
- Support firebird 1.0 files
- Support firebird 2.0 files
- Support firebird 3.0 files
- Support firebird 4.0 files
Types
- Varchar
- Char
- Int
- SmallInt
- Float
- Decimal
- Numeric
- Timestamp
- Date
- Time
CLI
- Open .fdb files
- List tables
- Show records of a table
References
Dependencies
~0.4–1.6MB
~32K SLoC