0
我正在嘗試創建一個小型Web應用程序,並且遇到問題。在我的代碼中,我開始初始化我的數據庫名稱,並在我的應用程序執行之前,我想檢查服務器上是否存在數據庫名稱,如果沒有創建具有該名稱的數據庫。換句話說,我試圖做這樣的事情;如何使用Node.JS檢查和創建CouchDB中的數據庫?
if(dbName is not exists){
couch.createDatabase(dbName).then(function(){
console.log('Database created');
};
}
但我不知道如何正確地做到這一點。我正在嘗試學習和使用npm node-couchdb軟件包,如果您可以幫助我解決此問題而不使用任何其他軟件包,我將不勝感激。
更新:現在我可以檢查數據庫是否存在與couch.listDatabases(),如果沒有創建一個新的與couch.createDatabase與以下;
couch.listDatabases().then(function(dbs){
var controller = 0;
console.log(dbs);
for(var i= 0; i <= dbs.length; i++){
if(dbName == dbs[i]){
controller += 1;
}
}
if(controller == 0){
couch.createDatabase(dbName).then(function(){
console.log('Database created');
},
function(err){
res.send(err);
});
}
});
我可以看到服務器上的新數據庫,但是當我嘗試使用我的應用程序訪問它時,出現此錯誤;
{"code":"EDOCMISSING","body":{"error":"not_found","reason":"missing"}}
我只是在爲此工作。現在我可以檢查數據庫是否存在。如果它不存在,那麼我也創建一個數據庫,但是當我嘗試訪問該數據庫時,出現以下錯誤; {「code」:「EDOCMISSING」,「body」:{「error」:「not_found」,「reason」:「missing」}}你知道爲什麼嗎? – ricster
你可以請提供您的代碼與[jsfiddle](https://jsfiddle.net) –
這裏的jsfiddle感謝您的幫助,https://jsfiddle.net/9fg9mtmv/ – ricster