

{"id":20573,"date":"2018-07-10T04:00:09","date_gmt":"2018-07-10T04:00:09","guid":{"rendered":"https:\/\/data-flair.training\/blogs\/?p=20573"},"modified":"2026-04-29T17:05:22","modified_gmt":"2026-04-29T11:35:22","slug":"relational-database-with-python","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/","title":{"rendered":"How to Work with Relational Database with Python"},"content":{"rendered":"<div class='__iawmlf-post-loop-links' style='display:none;' data-iawmlf-post-links='[{&quot;id&quot;:149,&quot;href&quot;:&quot;https:\\\/\\\/www.python.org&quot;,&quot;archived_href&quot;:&quot;http:\\\/\\\/web-wp.archive.org\\\/web\\\/20251206090101\\\/https:\\\/\\\/www.python.org\\\/&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2025-12-06 12:20:59&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-09 12:44:48&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-12 13:49:48&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-15 14:13:48&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-18 15:26:07&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-21 17:05:18&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-24 19:33:20&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-28 02:44:18&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-31 04:43:13&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-03 07:01:16&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-06 07:15:14&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-09 07:16:21&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-12 10:01:16&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-15 10:07:06&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-18 10:11:43&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-21 10:20:21&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-24 10:47:21&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-27 10:58:10&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-30 10:59:29&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-02 12:28:37&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-05 13:05:41&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-08 15:11:10&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-11 15:46:29&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-14 17:21:34&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-17 18:37:27&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-20 18:52:05&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-23 19:52:29&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-27 01:02:50&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-02 03:50:52&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-05 05:18:10&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-08 06:18:52&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-11 07:24:15&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-14 08:33:37&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-17 08:58:17&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-20 12:26:41&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-23 14:32:34&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-26 16:21:46&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-29 17:22:50&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-01 18:18:54&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-04 18:27:04&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-08 02:33:55&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-11 04:53:57&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-14 06:48:30&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-17 07:17:55&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-20 07:32:43&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-23 09:34:41&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-26 10:13:17&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-29 10:35:31&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-02 11:50:34&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-05 12:07:03&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-08 13:08:24&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-11 14:46:17&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-14 21:24:09&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-05-18 03:08:37&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-21 06:27:39&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-24 07:06:36&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-27 07:30:50&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-30 08:47:47&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-02 09:37:18&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-05 09:43:29&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-06-05 09:43:29&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;}]'><\/div>\n<p>Working with databases is a skill that every coder must have. We are going to make the process of managing data tables easier by using Python. We\u2019ll understand the basics first and then move on to the advanced process, like selecting specific information or deleting data safely when your work is finished.<\/p>\n<p>In our last Python Database tutorial, we checked <a href=\"https:\/\/data-flair.training\/blogs\/nosql-database-in-python\/\" target=\"_blank\" rel=\"noopener\"><strong>how to work with NoSQL databases with Python<\/strong><\/a>. In the same way, today we talk about working of Relational Database with <a href=\"https:\/\/data-flair.training\/blogs\/python-tutorial-for-beginners\/\" target=\"_blank\" rel=\"noopener\"><strong>Python Programming Language<\/strong><\/a>.<\/p>\n<p>So, let&#8217;s start working with a relational database with Python.<\/p>\n<h3>Prerequisites for Relational Database<\/h3>\n<p>For this demo, we need three things: SQLAlchemy, pandas, and a CSV file.<\/p>\n<div id=\"attachment_20628\" style=\"width: 1210px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/Prerequisites-For-Relational-Database-01.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-20628\" class=\"wp-image-20628 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/Prerequisites-For-Relational-Database-01.jpg\" alt=\"Prerequisites for Relational Database with python\" width=\"1200\" height=\"628\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/Prerequisites-For-Relational-Database-01.jpg 1200w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/Prerequisites-For-Relational-Database-01-150x79.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/Prerequisites-For-Relational-Database-01-300x157.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/Prerequisites-For-Relational-Database-01-768x402.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/Prerequisites-For-Relational-Database-01-1024x536.jpg 1024w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/a><p id=\"caption-attachment-20628\" class=\"wp-caption-text\">Prerequisites for Relational Database<\/p><\/div>\n<h4>a. SQLAlchemy<\/h4>\n<div id=\"attachment_20602\" style=\"width: 462px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/sqlalchemy.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-20602\" class=\"wp-image-20602 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/sqlalchemy.png\" alt=\"How to Work with Relational Database with Python\" width=\"452\" height=\"95\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/sqlalchemy.png 452w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/sqlalchemy-150x32.png 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/sqlalchemy-300x63.png 300w\" sizes=\"auto, (max-width: 452px) 100vw, 452px\" \/><\/a><p id=\"caption-attachment-20602\" class=\"wp-caption-text\">How to Work with Relational Database with Python<\/p><\/div>\n<p>SQLAlchemy is an open-source toolkit and an object-relational mapper. You can download this using pip-<br \/>\n<strong>C:\\Users\\lifei&gt;pip install sqlalchemy<\/strong><\/p>\n<p>Requirement already satisfied: sqlalchemy in c:\\users\\lifei\\appdata\\local\\programs\\python\\python36\\lib\\site-packages (1.2.9)<\/p>\n<p><strong>Note-<\/strong> If your import works for the command line and not for the IDLE, then you may be running different versions of Python in the two. You can add this to the path in your IDLE-<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; sys.path.append('C:\\\\Users\\\\lifei\\\\AppData\\\\Local\\\\Programs\\\\Python\\\\Python36\\\\Lib\\\\site-packages')<\/pre>\n<h4>b. Python Pandas<\/h4>\n<div id=\"attachment_20604\" style=\"width: 610px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/pandas.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-20604\" class=\"wp-image-20604 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/pandas.png\" alt=\"sqlalchemy, pandas, and a CSV file\" width=\"600\" height=\"125\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/pandas.png 600w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/pandas-150x31.png 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/pandas-300x63.png 300w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><p id=\"caption-attachment-20604\" class=\"wp-caption-text\">sqlalchemy, pandas, and a CSV file<\/p><\/div>\n<p><em>Pandas<\/em> is a Python library for data manipulation and analysis. You can download it using pip-<br \/>\n<strong>C:\\Users\\lifei&gt;pip install pandas<\/strong><br \/>\nCollecting pandas<br \/>\n<strong>Let&#8217;s Read a New Topic &#8211; Python 3 Extension Programming with C &amp; Others Languages<\/strong><br \/>\nDownloading https:\/\/files.pythonhosted.org\/packages\/ad\/0b\/f65a63cccc5e37a7af983fc87a8c9e56feb4998d8877f8f2af21f40bcf3c\/pandas-0.23.1-cp36-cp36m-win_amd64.whl (10.5MB)<br \/>\n100% |\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 10.5MB 385kB\/s<br \/>\nCollecting pytz&gt;=2011k (from pandas)<br \/>\nDownloading https:\/\/files.pythonhosted.org\/packages\/30\/4e\/27c34b62430286c6d59177a0842ed90dc789ce5d1ed740887653b898779a\/pytz-2018.5-py2.py3-none-any.whl (510kB)<br \/>\n100% |\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 512kB 385kB\/s<br \/>\nCollecting numpy&gt;=1.9.0 (from pandas)<br \/>\nDownloading https:\/\/files.pythonhosted.org\/packages\/0d\/b7\/0c804e0bcba6505f8392d042d5e333a5e06f308e019517111fbc7767a0bc\/numpy-1.14.5-cp36-none-win_amd64.whl (13.4MB)<br \/>\n100% |\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 13.4MB 461kB\/s<br \/>\nCollecting python-dateutil&gt;=2.5.0 (from pandas)<br \/>\nDownloading https:\/\/files.pythonhosted.org\/packages\/cf\/f5\/af2b09c957ace60dcfac112b669c45c8c97e32f94aa8b56da4c6d1682825\/python_dateutil-2.7.3-py2.py3-none-any.whl (211kB)<br \/>\n100% |\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 215kB 504kB\/s<br \/>\nRequirement already satisfied: six&gt;=1.5 in c:\\users\\lifei\\appdata\\local\\programs\\python\\python36\\lib\\site-packages (from python-dateutil&gt;=2.5.0-&gt;pandas) (1.11.0)<br \/>\nInstalling collected packages: pytz, numpy, python-dateutil, pandas<br \/>\nSuccessfully installed numpy-1.14.5 pandas-0.23.1 python-dateutil-2.7.3 pytz-2018.5<\/p>\n<h4>c. A Sample CSV File<\/h4>\n<div id=\"attachment_20605\" style=\"width: 1105px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/csv.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-20605\" class=\"wp-image-20605 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/csv.png\" alt=\"Relational Database with Python\" width=\"1095\" height=\"361\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/csv.png 1095w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/csv-150x49.png 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/csv-300x99.png 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/csv-768x253.png 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/csv-1024x338.png 1024w\" sizes=\"auto, (max-width: 1095px) 100vw, 1095px\" \/><\/a><p id=\"caption-attachment-20605\" class=\"wp-caption-text\">A Sample CSV File<\/p><\/div>\n<p>To work with the relational databases, we download a sample CSV file from the web. Here\u2019s what it looks like:<\/p>\n<div class=\"mceTemp\">Prerequisites for Relational Database- A Sample CSV File <strong style=\"font-family: Verdana, Geneva, sans-serif;font-size: 16px\">Let&#8217;s Explore Python Database Access &#8211; Python 3 MySQL<\/strong><\/div>\n<h3>Reading a Relational Table in Python<\/h3>\n<p>Now, let\u2019s try reading from this Relational table<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; from sqlalchemy import create_engine\r\n&gt;&gt;&gt; import pandas\r\n&gt;&gt;&gt; import os\r\n&gt;&gt;&gt; os.chdir('C:\\\\Users\\\\lifei\\\\Desktop')\r\n&gt;&gt;&gt; data=pandas.read_csv('samplecsv.csv',encoding=\"ISO-8859-1\")\r\n&gt;&gt;&gt; engine=create_engine('sqlite:\/\/\/:memory:') #Create db engine\r\n&gt;&gt;&gt; data.to_sql('data_table',engine) #Store dataframe as table\r\n&gt;&gt;&gt; print(pandas.read_sql_query('SELECT * FROM data_table',engine))<\/pre>\n<p><strong>This produces the following output:<\/strong><\/p>\n<div id=\"attachment_20606\" style=\"width: 1113px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/read1.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-20606\" class=\"wp-image-20606 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/read1.png\" alt=\"Relational Database with Python\" width=\"1103\" height=\"997\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/read1.png 1103w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/read1-150x136.png 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/read1-300x271.png 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/read1-768x694.png 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/read1-1024x926.png 1024w\" sizes=\"auto, (max-width: 1103px) 100vw, 1103px\" \/><\/a><p id=\"caption-attachment-20606\" class=\"wp-caption-text\">Reading a Relational Table &#8211; Outputv<\/p><\/div>\n<h3>How to Insert Values in a Relational Database with Python?<\/h3>\n<p>Now, to add another row of content into a relational database with Python, we use the following code:<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; from sqlalchemy import create_engine\r\n&gt;&gt;&gt; from pandas.io import sql\r\n&gt;&gt;&gt; import pandas\r\n&gt;&gt;&gt; data=pandas.read_csv('samplecsv.csv',encoding=\"ISO-8859-1\")\r\n&gt;&gt;&gt; engine=create_engine('sqlite:\/\/\/:memory:') #Create db engine\r\n&gt;&gt;&gt; data.to_sql('data_table',engine) #Store dataframe as table\r\n&gt;&gt;&gt; sql.execute('INSERT INTO data_table VALUES(?,?,?,?,?,?,?,?,?,?,?)',\\\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 engine,params=[(9,11,\u2019Xerox 198\u2019,'Frederick Jones',752,-321.57,2.2,9.8,'Nunavut','Paper',0.37)])\r\n&lt;sqlalchemy.engine.result.ResultProxy object at 0x00FA3530&gt;\r\n&gt;&gt;&gt; print(pandas.read_sql_query('SELECT * FROM data_table',engine))<\/pre>\n<p><strong>This produces the following output:<\/strong><\/p>\n<p>index\u00a0\u00a0 1\u00a0\u00a0 Eldon Base for stackable storage shelf, platinum\u00a0 \\<br \/>\n0\u00a0\u00a0\u00a0\u00a0\u00a0 0\u00a0\u00a0 2\u00a0 1.7 Cubic Foot Compact &#8220;Cube&#8221; Office Refrigera&#8230;<br \/>\n1\u00a0\u00a0\u00a0\u00a0\u00a0 1\u00a0\u00a0 3\u00a0\u00a0 Cardinal Slant-D\u00ae Ring Binder, Heavy Gauge Vinyl<br \/>\n2\u00a0\u00a0\u00a0\u00a0\u00a0 2\u00a0\u00a0 4\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 R380<br \/>\n3\u00a0\u00a0\u00a0\u00a0\u00a0 3\u00a0\u00a0 5\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Holmes HEPA Air Purifier<br \/>\n4\u00a0\u00a0\u00a0\u00a0\u00a0 4\u00a0\u00a0 6\u00a0 G.E. Longer-Life Indoor Recessed Floodlight Bulbs<br \/>\n5\u00a0\u00a0\u00a0\u00a0\u00a0 5\u00a0\u00a0 7\u00a0 Angle-D Binders with Locking Rings, Label Holders<br \/>\n6\u00a0\u00a0\u00a0\u00a0\u00a0 6\u00a0\u00a0 8\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 SAFCO Mobile Desk Side File, Wire Frame<br \/>\n7\u00a0\u00a0\u00a0\u00a0\u00a0 7\u00a0\u00a0 9\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 SAFCO Commercial Wire Shelving, Black<br \/>\n8\u00a0\u00a0\u00a0\u00a0\u00a0 8\u00a0 10\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Xerox 198<br \/>\n9\u00a0\u00a0\u00a0\u00a0 9\u00a0\u00a0 11\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Xerox 198<br \/>\nMuhammed MacIntyre\u00a0\u00a0\u00a0 3\u00a0 -213.25\u00a0\u00a0 38.94\u00a0\u00a0\u00a0\u00a0 35\u00a0 Nunavut\u00a0 \\<br \/>\n0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Barry French\u00a0 293\u00a0 \u00a0457.81\u00a0 208.16\u00a0 68.02\u00a0 Nunavut<br \/>\n1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Barry French\u00a0 293\u00a0\u00a0\u00a0 46.71\u00a0\u00a0\u00a0 8.69\u00a0\u00a0 2.99\u00a0 Nunavut<br \/>\n2\u00a0 \u00a0 \u00a0 \u00a0Clay Rozendal\u00a0 483\u00a0 1198.97\u00a0 195.99\u00a0\u00a0 3.99\u00a0 Nunavut<br \/>\n3\u00a0 \u00a0 \u00a0 \u00a0Carlos Soltero\u00a0 515\u00a0\u00a0\u00a0 30.94\u00a0\u00a0 21.78\u00a0\u00a0 5.94\u00a0 Nunavut<br \/>\n4\u00a0 \u00a0 \u00a0 \u00a0Carlos Soltero\u00a0 515\u00a0\u00a0\u00a0\u00a0 4.43\u00a0\u00a0\u00a0 6.64\u00a0\u00a0 4.95\u00a0 Nunavut<br \/>\n5\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Carl Jackson\u00a0 613\u00a0\u00a0 -54.04\u00a0\u00a0\u00a0 7.30\u00a0\u00a0 7.72\u00a0 Nunavut<br \/>\n6\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Carl Jackson\u00a0 613\u00a0\u00a0 127.70\u00a0\u00a0 42.76\u00a0\u00a0 6.22\u00a0 Nunavut<br \/>\n7\u00a0 \u00a0 \u00a0 \u00a0Monica Federle\u00a0 643\u00a0 -695.26\u00a0 138.14\u00a0 35.00\u00a0 Nunavut<br \/>\n8\u00a0 \u00a0 \u00a0 \u00a0Dorothy Badders\u00a0 678\u00a0 -226.36\u00a0\u00a0\u00a0 4.98\u00a0\u00a0 8.33\u00a0 Nunavut<br \/>\n9\u00a0 \u00a0 \u00a0 \u00a0Frederick Jones\u00a0 752\u00a0 -321.57\u00a0\u00a0\u00a0 2.20\u00a0\u00a0 9.80\u00a0 Nunavut<br \/>\nStorage &amp; Organization\u00a0\u00a0 0.8<br \/>\n0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Appliances\u00a0 0.58<\/p>\n<p><strong>Have a Look at the difference between method and Function in Python<\/strong><\/p>\n<h3>How to Delete Values in a Relational Database with Python?<\/h3>\n<p>Relational Database with Python can delete values row-wise and delete the entire table. So, let&#8217;s see how it works.<\/p>\n<h4>a. Deleting the Entire Table<\/h4>\n<p>Now, finally, we want to delete the entire file. How do we do that? Let\u2019s find out.<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; from sqlalchemy import create_engine\r\n&gt;&gt;&gt; from pandas.io import sql\r\n&gt;&gt;&gt; import pandas\r\n&gt;&gt;&gt; data=pandas.read_csv('samplecsv.csv',encoding=\"ISO-8859-1\")\r\n&gt;&gt;&gt; engine=create_engine('sqlite:\/\/\/:memory:') #Create db engine\r\n&gt;&gt;&gt; data.to_sql('data_table',engine) #Store dataframe as table\r\n&gt;&gt;&gt; sql.execute('DELETE FROM data_table',engine)\r\n&lt;sqlalchemy.engine.result.ResultProxy object at 0x00E6D9F0&gt;\r\n&gt;&gt;&gt; print(sql.read_sql_query('SELECT * FROM data_table',engine))<\/pre>\n<p>Empty DataFrame<br \/>\n<strong>Columns:<\/strong> [index, 1, Eldon Base for stackable storage shelf, platinum, Muhammed MacIntyre, 3, -213.25, 38.94, 35, Nunavut, Storage &amp; Organization, 0.8]<br \/>\nIndex: []<\/p>\n<h4>b. Deleting a Single Row<\/h4>\n<p>Now we don\u2019t have column names in this CSV file, but we can use the first value to delete a row this way-<\/p>\n<pre class=\"EnlighterJSRAW\">&gt;&gt;&gt; sql.execute('DELETE FROM data_table where 35=(?)',engine,params=[(9.80)])\r\n&lt;sqlalchemy.engine.result.ResultProxy object at 0x00FA3170&gt;\r\n&gt;&gt;&gt; print(sql.read_sql_query('SELECT * FROM data_table',engine))<\/pre>\n<p>index \u00a0\u00a01\u00a0\u00a0 Eldon Base for stackable storage shelf, platinum\u00a0 \\<br \/>\n0\u00a0\u00a0\u00a0\u00a0\u00a0 0\u00a0\u00a0 2\u00a0 1.7 Cubic Foot Compact &#8220;Cube&#8221; Office Refrigera&#8230;<br \/>\n1\u00a0\u00a0\u00a0\u00a0\u00a0 1\u00a0\u00a0 3\u00a0\u00a0 Cardinal Slant-D\u00ae Ring Binder, Heavy Gauge Vinyl<br \/>\n2\u00a0\u00a0\u00a0\u00a0\u00a0 2\u00a0\u00a0 4\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 R380<br \/>\n3\u00a0\u00a0\u00a0\u00a0\u00a0 3\u00a0\u00a0 5\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Holmes HEPA Air Purifier<br \/>\n4\u00a0\u00a0\u00a0\u00a0\u00a0 4\u00a0\u00a0 6\u00a0 G.E. Longer-Life Indoor Recessed Floodlight Bulbs<br \/>\n5\u00a0\u00a0\u00a0\u00a0\u00a0 5\u00a0\u00a0 7\u00a0 Angle-D Binders with Locking Rings, Label Holders<br \/>\n6\u00a0\u00a0\u00a0\u00a0\u00a0 6\u00a0\u00a0 8\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 SAFCO Mobile Desk Side File, Wire Frame<br \/>\n7\u00a0\u00a0\u00a0\u00a0\u00a0 7\u00a0\u00a0 9\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 SAFCO Commercial Wire Shelving, Black<br \/>\n8\u00a0\u00a0\u00a0\u00a0\u00a0 8\u00a0 10\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Xerox 198<\/p>\n<p>Muhammed MacIntyre\u00a0\u00a0\u00a0 3\u00a0 -213.25\u00a0\u00a0 38.94\u00a0\u00a0\u00a0\u00a0 35\u00a0 Nunavut\u00a0 \\<br \/>\n0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Barry French\u00a0 293\u00a0\u00a0 457.81\u00a0 208.16\u00a0 68.02\u00a0 Nunavut<br \/>\n1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Barry French\u00a0 293\u00a0\u00a0\u00a0 46.71\u00a0\u00a0\u00a0 8.69\u00a0\u00a0 2.99\u00a0 Nunavut<br \/>\n2\u00a0\u00a0\u00a0\u00a0\u00a0 Clay Rozendal\u00a0 483\u00a0 1198.97\u00a0 195.99\u00a0\u00a0 3.99\u00a0 Nunavut<br \/>\n3\u00a0\u00a0\u00a0\u00a0 Carlos Soltero\u00a0 515\u00a0\u00a0\u00a0 30.94\u00a0\u00a0 21.78\u00a0\u00a0 5.94\u00a0 Nunavut<br \/>\n4\u00a0\u00a0\u00a0\u00a0 Carlos Soltero\u00a0 515\u00a0\u00a0\u00a0\u00a0 4.43\u00a0\u00a0\u00a0 6.64\u00a0\u00a0 4.95\u00a0 Nunavut<br \/>\n5\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Carl Jackson\u00a0 613\u00a0\u00a0 -54.04\u00a0\u00a0\u00a0 7.30\u00a0\u00a0 7.72\u00a0 Nunavut<br \/>\n6\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Carl Jackson\u00a0 613\u00a0\u00a0 127.70\u00a0\u00a0 42.76\u00a0\u00a0 6.22\u00a0 Nunavut<br \/>\n7\u00a0\u00a0\u00a0\u00a0 Monica Federle\u00a0 643\u00a0 -695.26\u00a0 138.14\u00a0 35.00\u00a0 Nunavut<br \/>\n8\u00a0\u00a0\u00a0 Dorothy Badders\u00a0 678\u00a0 -226.36\u00a0\u00a0\u00a0 4.98\u00a0\u00a0 8.33\u00a0 Nunavut<\/p>\n<p>Storage &amp; Organization\u00a0\u00a0 0.8<br \/>\n0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Appliances\u00a0 0.58<br \/>\n1\u00a0 Binders and Binder Accessories\u00a0 0.39<br \/>\n2\u00a0\u00a0\u00a0 Telephones and Communication\u00a0 0.58<br \/>\n3\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Appliances\u00a0 0.50<br \/>\n4\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Office Furnishings\u00a0 0.37<br \/>\n5\u00a0 Binders and Binder Accessories\u00a0 0.38<br \/>\n6\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Storage &amp; Organization\u00a0\u00a0 NaN<br \/>\n7\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Storage &amp; Organization\u00a0\u00a0 NaN<br \/>\n8\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Paper\u00a0 0.38<\/p>\n<p><strong><a href=\"https:\/\/data-flair.training\/blogs\/python-gui-programming\/\" target=\"_blank\" rel=\"noopener\">Follow this link for Python GUI Programming &#8211; Tkinter Tutorial<\/a><\/strong><\/p>\n<p>So, this was all about the Working of relational databases with Python. Hope you like our explanation.<\/p>\n<h3>Conclusion<\/h3>\n<p>Hence, in this Python Relation Database tutorial, we learned about the working of a relational database with Python. Now you can read CSV files, insert data into them, and delete data from them using simple SQL queries.<\/p>\n<p>Python allows you to schedule queries, export results to files, or trigger alerts if certain conditions are met in the database. You can also build custom dashboards that read data from SQL databases and update visuals in real time. Knowing how to work with relational databases gives you access to a world of structured, enterprise-grade data and adds tremendous value to your data science skill set<\/p>\n<p>Got any questions? Drop them in the comments below.<br \/>\nRelated Topic- <strong><a href=\"https:\/\/data-flair.training\/blogs\/python-interview-questions-2018\/\" target=\"_blank\" rel=\"noopener\">Top 30 Python Interview Questions and Answers in 2018<\/a><\/strong><br \/>\n<strong><a href=\"https:\/\/www.python.org\/\">For reference<\/a><\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Working with databases is a skill that every coder must have. We are going to make the process of managing data tables easier by using Python. We\u2019ll understand the basics first and then move&#46;&#46;&#46;<\/p>\n","protected":false},"author":5,"featured_media":20601,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[46],"tags":[1869,3195,3741,3743,4325,9393,10462,10463,10464,10465,10808,10838,11364,11498,13595,15282],"class_list":["post-20573","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-python","tag-best-python-database","tag-csv-file","tag-deleting-a-entire-table","tag-deleting-a-single-row","tag-example-of-relational-database","tag-pandas","tag-python-database-api","tag-python-database-library","tag-python-database-sqlite","tag-python-database-tutorial","tag-python-relational-database","tag-python-simple-database","tag-reading-a-relational-table","tag-relational-databases-with-python","tag-sqlalchemy","tag-using-databases-with-python"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to Work with Relational Database with Python - DataFlair<\/title>\n<meta name=\"description\" content=\"Let&#039;s understand working of relational databases with Python, how to insert values &amp; delete a table in a relational database, &amp; many more.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Work with Relational Database with Python - DataFlair\" \/>\n<meta property=\"og:description\" content=\"Let&#039;s understand working of relational databases with Python, how to insert values &amp; delete a table in a relational database, &amp; many more.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/\" \/>\n<meta property=\"og:site_name\" content=\"DataFlair\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DataFlairWS\/\" \/>\n<meta property=\"article:published_time\" content=\"2018-07-10T04:00:09+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-29T11:35:22+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/How-to-Work-With-Relational-Databases-With-Python-01.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"DataFlair Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:site\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DataFlair Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Work with Relational Database with Python - DataFlair","description":"Let's understand working of relational databases with Python, how to insert values & delete a table in a relational database, & many more.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/","og_locale":"en_US","og_type":"article","og_title":"How to Work with Relational Database with Python - DataFlair","og_description":"Let's understand working of relational databases with Python, how to insert values & delete a table in a relational database, & many more.","og_url":"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2018-07-10T04:00:09+00:00","article_modified_time":"2026-04-29T11:35:22+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/How-to-Work-With-Relational-Databases-With-Python-01.jpg","type":"image\/jpeg"}],"author":"DataFlair Team","twitter_card":"summary_large_image","twitter_creator":"@DataFlairWS","twitter_site":"@DataFlairWS","twitter_misc":{"Written by":"DataFlair Team","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/"},"author":{"name":"DataFlair Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/7f83c342f5d1632d6f7b4b0b0f447823"},"headline":"How to Work with Relational Database with Python","datePublished":"2018-07-10T04:00:09+00:00","dateModified":"2026-04-29T11:35:22+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/"},"wordCount":1052,"commentCount":0,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/How-to-Work-With-Relational-Databases-With-Python-01.jpg","keywords":["best python database","CSV file","Deleting a entire table","Deleting a single row","Example of Relational Database","Pandas","python database api","python database library","python database sqlite","python database tutorial","Python Relational Database","python simple database","Reading a Relational Table","Relational Databases with Python","sqlalchemy","using databases with python"],"articleSection":["Python Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/relational-database-with-python\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/","url":"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/","name":"How to Work with Relational Database with Python - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/How-to-Work-With-Relational-Databases-With-Python-01.jpg","datePublished":"2018-07-10T04:00:09+00:00","dateModified":"2026-04-29T11:35:22+00:00","description":"Let's understand working of relational databases with Python, how to insert values & delete a table in a relational database, & many more.","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/relational-database-with-python\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/How-to-Work-With-Relational-Databases-With-Python-01.jpg","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/How-to-Work-With-Relational-Databases-With-Python-01.jpg","width":1200,"height":628,"caption":"How to Work with Relational Database with Python"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/relational-database-with-python\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"Python Tutorials","item":"https:\/\/data-flair.training\/blogs\/category\/python\/"},{"@type":"ListItem","position":3,"name":"How to Work with Relational Database with Python"}]},{"@type":"WebSite","@id":"https:\/\/data-flair.training\/blogs\/#website","url":"https:\/\/data-flair.training\/blogs\/","name":"DataFlair","description":"Learn Today. Lead Tomorrow.","publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/data-flair.training\/blogs\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/data-flair.training\/blogs\/#organization","name":"DataFlair","url":"https:\/\/data-flair.training\/blogs\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","width":106,"height":48,"caption":"DataFlair"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/DataFlairWS\/","https:\/\/x.com\/DataFlairWS","https:\/\/www.linkedin.com\/company\/dataflair-web-services-pvt-ltd\/","https:\/\/www.youtube.com\/user\/DataFlairWS"]},{"@type":"Person","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/7f83c342f5d1632d6f7b4b0b0f447823","name":"DataFlair Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/4cf3a74600d131330b8c481d519afd1574093ed89f6d3396a95393ad223eb7cd?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/4cf3a74600d131330b8c481d519afd1574093ed89f6d3396a95393ad223eb7cd?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4cf3a74600d131330b8c481d519afd1574093ed89f6d3396a95393ad223eb7cd?s=96&d=mm&r=g","caption":"DataFlair Team"},"description":"DataFlair Team creates expert-level guides on programming, Java, Python, C++, DSA, AI, ML, data Science, Android, Flutter, MERN, Web Development, and technology. Our goal is to empower learners with easy-to-understand content. Explore our resources for career growth and practical learning.","url":"https:\/\/data-flair.training\/blogs\/author\/dfteam1\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/20573","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/comments?post=20573"}],"version-history":[{"count":8,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/20573\/revisions"}],"predecessor-version":[{"id":148131,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/20573\/revisions\/148131"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/20601"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=20573"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=20573"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=20573"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}