#include<iostream>#include<sqlite3.h>intmain(){
sqlite3* db;int result =sqlite3_open("your_database.db",&db);if(result == SQLITE_OK){constchar* indexName ="your_index_name";constchar* tableName ="your_table_name";
std::string query ="SELECT name FROM sqlite_master WHERE type='index' AND name='"+ std::string(indexName)+"' AND tbl_name='"+ std::string(tableName)+"';";//判断某个数据表中是否存在索引//std::string query1 = "SELECT name FROM sqlite_master WHERE type='index' AND tbl_name='"+ std::string(tableName) + "';";
sqlite3_stmt* statement;
result =sqlite3_prepare_v2(db, query.c_str(),-1,&statement,nullptr);if(result == SQLITE_OK){
result =sqlite3_step(statement);if(result == SQLITE_ROW){// Index exists
std::cout <<"Index "<< indexName <<" exists for table "<< tableName << std::endl;}else{// Index does not exist
std::cout <<"Index "<< indexName <<" does not exist for table "<< tableName << std::endl;}sqlite3_finalize(statement);}else{
std::cerr <<"Error preparing statement: "<<sqlite3_errmsg(db)<< std::endl;}sqlite3_close(db);}else{
std::cerr <<"Error opening database: "<<sqlite3_errmsg(db)<< std::endl;}return0;}