@@ -169,6 +169,8 @@ module sqlite
169169 public :: sqlite3_config_int_
170170 public :: sqlite3_config_null_
171171 public :: sqlite3_data_count
172+ public :: sqlite3_db_name
173+ public :: sqlite3_db_name_
172174 public :: sqlite3_db_status
173175 public :: sqlite3_errcode
174176 public :: sqlite3_errmsg
@@ -409,6 +411,15 @@ function sqlite3_data_count(stmt) bind(c, name='sqlite3_data_count')
409411 integer (kind= c_int) :: sqlite3_data_count
410412 end function sqlite3_data_count
411413
414+ ! const char *sqlite3_db_name(sqlite3 *db, int n)
415+ function sqlite3_db_name_ (db , n ) bind(c, name= ' sqlite3_db_name' )
416+ import :: c_int, c_ptr
417+ implicit none
418+ type (c_ptr), intent (in ), value :: db
419+ integer (kind= c_int), intent (in ), value :: n
420+ type (c_ptr) :: sqlite3_db_name_
421+ end function sqlite3_db_name_
422+
412423 ! int sqlite3_db_status(sqlite3 *db, int op, int *pCurrent, int *pHighwater, int resetFlag)
413424 function sqlite3_db_status (db , op , current , highwater , reset_flag ) bind(c, name= ' sqlite3_db_status' )
414425 import :: c_int, c_ptr
@@ -769,6 +780,16 @@ function sqlite3_config_null(option)
769780 sqlite3_config_null = sqlite3_config_null_(option)
770781 end function sqlite3_config_null
771782
783+ function sqlite3_db_name (db , n )
784+ type (c_ptr), intent (in ) :: db
785+ integer , intent (in ) :: n
786+ character (len= :), allocatable :: sqlite3_db_name
787+ type (c_ptr) :: ptr
788+
789+ ptr = sqlite3_db_name_(db, n)
790+ if (c_associated(ptr)) call c_f_str_ptr(ptr, sqlite3_db_name)
791+ end function sqlite3_db_name
792+
772793 function sqlite3_errmsg (db )
773794 type (c_ptr), intent (in ) :: db
774795 character (len= :), allocatable :: sqlite3_errmsg
0 commit comments