@@ -362,7 +362,7 @@ namespace sqlite {
362362 std::shared_ptr<sqlite3> _db;
363363
364364 public:
365- database (const STR_REF &db_name, const sqlite_config &config = {}): _db(nullptr ) {
365+ database (const std::string &db_name, const sqlite_config &config = {}): _db(nullptr ) {
366366 sqlite3* tmp = nullptr ;
367367 auto ret = sqlite3_open_v2 (db_name.data (), &tmp, static_cast <int >(config.flags ), config.zVfs );
368368 _db = std::shared_ptr<sqlite3>(tmp, [=](sqlite3* ptr) { sqlite3_close_v2 (ptr); }); // this will close the connection eventually when no longer needed.
@@ -372,14 +372,8 @@ namespace sqlite {
372372 *this << R"( PRAGMA encoding = "UTF-16";)" ;
373373 }
374374
375- database (const U16STR_REF &db_name, const sqlite_config &config = {}): _db(nullptr ) {
376- auto db_name_utf8 = utility::utf16_to_utf8 (db_name.data ());
377- sqlite3* tmp = nullptr ;
378- auto ret = sqlite3_open_v2 (db_name_utf8.data (), &tmp, static_cast <int >(config.flags ), config.zVfs );
379- _db = std::shared_ptr<sqlite3>(tmp, [=](sqlite3* ptr) { sqlite3_close_v2 (ptr); }); // this will close the connection eventually when no longer needed.
380- if (ret != SQLITE_OK) errors::throw_sqlite_error (_db ? sqlite3_extended_errcode (_db.get ()) : ret);
381- sqlite3_extended_result_codes (_db.get (), true );
382- if (config.encoding != Encoding::UTF8)
375+ database (const std::u16string &db_name, const sqlite_config &config = {}): database(utility::utf16_to_utf8(db_name.data()), config) {
376+ if (config.encoding == Encoding::ANY)
383377 *this << R"( PRAGMA encoding = "UTF-16";)" ;
384378 }
385379
0 commit comments