Skip to main content

Figuring out Postgres Part 2(Adding data)

 My database is set up. My table is set up. Now it's time to add some data. There are 2 main ways we can do it - add data from an external file, or add data with Python. 

Adding data from an external file

A colleague of mine introduced me to a website - Kaggle. You can download datasets in a few different formats from this site which is pretty amazing! I found one for cat breed characteristics. I don't put much stock in breeds and that sort of thing, but I thought it would be a nice data set to use.



The table I created previously wasn't exactly a good match for this data so I created a new table. One that was specifically for domestic cats and not all cats, big and small. 

In SQL Shell(psql)

Using the copy command in the screenshot below, I copied data from the csv file to my domestic_cats table.

Printing a simple query in my Python file revealed that the data was actually copied. It was pretty exciting to see it all there. 

Data printed to the terminal

Input data with Python

Back in my Python file I inserted a new entry into the table and printed it to the terminal by querying that entry using it's primary key, BREED_NAME. 



There are of course several different ways you can execute both options. You could insert data from a csv file into the database using code rather than shell commands. You could ask for user input instead of hardcoding data insertions into the table each time. But to me, those are essentially just variations of adding data from a file and adding data using code. 






Comments

Popular posts from this blog

So long and thanks for all the fish! Part 1 of 2

I have been with the Tech Academy both as a software developer bootcamp student, as well as an employee. After my bootcamp, I was hired first as the live project instructor, and then as Live Project Director. This, I believe, gives me a unique point of view. I have absolutely no regrets and would join the bootcamp again. But there are a number of things I would do differently. What I have learnt as a former student 1. DO NOT WORK PART TIME.   I worked part-time(20-30hrs) during my bootcamp. I was up at 2.30-3.00am every day to work for several hours. I took a short nap, and then I took a 1hr bus ride down to campus. Studied for 7- 9 hours. Took a 1hr bus ride back home. Lather, rinse, repeat. I also had some family obligations. My weekends and half the summer were taken up caring for my young stepdaughter. I was completely exhausted by the end of the bootcamp and I didn't know if I could do more. Learning to program is HARD. You need to be fully focused. I am fortunate because I di...

Finding your roots

I tried working on the Algorithms I course on Coursera a while back and I had no idea what was going on so I never continued with it. I decided to give it another try now that I've read up a little on algorithms. It's still using a lot of my brain cells but I am slowly making my way through it.  Learning about Quick-unions in Java(from the course) Java seems almost identical to C#. I've forgotten most of what I've learnt about C# but, there's enough in this brain for me to read this. I had such a tough time understanding the root method. I wrote it out in my notebook and worked through it to figure out how it functions and I am amazed! That line is so simple yet complex. And it reminded me of a binary tree LeetCode challenge I was trying to work on with my colleagues some time ago. I had no idea what binary trees even were at that point. The challenge involved finding roots and tre...

Algorithms: Max Consecutive Ones

Challenge from LeetCode: count the maximum number of consecutive 1s in a list of 1s and 0s. I got it done pretty quickly, or so I thought. I had not accounted for what would happen upon the last iteration through the for loop. Reworked it and this is what I got:  def checkMax(maxConsec, count):         if count > maxConsec:             return count, 0         else:             return maxConsec, 0          class Solution:         def findMaxConsecutiveOnes(self, nums: List[int]) -> int:         maxConsec = 0         count = 0                 for index, num in enumerate(nums):             if num == 1:                   count += 1             ...