Snowflake connector to python - python

I have python 3.11.0 version and I want to connect to snowflake as well.
I have installed the package, but my VS Code doesn't recognize it.
I saw in Snowflake Documentation that Snowflake Connector works with Python versions up to 3.9
https://docs.snowflake.com/en/user-guide/python-install.html
Not sure if I can make it work or I need to re-install an older version of python.
Thank you
I tried pip install Snowflake, but it says I already have it installed.

As mentioned in the documentation, the Snowflake Python connector requires a Python version up to 3.9 - therefore yes, you would have to have installed one of the supported versions.
This ensures that the connector was tested and works with these versions of Python as well as ensures that your Python installation includes critical security fixes.

Related

Is there a version of MySQL connector for Python 3.9?

I'm new to Python and I just wanted to know if there is any connector for Python 3.9
I've looked at MySQL page but the last Python connector on the page (version 8.0.22) isn't compatible with the 3.9 version.
Any help? Am I not finding it or does it not exist for now?
Thanks in advance.
User Nuno Mariz commented
The support for Python 3.9 will be added in the upcoming Connector/Python 8.0.24 that will be released soon. Nonetheless Connector/Python 8.0.22/23 works with Python 3.9, only the metadata in packaging doesn't comply
So while mysql-connector-python page on pypi did not assert compatibility with Python 3.9 at the time of asking, v. 8.0.22/23 would still work if installed under Python 3.9.
Don't call your python script "mysql.py", rename it and it will works.

How to install latest python version for SQL Server

I have installed SQL Server 2017 with Python but it came with Python 3.5.2 and Anaconda 4.2.0. Is there a way to upgrade the Python to 3.7?
This is the only official document I found and tried
https://learn.microsoft.com/en-us/sql/advanced-analytics/r/use-sqlbindr-exe-to-upgrade-an-instance-of-sql-server?view=sql-server-2017 but even this installed 3.5
Please help.
Thanks,
Avinash
It may be easiest to open https://www.python.org/downloads/ and install the latest release. If you have Visual Studio 2017/2019, open the solution explorer, open your python project (or import a new one into a Python Application) and point your application to this latest version. Either way, the latest version will exist on the machine. Note that some versions may be 32 bit and not 64 bit.
PyCharm Community Edition is another option.
this may help. a brief scan of it looks like there is a package created just for this purpose, dating python version and packages on SQL server machines:
https://learn.microsoft.com/en-us/sql/machine-learning/package-management/install-additional-python-packages-on-sql-server?view=sql-server-ver15
I am using pyodbc with Python 3.7. I am running an older version of SQL-Server, but it should work on your version too.
So just install Python 3.7, import pyodbc, set the "driver" specifically to a SQL Server client and you are good to go.

python 3.5 update sqlite3 version

I have installed python 3.5.3 installed on my Windows machine. I check the SQLite version via the command sqlite3.sqlite_version. It is version 3.8.11.
My question is how can I update the SQLite version to 3.26? I wasn't sure if there was a 3rd party library or if I need to update sqlite3 library.
Thanks.
Just update the sqlite in the system by a newer version. Python will use it. It is not 3rd party. It is included in Python. I am not completely sure but I think it is a dynamically loaded library installed with Python but that you can upgrade by yourself. At least in my system different Python versions report the same sqlite3 version.

Connecting Python with MySQL - Getting Started

I have MySQL and Python on my computer. I want to write statements in Python scripts that extract (SELECT) data from a MySQL schema and other statements that INSERT data into MySQL tables.
My version of Python is 2.7, and I installed it via Anaconda.
From what I have read it would be appropriate to use the module “import MySQLdb”. But before doing so, I would need to download and install some code that supports this module. The only code that I have found that might work are mysql-connector-python-2.1.5-py2.7-winx64.msi or mysql-connector-python-2.1.5-py2.7-win32.msi.
When I execute either of those MSI’s, the result is a pop-up with an error message: “Python 2.7 not found. We only support Python installed using the Microsoft Windows Installer (MSI) downloaded from http://www.python.org/download/. Please check the Connector/Python manual on http://dev.mysql.com/doc/ for more information."
I skimmed the Connector/Python manual to find more information about the incompatibility; no luck. I checked the PATH on my computer; it does include c:\users\sncole\Anaconda, and python.exe does reside in this folder.
Is there any way that I can use one of the MSI’s mentioned above, or is there another download that I can use for Python that was installed via Anaconda?
Assuming that you have installed Anaconda correctly, conda should be in your path. Then you can install mysql connector by typing
conda install -c anaconda mysql-connector-python

pyodbc and python 3.4 on Windows

pyodbc is a very nice thing, but the Windows installers only work with their very specific python version. With the release of Python 3.4, the only available installers just stop once they don't see 3.3 in the registry (though 3.4 is certainly there).
Copying the .pyd and .egg-info files from a 3.3 installation into the 3.4 site-packages directory doesn't seem to do the trick. When importing pyodbc, an ImportError is thrown: ImportError: DLL load failed: %1 is not a valid Win32 application.
Is there a secret sauce that can be added to make the 3.3 file work correctly? Or do we just need to wait for a 3.4 installer version?
The different versions of Python are (for the most part) not binary-compatible, and thus any compiled extensions (such as pyodbc) will only work for a specific version.
Note that pure-Python packages (the ones that are completely written in Python, and have no non-Python dependencies) do not need to be compiled, and thus can be written to support multiple Python versions.
Also note that it is technically possible for a compiled extension to be written such that it works for Python 3.2 as well as 3.3, 3.4, and the future 3.x's to come, but they have to limit themselves to the "stable ABI" as specified by PEP 384, and most extensions do not do this. As far as I know, pyodbc is not limited to the stable ABI and must be compiled separately for each Python version.
That said, it is also possible to compile your own version of pyodbc from source, as long as you have the required tools and expertise. (But I'm guessing if you're asking this question, you don't. I don't either, otherwise I'd include some tips in this answer.)
As you have already commented, pypyodbc may be your best bet, as it is a pure-Python package.
Installing pypyodbc can be done via the commandline:
C:\Python34\Scripts>pip install pypyodbc
Using it as drop-in replacement of pyodbc can be done using:
import pypyodbc as pyodbc
[The current version of pyodbc at the time of this edit is 3.0.10, and it does support Python 3.4. Of course, it's still useful to be aware of pypyodbc in case pyodbc falls behind again when future versions of Python are released.]
Did you try to download from here? It has an unofficial build for 3.4. I did a quick test myself, looks like it's working fine for me.
I fixed this by installing pyodbc 3.0.10. The latest version of pyodbc didn't work on Windows with Python 3.4
However pyodbc 3.0.10 did work for me
Install command on command prompt : pip install pyodbc 3.0.10

Categories