How to check if database already exists

3.7k Views Asked by At

I am writing a small Python program that loads some documents into couchdb. It would be very convenient to check whether a database with a certain name already exists, so I can either create a new one or open the existing one. What I want to do is something like this:

import couchdb

def connect(url, dbName):
    server = couchdb.Server(url)
    if dbName exists: # how do I do this?
        return server[dbName]
    else:
        return server.create(dbName)

I know a try-except block would do the trick, but isn't there a more elegant way?

2

There are 2 best solutions below

2
On BEST ANSWER

The easiest way I can think is:

import couchdb
server = couchdb.Server("http://localhost:5984")
"dataBaseName" in server

Return True if a database with the name exists, False otherwise

https://github.com/djc/couchdb-python/blob/master/couchdb/client.py#L90-L101

1
On

You can do something like:

try:
    couch = couchdb.Server() # assuming localhost
    db = couch['existent']
except:
    db = couch.create('somedb')