docstr: initialize a dictionary with a sql database table archive backend
  
  Connect to an existing database, or initialize a new database, at the
  selected database url. For example, to use a sqlite database 'foo.db'
  in the current directory, database='sqlite:///foo.db'. To use a mysql
  database 'foo' on localhost, database='mysql://user:pass@localhost/foo'.
  For postgresql, use database='postgresql://user:pass@localhost/foo'. 
  When connecting to sqlite, the default database is ':memory:'; otherwise,
  the default database is 'defaultdb'. Connections should be given as
  database?table=tablename; for example, name='sqlite:///foo.db?table=bar'.
  If not provided, the default tablename is 'memo'. If sqlalchemy is not
  installed, storable values are limited to strings, integers, floats, and
  other basic objects. If sqlalchemy is installed, additional keyword
  options can provide database configuration, such as connection pooling.
  To use a mysql or postgresql database, sqlalchemy must be installed.
  
  Args:
      name (str, default=None): url for database table (see above note)
      dict (dict, default={}): initial dictionary to seed the archive
      cached (bool, default=True): interact through an in-memory cache
      serialized (bool, default=True): save objects as pickled strings
      protocol (int, default=DEFAULT_PROTOCOL): pickling protocol
      
docstr_tok: ["initialize","a","dictionary","with","a","sql","database","table","archive","backend","Connect","to","an","existing","database",",","or","initialize","a","new","database",",","at","the","selected","database","url",".","For","example",",","to","use","a","sqlite","database","'foo.db'","in","the","current","directory",",","database='sqlite",":","\/\/\/foo.db","'",".","To","use","a","mysql","database","'foo","'","on","localhost",",","database='mysql",":","\/\/user",":","pass","@","localhost\/foo","'",".","For","postgresql",",","use","database='postgresql",":","\/\/user",":","pass","@","localhost\/foo","'",".","When","connecting","to","sqlite",",","the","default","database","is","'",":","memory",":","'",";","otherwise",",","the","default","database","is","'defaultdb","'",".","Connections","should","be","given","as","database","?","table=tablename",";","for","example",",","name='sqlite",":","\/\/\/foo.db","?","table=bar","'",".","If","not","provided",",","the","default","tablename","is","'memo","'",".","If","sqlalchemy","is","not","installed",",","storable","values","are","limited","to","strings",",","integers",",","floats",",","and","other","basic","objects",".","If","sqlalchemy","is","installed",",","additional","keyword","options","can","provide","database","configuration",",","such","as","connection","pooling",".","To","use","a","mysql","or","postgresql","database",",","sqlalchemy","must","be","installed",".","Args",":","name","(","str",",","default=None",")",":","url","for","database","table","(","see","above","note",")","dict","(","dict",",","default=","{","}",")",":","initial","dictionary","to","seed","the","archive","cached","(","bool",",","default=True",")",":","interact","through","an","in-memory","cache","serialized","(","bool",",","default=True",")",":","save","objects","as","pickled","strings","protocol","(","int",",","default=DEFAULT_PROTOCOL",")",":","pickling","protocol"]
code: def __new__(
      sqltable_archive, name=None, dict=None, cached=True, **kwds
  ):
      """initialize a dictionary with a sql database table archive backend
  
      Connect to an existing database, or initialize a new database, at the
      selected database url. For example, to use a sqlite database 'foo.db'
      in the current directory, database='sqlite:///foo.db'. To use a mysql
      database 'foo' on localhost, database='mysql://user:pass@localhost/foo'.
      For postgresql, use database='postgresql://user:pass@localhost/foo'.
      When connecting to sqlite, the default database is ':memory:'; otherwise,
      the default database is 'defaultdb'. Connections should be given as
      database?table=tablename; for example, name='sqlite:///foo.db?table=bar'.
      If not provided, the default tablename is 'memo'. If sqlalchemy is not
      installed, storable values are limited to strings, integers, floats, and
      other basic objects. If sqlalchemy is installed, additional keyword
      options can provide database configuration, such as connection pooling.
      To use a mysql or postgresql database, sqlalchemy must be installed.
  
      Args:
          name (str, default=None): url for database table (see above note)
          dict (dict, default={}): initial dictionary to seed the archive
          cached (bool, default=True): interact through an in-memory cache
          serialized (bool, default=True): save objects as pickled strings
          protocol (int, default=DEFAULT_PROTOCOL): pickling protocol
      """
      if dict is None:
          dict = {}
      db, table = _sqlname(name)
      archive = _sqltable_archive(db, table, **kwds)
      if cached:
          archive = cache(archive=archive)
      archive.update(dict)
      return archive
  
imports: from ._archives import cache, archive
  from ._archives import dict_archive
  from ._archives import null_archive
  from ._archives import dir_archive
  from ._archives import file_archive
  from ._archives import sql_archive
  from ._archives import sqltable_archive
  from ._archives import hdf_archive
  from ._archives import hdfdir_archive
  from ._archives import _sqlname, _from_frame, _to_frame
label_desc: Use image node_id 1 for calling the sqltable_archive obj's underlying member method code with example usage: obj.__new__(sqltable_archive, name, dict, cached) and returns: archive