tag:blogger.com,1999:blog-11683713.post114472828105800165..comments2024-01-12T21:16:50.520-08:00Comments on Spyced: Introducing SqlSoupJonathan Ellishttp://www.blogger.com/profile/11003648392946638242noreply@blogger.comBlogger12125tag:blogger.com,1999:blog-11683713.post-85163572671484650572008-02-10T13:36:00.000-08:002008-02-10T13:36:00.000-08:00A two year old blog entry is not where you should ...A two year old blog entry is not where you should look for tech support. :)<BR/><BR/>Briefly, sqlsoup uses the SA connection pool, so it's normal to see idle connections in a long-running process.<BR/><BR/>If you need more details, you should ask on the SA mailing list.Jonathan Ellishttps://www.blogger.com/profile/11003648392946638242noreply@blogger.comtag:blogger.com,1999:blog-11683713.post-26523508537981847792008-02-10T12:23:00.000-08:002008-02-10T12:23:00.000-08:00I like this extension very much! nice work but jus...I like this extension very much! nice work but just a little question, how do we do to close completly connection?<BR/>I'm using it on the net but always have a lot of sleep connection that appear... Thanks a lot for answering... and sorry for my bad english!Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-11683713.post-57680090144497924242007-10-21T12:47:00.000-07:002007-10-21T12:47:00.000-07:00Also, after doing "db._metadata.reflect()" all col...Also, after doing "db._metadata.reflect()" all column names are readed as unicode. and it is good so! the problem is, that "db.mycolumnname" is then rejected:<BR/><BR/> File "build/bdist.linux-i686/egg/sqlalchemy/ext/sqlsoup.py", line 422, in class_for_table<BR/>TypeError: type() argument 1 must be string, not unicodevakhttps://www.blogger.com/profile/13157594553222689990noreply@blogger.comtag:blogger.com,1999:blog-11683713.post-27108418699969789502007-10-21T12:41:00.000-07:002007-10-21T12:41:00.000-07:00great extention according to a description. can't ...great extention according to a description. can't get it fullly working though.<BR/><BR/>when I add "db._metadata.reflect()" it seem to do the essential part... <BR/><BR/>Maybe the doc is out-of-date?vakhttps://www.blogger.com/profile/13157594553222689990noreply@blogger.comtag:blogger.com,1999:blog-11683713.post-80844281170525451312007-06-30T14:46:00.000-07:002007-06-30T14:46:00.000-07:00The point to SqlAlchemy/SqlSoup isn't to replace S...The point to SqlAlchemy/SqlSoup isn't to replace SQL. The point is to develop SQL based programs FASTER and make them more MAINTAINABLE. A retard should be able to see how much less stupid repetitive error-prone boilerplate code is in an SqlSoup based program. If you NEED the phenmonial cosmic power of raw SQL, hey use it, it's available through the SqlAlchemy API. If you insist on doing everything by hand, great, I hope your clients find out that I can do the same work in a fraction of a time.N1YWBhttps://www.blogger.com/profile/06177063769610847304noreply@blogger.comtag:blogger.com,1999:blog-11683713.post-1168644595460090682007-01-12T15:29:00.000-08:002007-01-12T15:29:00.000-08:00I agree Sql just plain works. But for a lot of new...I agree Sql just plain works. But for a lot of newbies its hard to take it all at once. I been working with SQL for along time and still learning new ways to manipulate my queries. But, I remember those days when i was struggling with it... a tool like this would have been great. It makes sql look more like python. so new users learning python will probably find this an easy way to store and retrieve their data. Which I think was the point. But, for simple stuff, I find my self using it a lot. It saves time for simple stuff. I think it is a great tool.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-11683713.post-1162761187383861262006-11-05T13:13:00.000-08:002006-11-05T13:13:00.000-08:00Well, SQL sucks for constructing complicated queri...Well, SQL sucks for constructing complicated queries. sqlalchemy shines at stuff that does a random number of joins depending upon it's parameters; dealing with a number of SQL aspects like quoting, and so on.<BR/><BR/>Put bluntly, when I think about that API function that does that, I'm getting headaches. Trying to imagine doing this API method in plain SQL (aka string manipulation in Python) is beyond my scale for pain.<BR/><BR/>yaccAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-11683713.post-1154667611824342772006-08-03T22:00:00.000-07:002006-08-03T22:00:00.000-07:00Glad you like it.Yeah, a lot of mysql weird-isms a...Glad you like it.<BR/><BR/>Yeah, a lot of mysql weird-isms aren't supported yet by SA and hence SqlSoup. If you create a ticket with a test case at sqlalchemy.org/trac/, we'll fix it.Jonathan Ellishttps://www.blogger.com/profile/11003648392946638242noreply@blogger.comtag:blogger.com,1999:blog-11683713.post-1154664139602260722006-08-03T21:02:00.000-07:002006-08-03T21:02:00.000-07:00This is an awesome lil tool! When you're browsing ...This is an awesome lil tool! <BR/><BR/>When you're browsing round a database checking out scheme's etc SQL is the go, but ORMish things like these make writing little python scripts which update some fields here and there heaps easier.<BR/><BR/>Also just noting: came across a little bug (i think), when using a mySQL db and the table has a mediumint field (which is mysql specific i think), sqlsoup says that the table doesn't exist... though this might be a problem further up the line (MySQLDB python interface), i'm not sure. Make all your mediumints normal ints and everything works!Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-11683713.post-1144856797435910632006-04-12T08:46:00.000-07:002006-04-12T08:46:00.000-07:00Regular readers of this blog know that I'm the fir...Regular readers of this blog know that I'm the first to praise SQL for the things it gets right.<BR/><BR/>That doesn't, however, mean that raw SQL is always or even often the most convenient way to access your database from Python.<BR/><BR/>It's true that many if not most ORM tools are designed by people who don't understand databases well, and hence get a lot of things wrong. SqlAlchemy isn't one of these. Remember that in a few years when hand-coding your sql gets old. :)Jonathan Ellishttps://www.blogger.com/profile/11003648392946638242noreply@blogger.comtag:blogger.com,1999:blog-11683713.post-1144853298152714352006-04-12T07:48:00.000-07:002006-04-12T07:48:00.000-07:00Well said! I completely agree. Nothing can repla...Well said! I completely agree. Nothing can replace the data modeling capabilities of SQL. There is a good reason why SQL is a mini-language rather than a simple API, it's powerful!<BR/><BR/>One problem I've found when using dbapi2 is that it is a tiny bit inconvenient to create CRUD queries because of the different ordering for different queries (e.g. update vs. insert) and to decode and access the results nicely. So I wrote a simple module that eases that task and provides an ORM-like interface, but without any of the magic. It's simple, and nothing happens behind your back, no caching, no nothing.<BR/><BR/>Check it out, released it last week:<BR/>http://furius.ca/antiorm/Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-11683713.post-1144847805905125592006-04-12T06:16:00.000-07:002006-04-12T06:16:00.000-07:00I hate to say this, but there is one thing that Ju...I hate to say this, but there is one thing that Just Works. It's a plain SQL (well, not exactly plain, but dbapi2 is ok). When I use it I don't need to translate in my mind between ORM and SQL, forth and back all the time.<BR/><BR/>After all, what you do with ORM is relational queries, just written other way. So, the question is: why write it other way when we already have SQL?Anonymousnoreply@blogger.com