<prompt> Andika hati ya Python inayounganishwa na hifadhidata ya MariaDB, tengeneza jedwali la kuhifadhi habari kuhusu vitabu jina, mwandishi, mwaka wa uchapishaji, na hutoa vitendaji vya kuongeza vitabu vipya, kusasisha rekodi zilizopo, na kufuta vitabu kwa kitambulisho.  <response>: chatukuagiza mariadbkutoka kwa kuandika kuingiza Hiari Badilisha maadili yaliyo hapa chini na kitambulisho chako halisi cha hifadhidatausanidi mwenyeji: mwenyeji wa ndani, mtumiaji: jina_lako_la mtumiaji, nenosiri: nenosiri_lako, database: database_yakodef connect_to_db: jaribu: conn mariadb.connectconfig kurudi conn isipokuwa mariadb.Kosa kama e: printfHitilafu ya kuunganisha kwa MariaDB: e kurudi Hakunadef create_books_tableconn: mshale conn.cursor swali TUNZA JEDWALI IKIWA HAIPO vitabu id INT AUTO_INCREMENT FUNGUO YA MSINGI, kichwa VARCHAR255 SI UFUPI, mwandishi VARCHAR255 NOT NULL, mwaka_wa_chapisho INT NOT NULL cursor.tekelezahoja conn.commitdef add_bookconn, title: str, mwandishi: str, publication_year: int: mshale conn.cursor query INGIZA KATIKA vitabu jina, mwandishi, mwaka_wa_chapisho VALUES ?, ?, ? cursor.executehoja, jina, mwandishi, mwaka_wa_chapisho conn.commitdef update_bookconn, book_id: int, title: Optionalstr Hakuna, mwandishi: Hiaristr Hakuna, publication_year: Hiariint Hakuna: mshale conn.cursor sasisho vigezo ikiwa kichwa sio Hakuna: updates.ongezakichwa? params.ongezakichwa ikiwa mwandishi sio Hakuna: updates.appendmwandishi? params.ongeza mwandishi ikiwa publication_year sio Hakuna: updates.appendpublication_year? params.appendmwaka_wa_chapisho ikiwa sio sasisho: printHakuna cha kusasisha. kurudi query fSASISHA vitabu WEKA , .jiungesasisho WHERE id? params.ongezakitambulisho_cha cursor.executehoja, vigezo conn.commitdef delete_bookconn, book_id: int: mshale conn.cursor swala FUTA KUTOKA kwa vitabu WHERE id? cursor.executehoja, kitambulisho_kitabu, conn.commit Unganisha kwenye hifadhidata na unda jedwalimuunganisho connect_to_dbikiwa unganisho: tengeneza_vitabu_mezamuunganisho Ongeza kitabu kipya add_bookmuunganisho, The Catcher in the Rye, J.D. Salinger, 1951 Sasisha kitabu kilichopo update_bookmuunganisho, 1, titleMshikaji katika Rye - Imesasishwa Futa kitabu kwa kitambulisho futa_kitabumuunganisho, 2 connection.closekwingine: printHaikuweza kuunganishwa na hifadhidata.Hati hii inaunganishwa na hifadhidata ya MariaDB, huunda jedwali la kuhifadhi maelezo kuhusu vitabu, na hutoa vitendaji vya kuongeza vitabu vipya, kusasisha rekodi zilizopo, na kufuta vitabu kwa Kitambulisho. Hakikisha umebadilisha thamani za kamusi za config na stakabadhi zako halisi kabla ya kuendesha hati. 