Такие языки, как Java и Python, обеспечивают уровень абстракции более высокого уровня по сравнению с базами данных, так что можно использовать общий интерфейс и при необходимости изменить базовую базу данных. Такая гибкость достигается за счет того, что функциональность конкретного поставщика не раскрывается.
API C, предоставляемые каждым поставщиком, позволяют использовать функциональные возможности, специфичные для каждой базы данных. Это означает, что поставщик заблокирован, но он также позволяет вам использовать эти специфичные для поставщика функции и выполнять оптимизацию для конкретного поставщика.
Среды выполнения Java и Python, скорее всего, используют внутренние API-интерфейсы C для внутреннего использования.