ipython-sql icon indicating copy to clipboard operation
ipython-sql copied to clipboard

In Colab: Connecting fails: "got an unexpected keyword argument 'bind'"

Open jsmorph opened this issue 2 years ago • 6 comments

Connecting like

%sql mysql+pymysql://{user}:{password}@{host}/shared

now produces:

__init__() got an unexpected keyword argument 'bind'
Connection info needed in SQLAlchemy format, example:
               postgresql://username:password@hostname/dbname
               or an existing connection: dict_keys([])

This error started happening in the last 24 hours.

Ideas?

jsmorph avatar Feb 02 '23 19:02 jsmorph

I'm not sure what's causing this, but it looks like it's related to SQLAlchemy version 2.0.0. As a temporary workaround, I added !pip install SQLAlchemy==1.4.46 before %load_ext sql, which fixed the problem.

kpgaffney avatar Feb 03 '23 00:02 kpgaffney

Thanks very much for the quick fix.

FWIW, I'm now pinning versions like this in Colab:

!pip install SQLAlchemy==1.4.46
!pip install PyMySQL==1.0.2 # or whichever
!pip install ipython-sql==0.4.1

jsmorph avatar Feb 03 '23 01:02 jsmorph

Same problem here, but when I install SQLAlchemy 1.4.46 it does not help. In my case I'm running a local jupyterlab (version 3.6.1).

image

rwarren avatar Feb 14 '23 20:02 rwarren

Same issue, pinning sqlAclhemny or ipython-sql does not work.

tjerkw avatar Feb 16 '23 13:02 tjerkw

@tjerkw and @rwarren, did you restart the runtime after the pinned pip installs? When I do these installs and then restart the runtime, things work. (Menu: Runtime -> Restart runtime.)

jsmorph avatar Feb 16 '23 14:02 jsmorph

@jsmorph I thought I had restarted, but apparently not! After a fresh reboot today, this is is working perfectly fine after installing SQLAlchemy==1.4.46. 👍

rwarren avatar Feb 16 '23 20:02 rwarren