It is not useful because bigtable is not a relational database, goal of SQL sintax.
On Dec 29, 8:12 pm, adelevie <[email protected]> wrote: > I didn't make that bigtable.appspot site, I just found it ;) > I also found thishttp://code.google.com/p/app3/. > > I can't quite figure out what you're saying (it may be a language > barrier). Are you saying that making a wrapper for GQL is not > feasible? > > On Dec 29, 5:21 am, leone <[email protected]> wrote: > > > Well done!! > > In order to 'reduce' BigTable to RDBMS > > is quite impossible (and not usefull too), I think. > > The GqlQuery (... it is far less than a SQL dialect...) exposed by > > GAEDatastore API is a facility, not a relational syntax. > > > On Dec 28, 8:31 pm, adelevie <[email protected]> wrote: > > > >http://bigtable.appspot.com/ > > > Maybe this will help? > > > > -Alan > > > > On Dec 28, 1:43 pm, adelevie <[email protected]> wrote: > > > > > I only have a limited understanding of what a restful interface is. Is > > > > it an interface where all the data is inputted in the url and then > > > > outputted as xml or json? > > > > > I was thinking something more a ong the lines of building a class like > > > > this: > > > > class MySQLDB(DB): > > > > def __init__(self, **keywords): > > > > import MySQLdb as db > > > > if 'pw' in keywords: > > > > keywords['passwd'] = keywords['pw'] > > > > del keywords['pw'] > > > > > if 'charset' not in keywords: > > > > keywords['charset'] = 'utf8' > > > > elif keywords['charset'] is None: > > > > del keywords['charset'] > > > > > self.paramstyle = db.paramstyle = 'pyformat' # it's both, like > > > > psycopg > > > > self.dbname = "mysql" > > > > self.supports_multiple_insert = True > > > > DB.__init__(self, db, keywords) > > > > > def _process_insert_query(self, query, tablename, seqname): > > > > return query, SQLQuery('SELECT last_insert_id();') > > > > > class SqliteDB(DB): > > > > def __init__(self, **keywords): > > > > try: > > > > import sqlite3 as db > > > > db.paramstyle = 'qmark' > > > > except ImportError: > > > > try: > > > > from pysqlite2 import dbapi2 as db > > > > db.paramstyle = 'qmark' > > > > except ImportError: > > > > import sqlite as db > > > > self.paramstyle = db.paramstyle > > > > keywords['database'] = keywords.pop('db') > > > > self.dbname = "sqlite" > > > > DB.__init__(self, db, keywords) > > > > > def _process_insert_query(self, query, tablename, seqname): > > > > return query, SQLQuery('SELECT last_insert_rowid();') > > > > > def query(self, *a, **kw): > > > > out = DB.query(self, *a, **kw) > > > > if isinstance(out, iterbetter): > > > > # rowcount is not provided by sqlite > > > > del out.__len__ > > > > return out > > > > > # as with PostgresDB, the database is assumed to be in UTF-8. > > > > # This doesn't mean we turn byte-strings coming out of it into > > > > # Unicode objects, but we avoid trying to put Unicode objects into > > > > # it. > > > > encoding = 'UTF-8' > > > > > def _py2sql(self, val): > > > > r""" > > > > Work around a couple of problems in SQLite that maybe pysqlite > > > > should take care of: give it True and False and it thinks > > > > they're column names; give it Unicode and it tries to insert > > > > it in, possibly, ASCII. > > > > > >>> meth = SqliteDB(db='nonexistent')._py2sql > > > > >>> [meth(x) for x in [True, False, 1, 2, 'foo', u'souffl > > > > \xe9']] > > > > [1, 0, 1, 2, 'foo', 'souffl\xc3\xa9'] > > > > > """ > > > > if val is True: return 1 > > > > elif val is False: return 0 > > > > elif isinstance(val, unicode): return val.encode > > > > (self.encoding) > > > > else: return val > > > > > ...But using GQL. I think this would be a tremendous innovation for > > > > webpy. Right now, anyone building for App Engine has to deeply > > > > integrate their code with their proprietary system of queries. Imagine > > > > if webpy was known as the easiest and simplest framework to use with > > > > GAE, and thens hould you choose--to stop using with GAE. > > > > > -Alan > > > > > On Dec 28, 11:13 am, leone <[email protected]> wrote: > > > > > > I am interested, but I have not found any web-service about Google Big > > > > > Table. > > > > > I suppose you must write a GAE application, deploy on Google servers > > > > > and run it as > > > > > a RESTful interface to your webpy application. > > > > > > On Dec 28, 6:05 am, adelevie <[email protected]> wrote: > > > > > > > I am wondering if there is any interest in a database wrapper for > > > > > > Google App Engine. Such a wrapper would make it much easier to move > > > > > > a > > > > > > web.py app to google app engine--simply change the database > > > > > > parameters > > > > > > and write a few classes, as opposed to rewriting every single web.db > > > > > > query into app engine queries. This seems possible because GQL is > > > > > > essentially SQL. I have no experience with creating db backends, but > > > > > > I'd like to help in any way possible if others are also interested. > > > > > > > -Alan --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "web.py" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/webpy?hl=en -~----------~----~----~----~------~----~------~--~---
