Notes C API探訪: NSFDbDelete(関数)
「データベースを操作」といえばSQLが有名なので、前回の「データベースを作成する」関数はいわば「CREATE DATABASE」と同じです。今回のNSFDbDelete関数は、SQLでいう「DROP DATABASE」、データベースの削除をします。
NSFDbDelete
NSFDbDelete関数は、既存のデータベースを完全に削除します。
#include <nsfdb.h>
STATUS LNPUBLIC NSFDbDelete (const char far *PathName);
PathNameは、OSPathNetConstructで作成したパスを指定します。
この関数ではハンドルをオープンしている必要はありません。パスを指定して、条件が満たされていればさっくり削除されます。何らかの理由で削除できない場合は、NOERROR値以外の値を返します。
サンプルコード
#include <global.h>
#include <nsfdb.h>
#include <osfile.h>
void nsfdbdeleteTest() {
char path[MAXPATH] = "";
STATUS status = OSPathNetConstruct(nullptr, "", "hoge.nsf", path);
if (ERR(status) != NOERROR) {
std::cerr << "OSPathNetConstruct error." << std::endl;
return;
}
status = NSFDbCreate(path, DBCLASS_NOTEFILE, FALSE);
if (ERR(status) != NOERROR) {
std::cerr << "NSFDbCreate error." << std::endl;
return;
}
std::cout << "Database 'hoge.nsf' is created." << std::endl;
status = NSFDbDelete(path);
if (ERR(status) != NOERROR) {
std::cerr << "NSFDbDelete error." << std::endl;
return;
}
std::cout << "Database 'hoge.nsf' is deleted." << std::endl;
}
このサンプルコードは、前回のサンプルコードを拡張しています。
注意: コードの利用においてチブル・システムズは一切の責任を負いません。自己責任でご利用をお願いいたします。