4paradigm / 4paradigm/OpenMLDB

Mock commit statement for open-mysql-db by using panda dataframe

Offen
#3,850 0 Kommentare 0 Reaktionen 1 zugewiesene Person Beansprucht von @yangwucheng Auf GitHub ansehen
Vorherrschende Sprache
C++
Sterne
1.7k
Forks
331
Ø Merge
12 T. 12 Std.
Gemergte PRs (30 T.)
1

Beschreibung

**Describe the feature you'd like**

Now we are using sqlalchemy and pandas dataframe. The method of "to_sql" is not supported which uses commit statements.

Here is the example code.

```
import pandas as pd
from sqlalchemy import create_engine

# Create a Pandas DataFrame (replace this with your actual data)
data = {'id': [1, 2, 3],
'name': ['Alice', 'Bob', 'Charlie'],
'age': [25, 30, 35]}
df = pd.DataFrame(data)

# Create a MySQL database engine using SQLAlchemy
engine = create_engine('mysql://username:password@host/db_name')

# Replace 'username', 'password', 'host', and 'db_name' with your actual database credentials

# Define the name of the table in the database where you want to write the data
table_name = 'your_table_name'

# Write the DataFrame 'df' into the MySQL table
df.to_sql(table_name, engine, if_exists='replace', index=False)

# 'if_exists' parameter options:
# - 'fail': If the table already exists, an error will be raised.
# - 'replace': If the table already exists, it will be replaced.
# - 'append': If the table already exists, data will be appended to it.

print("Data written to MySQL table successfully!")
```

And we may get the error like this.

```
[1002] create logic plan tree failed--Un-support statement type: CommitStatement'
```

**Additional context**

Add any other context or screenshots about the feature request here.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

The issue is about supporting commit statements when using pandas DataFrame.to_sql with SQLAlchemy on OpenMLDB. Look at the OpenMLDB SQL engine's handling of CommitStatement. Start by searching for 'CommitStatement' in the codebase, likely in the SQL parser or planner. Check how other statement types are supported and see where commit logic needs to be added. Run the provided example to reproduce the error and verify the fix.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
mysql, pandas, python, sqlalchemy
Bereich
data-engineering, databases, machine-learning
Issue-Typ
Feature
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.