SQLAlchemy ORM Connection String Error
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-21-2022 12:55 PM
We tried to insert records to Delta table using ORM. It looks like only SQLAlchemy has option to connect to Delta table.
We tried the following code
from sqlalchemy import Column, String, DateTime, Integer, create_engine
engine = create_engine("databricks+pyhive://token:<mytoken>@dbc-5a522242-184b.cloud.databricks.com:443/default", connect_args={"http_path": "/sql/1.0/endpoints/955e53e5f53e8105"}, echo=True)
engine = create_engine("databricks+pyhive://token:<mytoken> @dbc-5a522242-184b.cloud.databricks.com:443/default", connect_args={"cluster": "Starter Warehouse"}, echo=True)
Base.metadata.create_all(engine)But there is errors
EOFError Traceback (most recent call last)
<command-1061455742937075> in <module>
1 # 3 - create table in db (migration)
2 print(BASE_DIR)
----> 3 Base.metadata.create_all(engine)
/local_disk0/pythonVirtualEnvDirs/virtualEnv-7c147b6d-75bb-4981-8ab3-879a1c8e5fa7/lib/python3.8/site-packages/sqlalchemy/sql/schema.py in create_all(self, bind, tables, checkfirst)
4915 if bind is None:
4916 bind = _bind_or_error(self)
-> 4917 bind._run_ddl_visitor(
4918 ddl.SchemaGenerator, self, checkfirst=checkfirst, tables=tables
4919 )
/local_disk0/pythonVirtualEnvDirs/virtualEnv-7c147b6d-75bb-4981-8ab3-879a1c8e5fa7/lib/python3.8/site-packages/sqlalchemy/engine/base.py in _run_ddl_visitor(self, visitorcallable, element, **kwargs)
3225
3226 def _run_ddl_visitor(self, visitorcallable, element, **kwargs):
-> 3227 with self.begin() as conn:
3228 conn._run_ddl_visitor(visitorcallable, element, **kwargs)
3229