diff --git a/__pycache__/update.cpython-310.pyc b/__pycache__/update.cpython-310.pyc
index 7dcef07151736a96a002701bc7cd870c9560a387..43b7e737d1716ed45f12558423c4dee814fb6fe0 100644
Binary files a/__pycache__/update.cpython-310.pyc and b/__pycache__/update.cpython-310.pyc differ
diff --git a/db_mahasiswa.db b/db_mahasiswa.db
index d49d6b66438b0b06ed867412d66074e7da5d0ce3..e691e60db5345b45a4429449abd90111f5f0981a 100644
Binary files a/db_mahasiswa.db and b/db_mahasiswa.db differ
diff --git a/update.py b/update.py
index ce3eaf9f8a5d59734eb8e692cb569f7ea472df18..5e28806cd66a5340ddc2c12ab51cec3c5fd1f71b 100644
--- a/update.py
+++ b/update.py
@@ -24,10 +24,13 @@ async def updateMahasiswa(mahasiswa: Mahasiswa):
         query_get = "SELECT * FROM mahasiswa WHERE npm = :npm"
         mahasiswa_obj = await database.fetch_one(query=query_get, values={"npm": mahasiswa.npm})
 
-        # insert new mahasiswa
-        query = table_mahasiswa.insert().values(npm=mahasiswa.npm, nama=mahasiswa.nama)
-        newMahasiswa_id  = await database.execute(query)
-        response = {"status":"OK"}
-        return response
+        if mahasiswa_obj==None :
+            # insert new mahasiswa
+            query = table_mahasiswa.insert().values(npm=mahasiswa.npm, nama=mahasiswa.nama)
+            newMahasiswa_id  = await database.execute(query)
+            response = {"status":"OK"}
+            return response
+        else :
+            return {"detail" : "Mahasiswa dengan npm " + str(mahasiswa.npm) + " sudah ada"}
     except :
-        raise HTTPException(status_code=400, detail= "Mahasiswa dengan npm " + str(mahasiswa.npm) + " sudah ada")
+        raise HTTPException(status_code=400, detail= "Error occured")