समस्या का विवरण - अपने खाते में बनाई गई तालिका को हटाने के लिए पायथन में boto3 लाइब्रेरी का उपयोग करें।
उदाहरण - आपके खाते में बनाए गए डेटाबेस 'परीक्षण' से एक तालिका 'सुरक्षा' हटाएं।
इस समस्या को हल करने के लिए दृष्टिकोण/एल्गोरिदम
चरण 1 - अपवादों को संभालने के लिए boto3 और botocore अपवाद आयात करें।
चरण 2 - पैरामीटर डेटाबेस_नाम और टेबल_नाम पास करें जिसे एडब्ल्यूएस ग्लू कैटलॉग से हटा दिया जाना चाहिए।
चरण 3 - boto3 लाइब्रेरी का उपयोग करके AWS सत्र बनाएं। सुनिश्चित करें कि डिफ़ॉल्ट प्रोफ़ाइल में क्षेत्र_नाम का उल्लेख किया गया है। यदि इसका उल्लेख नहीं है, तो सत्र बनाते समय स्पष्ट रूप से क्षेत्र_नाम पास करें।
चरण 4 - गोंद के लिए AWS क्लाइंट बनाएं।
चरण 5 - अब डिलीट_टेबल फ़ंक्शन का उपयोग करें और डेटाबेस_नाम को डेटाबेसनाम पैरामीटर के रूप में और टेबल_नाम को नाम पैरामीटर के रूप में पास करें।
चरण 6 - यह तालिका को हटा देगा और प्रतिक्रिया मेटाडेटा लौटाएगा।
चरण 7 - कार्य की जाँच करते समय कुछ गलत होने पर सामान्य अपवाद को संभालें।
उदाहरण
AWS Glue डेटाबेस से तालिका को हटाने के लिए निम्न कोड का उपयोग करें -
import boto3 from botocore.exceptions import ClientError def delete_a_table_from_database(database_name, table_name): session = boto3.session.Session() glue_client = session.client('glue') try: response = glue_client.delelte_table(DatabaseName= database_name, Name = table_name) return response except ClientError as e: raise Exception( "boto3 client error in delete_a_table_from_database: " + e.__str__()) except Exception as e: raise Exception("Unexpected error in delete_a_table_from_database: " + e.__str__()) print(delete_a_table_from_database("test","security"))
आउटपुट
{'ResponseMetadata': {'RequestId': '7aa7c3cb…………….-8610318a238c', 'HTTPStatusCode': 200, 'HTTPHeaders': {'date': 'Sun, 21 Feb 2021 04:58:04 GMT', 'content-type': 'application/x-amz-json-1.1', 'contentlength': '2', 'connection': 'keep-alive', 'x-amzn-requestid': '7aa7c3cbf611-494e-b923-8610318a238c'}, 'RetryAttempts': 0}}