semvec/pypi-packages huggingface dataset:
db-crud-automate 0.0.3
A Python package for connecting with databases.
License: MIT
Requires Python: >=3.7

# 🚀 Unified Database Connector Package

## Overview

**DB Crud Automate* is a powerful tool designed to simplify and automate database operations, particularly for MongoDB. This library allows developers to easily connect to a MongoDB database and perform Create, Read, Update, and Delete (CRUD) operations with minimal setup and code. The goal of Database Automator is to streamline database interactions and enhance productivity for developers working with databases.

## Goal

The primary objective of Database Automator is to automate functionalities for connecting to MongoDB and executing CRUD operations efficiently. The library aims to provide a user-friendly interface that abstracts the complexities of database interactions.

### Future Improvements

- Support for additional databases such as **MySQL**, **Cassandra**, and others.
- Enhanced error handling and logging features.
- More comprehensive documentation and examples soon.

## Installation

To install Database Automator, you can use pip. Run the following command in your terminal:

```bash
pip install database-automator-v1
```

## Features

- ✅ **Easy Connection:** Simplifies the process of connecting to MongoDB.
- 🔄 **CRUD Operations:** Provides straightforward methods to perform Create, Read, Update, and Delete operations.
- 🌱 **Extensibility:** Future support for other databases such as MySQL and Cassandra.

## Usage

Here’s a quick example of how to use the `mongo_operation` class to connect to a MongoDB database and perform CRUD operations:

### Example

```python
from mongodb_connect.mongo_crud import mongo_operation

# Initialize the MongoDB operation class
mongo_client = mongo_operation(client_url='your_mongodb_uri', 
                               database_name='your_database_name', 
                               collection_name='your_collection_name')

# Create a new record
record = {'name': 'John Doe', 'age': 30}
mongo_client.insert_record(record, collection_name='your_collection_name')

# Bulk insert records from a CSV file
mongo_client.bulk_insert('path_to_your_file.csv', collection_name='your_collection_name')

# You can also use a list of records for insertion
records_list = [
    {'name': 'Alice', 'age': 25},
    {'name': 'Bob', 'age': 28}
]
mongo_client.insert_record(records_list, collection_name='your_collection_name')
```

## Contributing

🤝 Contributions are welcome! If you have suggestions or improvements, please [open an issue](https://github.com/shaheennabi/Unified-Database-Connector-Package/issues) or submit a pull request.

## License

📝 This project is licensed under the MIT License. See the [LICENSE](./LICENSE) file for details.

## Contact

📧 For questions or support, feel free to reach out via email at [mailmessage30@gmail.com](mailto:mailmessage30@gmail.com).

---

### Notes

- Replace `your_mongodb_uri`, `your_database_name`, `your_collection_name`, and `your_email@example.com` with appropriate values.
- Adjust any sections based on your specific implementation and requirements.
python-nanoid 2.0.0
A tiny, secure, URL-friendly, unique string ID generator for Python
License: MIT

# Nano ID

A tiny, secure, URL-friendly, unique string ID generator for Python.

* __Safe__. It uses cryptographically strong random APIs and tests distribution of symbols.
* __Compact__. It uses a larger alphabet than UUID (A-Za-z0-9_-). So ID size was reduced from 36 to 21 symbols.


## Installation

```sh
pip install python-nanoid
```


## Usage

### Normal

The main module uses URL-friendly symbols (A-Za-z0-9_-) and returns an ID with 21 characters (to have a collision probability similar to UUID v4).

```python
from nanoid import generate

generate() # => NDzkGoTCdRcaRyt7GOepg
```

Symbols `-,.()` are not encoded in the URL. If used at the end of a link they could be identified as a punctuation symbol.

If you want to reduce ID length (and increase collisions probability), you can pass the length as an argument.

```python
from nanoid import generate

generate(size=10) # => "IRFa-VaY2b"
```

Don’t forget to check the safety of your ID length in ID [collision probability calculator](https://zelark.github.io/nano-id-cc/).


## Custom Alphabet or Length

If you want to change the ID's alphabet or length you can use the internal generate module.

```python
from nanoid import generate

generate('1234567890abcdef', 10) # => "4f9zd13a42"
```

Non-secure API is also available:

```python
from nanoid import non_secure_generate

non_secure_generate('1234567890abcdef', 10)
```


## Tools

* [ID size calculator](https://zelark.github.io/nano-id-cc/) to choice smaller ID size depends on your case.
nanoid-dictionary with popular alphabets to use with nanoid/generate.
* [`nanoid-dictionary`](https://pypi.org/project/nanoid-dictionary/) with popular alphabets to use.


## Other Programming Languages

* [C#](https://github.com/codeyu/nanoid-net)
* [Clojure and ClojureScript](https://github.com/zelark/nano-id)
* [Crystal](https://github.com/mamantoha/nanoid.cr)
* [Dart](https://github.com/pd4d10/nanoid)
* [Go](https://github.com/matoous/go-nanoid)
* [Elixir](https://github.com/railsmechanic/nanoid)
* [Haskell](https://github.com/4e6/nanoid-hs)
* [Java](https://github.com/aventrix/jnanoid)
* [JavaScript](https://github.com/ai/nanoid)
* [Nim](https://github.com/icyphox/nanoid.nim)
* [PHP](https://github.com/hidehalo/nanoid-php)
* [Ruby](https://github.com/radeno/nanoid.rb)
* [Rust](https://github.com/nikolay-govorov/nanoid)
* [Swift](https://github.com/antiflasher/NanoID)


## Changelog
- v2.0.0
    - Replace ~ to - in default alphabet.
    - Add non-secure fast generator.
    - Reduce default characters from 22 to 21.
- v0.3.0
    - Fix array out of bound error.


## Credits

- Andrey Sitnik for [Nano ID](https://github.com/ai/nanoid).
- [Dair Aidarkhanov](https://github.com/aidarkhanov) for main contribution to v2.0, and adding test cases.
- Aleksandr Zhuravlev for [ID collision probability](https://zelark.github.io/nano-id-cc/).