منصوبے کے بارے میں
jetdb مائیکروسافٹ ایکسیس ڈیٹا بیس فائلوں (.mdb اور .accdb) کو پڑھنے کے لیے ایک خالص Rust لائبریری اور کمانڈ لائن ٹول ہے۔ اس میں کوئی C/C++ انحصار یا FFI نہیں ہے، جو اسے macOS، Windows، Linux اور یہاں تک کہ WebAssembly (بشمول براؤزر ٹارگٹس) پر پورٹیبل بناتا ہے۔ یہ Access 97 (Jet3) سے لے کر Access 2019 (ACE17) تک معاونت کرتا ہے۔
## تنصیب
- **CLI ٹول**: `cargo install jetdb-cli`
- **لائبریری**: اپنی Cargo.toml میں `jetdb = "0.2"` شامل کریں۔
## CLI استعمال کی مثالیں
- `jetdb --password secret tables protected.accdb` – پاس ورڈ سے محفوظ فائل کھولیں
- `jetdb ver database.mdb` – ڈیٹا بیس انجن ورژن دکھائیں
- `jetdb tables database.mdb` – ٹیبلز کی فہرست بنائیں
- `jetdb schema database.mdb` – ٹیبل اسکیما دکھائیں (کالم، انڈیکس، تعلقات)
- `jetdb schema database.mdb --ddl sqlite` – SQLite، PostgreSQL، MySQL، یا Access کے لیے DDL بنائیں
- `jetdb export database.mdb Table1` – ٹیبل ڈیٹا کو CSV کے طور پر ایکسپورٹ کریں
- `jetdb queries list database.mdb` – محفوظ شدہ کوئریز کی فہرست بنائیں
- `jetdb queries show database.mdb SelectQuery` – محفوظ شدہ کوئری کی SQL دکھائیں
- `jetdb vba list database.mdb` – VBA ماڈیولز کی فہرست بنائیں
- `jetdb vba show database.mdb Module1` – VBA سورس کوڈ دکھائیں
- `jetdb macro list database.accdb` – نامزد میکروز کی فہرست بنائیں
- `jetdb macro show database.accdb AutoExec` – میکرو کو متن کے طور پر دکھائیں
- `jetdb prop database.mdb Table1` – آبجیکٹ خصوصیات دکھائیں
## لائبریری کا استعمال
```rust
use jetdb::{PageReader, read_catalog, read_table_def, read_table_rows};
fn main() -> Result<(), jetdb::FileError> {
let mut reader = PageReader::open("database.mdb")?;
let catalog = read_catalog(&mut reader)?;
for entry in &catalog {
println!("{}", entry.name);
}
let entry = &catalog[0];
let table_def = read_table_def(&mut reader, &entry.name, entry.table_page)?;
let result = read_table_rows(&mut reader, &table_def)?;
for row in &result.rows {
println!("{:?}", row);
}
Ok(())
}
```
## معاون ورژنز
| انجن | Access ورژن | فائل فارمیٹ |
|--------|---------------|-------------|
| Jet3 | Access 97 | .mdb |
| Jet4 | Access 2000/2003 | .mdb |
| ACE12 | Access 2007 | .accdb |
| ACE14 | Access 2010 | .accdb |
| ACE15 | Access 2013 | .accdb |
| ACE16 | Access 2016 | .accdb |
| ACE17 | Access 2019 | .accdb |
## خصوصیات
- ٹیبل میٹاڈیٹا پڑھیں (کالم، انڈیکس، تعلقات)
- Rust ٹائپ میپنگ کے ساتھ قطار ڈیٹا پڑھیں (Text, Long, Double, Timestamp, Money, Memo, OLE, GUID, وغیرہ)
- SQLite، PostgreSQL، MySQL، اور Access SQL کے لیے DDL بنائیں
- محفوظ شدہ کوئریز سے SQL بازیافت کریں
- VBA ماڈیول سورس کوڈ نکالیں
- آبجیکٹ خصوصیات پڑھیں (LvProp)
- RC4-انکرپٹڈ ڈیٹا بیسز اور پاس ورڈ سے محفوظ .accdb فائلیں ڈکرپٹ کریں (Agile, RC4 CryptoAPI, Standard/NonStandard AES)
- Jet3 (Latin-1) اور Jet4+ (UTF-16LE، کمپریسڈ ٹیکسٹ) انکوڈنگز کو ہینڈل کریں
- WebAssembly پر چلائیں، بشمول براؤزر ٹارگٹ (`wasm32-unknown-unknown`)، `PageReader::open_reader` کے ساتھ میموری میں بائٹس سے ڈیٹا بیس کھول کر
## حدود
- صرف پڑھنے کے لیے (لکھنے کی معاونت نہیں)
- انڈیکس پر مبنی تلاش نہیں (صرف مکمل ٹیبل اسکین)
- تمام قطاریں میموری میں لوڈ کرتا ہے؛ بہت بڑے ٹیبلز کے ساتھ میموری کے استعمال کا خیال رکھیں
- پاس ورڈ سے محفوظ .accdb فائلوں کے لیے `PageReader::open_with_password` درکار ہے (Agile, RC4 CryptoAPI, Standard/NonStandard AES)
- ریپلیکیشن ڈیٹا بیسز (.mda) غیر آزمودہ ہیں
## AI ایجنٹ انٹیگریشن
[agent-skills](https://github.com/dominion525/agent-skills) ریپوزٹری کے ذریعے Claude Code Skill کے طور پر دستیاب ہے۔ Claude Code Plugin Marketplace کے ذریعے انسٹال کریں:
```
/plugin marketplace add dominion525/agent-skills
/plugin install jetdb-cli@dominion525-skills
```
یا Vercel skills CLI کے ذریعے:
```bash
npx skills add dominion525/agent-skills --skill jetdb-cli -a claude-code
```
## اعترافات
- [mdbtools](https://github.com/mdbtools/mdbtools) – HACKING.md MDB/ACCDB فائل فارمیٹ کو سمجھنے کے لیے ایک انمول حوالہ تھا
- [Jackcess](https://github.com/spannm/jackcess) (Apache License 2.0) – زیادہ تر ٹیسٹ .mdb/.accdb فائلیں اس پروجیکٹ سے حاصل کی گئی ہیں
- [jackcessencrypt](https://github.com/jahlborn/jackcessencrypt) (Apache License 2.0) – انکرپشن سے متعلق ٹیسٹ فائلیں
- [MS-OFFCRYPTO](https://learn.microsoft.com/en-us/openspecs/office_file_formats/ms-offcrypto/) – Office دستاویز انکرپشن کے لیے مائیکروسافٹ کی تفصیلات
## لائسنس
MIT OR Apache-2.0
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.