My Personal SQL Development Tool Evaluation Method
But even Sequel Pro doesn’t feel like the best tool to work on databases with due to the lack of Auto Commit, multiple SQL executions, auto-completion, and Import/Export options. Of the 10 most common IDE tools available on Mac OS, I prefer using Sequel Pro because of its simple and intuitive UI. However, for me, one of the most inconvenient things about using a Mac was the lack of database tools that provided the functionality and convenience of software like SQLGate and Toad, which are only supported by Windows. Because of this trend, many development-oriented startups including Naver (Korean equivalent of Google), Kakao (Popular Korean Messenger app), and Woowa Bros (most used food delivery service in Korea) also use Mac for a development tool. As a result, the number of developers who use Mac every year around the world is increasing. Image 1: result of preferred Operating System by developers at Stack OverflowĪccording to a survey conducted by Stack Overflow for their users, more than 25 percent of developers use Mac and more than 50 percent use operating systems other than Windows.
Another advantage is how IDE software commonly used to develop on Android and on the web like Android Studio, WebStorm, and IntelliJ IDEA, are more stable and powerful in MacOS than Windows.
I’ve been a loyal Mac OS user since then, and I can comfortably say that one of the biggest advantages of using a Mac is that the Unix-based operating system provides a built-in terminal environment and allows users to add iTunes and Shell to the terminal to create a convenient environment. In 2011, when iOS application development was very popular, I bought a MacBook to begin dabbling in app development. Why Isn’t There an Intelligent Database IDE for Mac?
So I’d like to share my journey to find my favorite database tool for Mac and share my fairly systematic and highly subjective evaluation of the database tools that I found.
But I never found a unique tool that met all my needs. To begin with, I’ve been using more than 10 different free and paid database tools over the past six years. So I spent a lot of time trying to find my favorite database IDE. When coding for databases and SQL, I also often blamed my tools. I learned during my search that having good tools is the most efficient way to make coding more comfortable and enjoyable. I couldn’t make my own, so I searched instead for other tools created by established craftsmen. But when I couldn’t reach it, I began to realize the tools available to me did not have the features to do everything I wanted. In my years of developing, I have always striven to reach a higher level of craftsmanship. And if developers are frustrated with the performance of their tools, instead of blaming the tool, they just make a new one. In the developer world, this adage also applies. This makes error recovery very easy, but you must remember to call commit.Why I Decided to Create a DB ToolThey say a good craftsman never blames his tools. You must call commit or your changes will be lost! When the connection is closed, any pending changes will be rolled back. Or better using parameters cursor.execute("insert into products(id, name) values (?, ?)", 'pyodbc', 'awesome library') The insert example in the document is then # Do the insertĬursor.execute("insert into products(id, name) values ('pyodbc', 'awesome library')") Using the SQL Server Management Studio (SSMS) Express, I can find the database and connect without problems.īut when I use pyodbc to connect to the same server using: import pyodbcĬonn = nnect('DRIVER= SERVER=localhost DATABASE=testdb UID=me PWD=pass') I have a MS SQL database in the same network but in other computer.