diff --git a/access_node/__main__.py b/access_node/__main__.py
index 932a1d48aa9a43c6be843514622a5b9a1878daa9..9a7c5679c74b45fb99f73276b283e2e74fac2ce7 100644
--- a/access_node/__main__.py
+++ b/access_node/__main__.py
@@ -21,33 +21,41 @@ def SetupNestTables(postgres_username, postgres_password, port):
 	print("Database connection opened successfully!")
 
 	cur = con.cursor()
-	cur.execute("DROP TABLE IF EXISTS SIMULATION_NODES CASCADE")
-	cur.execute("DROP TABLE IF EXISTS MULTIMETERS CASCADE")
-	cur.execute("DROP TABLE IF EXISTS GIDS CASCADE")
-	cur.execute("DROP TABLE IF EXISTS MULT_PER_GID CASCADE")
-
-
-	cur.execute('''CREATE TABLE SIMULATION_NODES (
-      NODE_ID           SERIAL PRIMARY KEY NOT NULL UNIQUE,
-      ADDRESS           VARCHAR(50),
-      CURRENT_SIM_TIME  FLOAT);''')
-
-	cur.execute('''CREATE TABLE MULTIMETERS (
-      MULTIMETER_ID   INT PRIMARY KEY NOT NULL UNIQUE,
-      ATTRIBUTE       VARCHAR(50) );''')
-
-	cur.execute('''CREATE TABLE GIDS (
-      GID             INT PRIMARY KEY NOT NULL UNIQUE,
-      NODE_ID         INT,  
-      POPULATION_ID   INT,
-      FOREIGN KEY (NODE_ID) REFERENCES SIMULATION_NODES (NODE_ID));''')
-
-	cur.execute('''CREATE TABLE MULT_PER_GID(
-      GID             INT NOT NULL,
-      MULTIMETER_ID   INT NOT NULL,
-      PRIMARY KEY (GID,MULTIMETER_ID),
-      FOREIGN KEY (GID) REFERENCES GIDS (GID),
-      FOREIGN KEY (MULTIMETER_ID) REFERENCES MULTIMETERS (MULTIMETER_ID));''')
+	cur.execute("DROP TABLE IF EXISTS nest_simulation_node CASCADE")
+	cur.execute("DROP TABLE IF EXISTS nest_multimeter CASCADE")
+	cur.execute("DROP TABLE IF EXISTS nest_neuron CASCADE")
+	cur.execute("DROP TABLE IF EXISTS nest_neuron_multimeter CASCADE")
+
+
+	cur.execute('''
+	  CREATE TABLE nest_simulation_node (
+        id                      SERIAL PRIMARY KEY NOT NULL UNIQUE,
+        address                 VARCHAR(50),
+        current_simulation_time FLOAT
+	  );''')
+
+	cur.execute('''
+	  CREATE TABLE nest_multimeter (
+        id        INT PRIMARY KEY NOT NULL UNIQUE,
+        attribute VARCHAR(50)
+	  );''')
+
+	cur.execute('''
+	  CREATE TABLE nest_neuron (
+        id                 INT PRIMARY KEY NOT NULL UNIQUE,
+        simulation_node_id INT,  
+        population_id      INT,
+        FOREIGN KEY (simulation_node_id) REFERENCES nest_simulation_node (id)
+	  );''')
+
+	cur.execute('''
+	  CREATE TABLE nest_neuron_multimeter (
+        neuron_id     INT NOT NULL,
+        multimeter_id INT NOT NULL,
+        PRIMARY KEY (neuron_id,multimeter_id),
+        FOREIGN KEY (neuron_id) REFERENCES nest_neuron (id),
+        FOREIGN KEY (multimeter_id) REFERENCES nest_multimeter (id)
+	  );''')
 
 	con.commit()
 	con.close()
@@ -57,42 +65,50 @@ def SetupArborTables(postgres_username, postgres_password, port):
 	con = ConnectToDatabase(postgres_username, postgres_password, port)
 	print("Database connection opened successfully!")
 	cur = con.cursor()
-	cur.execute("DROP TABLE IF EXISTS PROBES CASCADE")
-	cur.execute("DROP TABLE IF EXISTS CELLS CASCADE")
-	cur.execute("DROP TABLE IF EXISTS ARBOR_SIMULATION_NODES CASCADE")
-	cur.execute("DROP TABLE IF EXISTS ATTRIBUTES CASCADE")
-
-	cur.execute('''CREATE TABLE ARBOR_SIMULATION_NODES (
-      NODE_ID           INT PRIMARY KEY NOT NULL UNIQUE,
-      ADDRESS           VARCHAR(50),
-      CURRENT_SIM_TIME  FLOAT);''')
-
-	cur.execute('''CREATE TABLE CELLS (
-      CELL_ID   			INT PRIMARY KEY NOT NULL UNIQUE
-			);''')
-
-	cur.execute('''CREATE TABLE CELL_PROPERTIES (
-      CELL_ID   			INT NOT NULL,
-			PROPERTY				VARCHAR(50) NOT NULL,
-			PRIMARY KEY (CELL_ID, PROPERTY),
-			FOREIGN KEY (CELL_ID) REFERENCES CELLS (CELL_ID),
-			);''')
-
-	cur.execute('''CREATE TABLE ATTRIBUTES (
-      ATTRIBUTE_ID		INT PRIMARY KEY NOT NULL UNIQUE,
-      NAME   					VARCHAR(50) NOT NULL,
-    	);''')
-
-	cur.execute('''CREATE TABLE PROBES (
-      PROBE_ID      INT PRIMARY KEY NOT NULL UNIQUE,
-      CELL_ID       INT NOT NULL,  
-      SEGMENT_ID 		INT NOT NULL,
-			POSITION   		FLOAT,
-			ATTRIBUTE_ID	INT NOT NULL,
-			NODE_ID       INT,
-      FOREIGN KEY (NODE_ID) REFERENCES ARBOR_SIMULATION_NODES (NODE_ID),
-			FOREIGN KEY (CELL_ID) REFERENCES CELLS (CELL_ID),
-			FOREIGN KEY (ATTRIBUTE_ID) REFERENCES ATTRIBUTES (ATTRIBUTE_ID));''')
+	cur.execute("DROP TABLE IF EXISTS arbor_probe CASCADE")
+	cur.execute("DROP TABLE IF EXISTS arbor_cell CASCADE")
+	cur.execute("DROP TABLE IF EXISTS arbor_simulation_node CASCADE")
+	cur.execute("DROP TABLE IF EXISTS arbor_attribute CASCADE")
+
+	cur.execute('''
+	  CREATE TABLE arbor_simulation_node (
+        id                       INT PRIMARY KEY NOT NULL UNIQUE,
+        address                  VARCHAR(50),
+        current_simulation_time  FLOAT
+	  );''')
+
+	cur.execute('''
+	  CREATE TABLE arbor_cell (
+        id INT PRIMARY KEY NOT NULL UNIQUE
+	  );
+	  ''')
+
+	cur.execute('''
+	  CREATE TABLE cell_property (
+        cell_id  INT NOT NULL,
+		property VARCHAR(50) NOT NULL,
+		PRIMARY KEY (cell_id, property),
+		FOREIGN KEY (cell_id) REFERENCES arbor_cell (id),
+	  );''')
+
+	cur.execute('''
+	  CREATE TABLE arbor_attribute (
+        id   INT PRIMARY KEY NOT NULL UNIQUE,
+        name VARCHAR(50) NOT NULL,
+	  );''')
+
+	cur.execute('''
+	  CREATE TABLE arbor_probe (
+        id                 INT PRIMARY KEY NOT NULL UNIQUE,
+        cell_id            INT NOT NULL,  
+        segment_id 		   INT NOT NULL,
+		position   		   FLOAT,
+		attribute_id	   INT NOT NULL,
+		simulation_node_id INT,
+        FOREIGN KEY (simulation_node_id) REFERENCES arbor_simulation_node (id),
+		FOREIGN KEY (cell_id) REFERENCES arbor_cell (id),
+		FOREIGN KEY (attribute_id) REFERENCES arbor_attribute (id)
+	  );''')
 
 	
 
@@ -114,10 +130,10 @@ def main():
 	con = ConnectToDatabase('postgres', 'docker', 5432)
 	cur = con.cursor()
 	# NEST
-	cur.execute("SELECT ADDRESS FROM SIMULATION_NODES")
+	cur.execute("SELECT address FROM nest_simulation_node")
 	nodes.nest_simulation_nodes = [i[0] for i in cur.fetchall()]
 	# Arbor
-	#cur.execute("SELECT ADDRESS FROM SIMULATION_NODES")
+	#cur.execute("SELECT address FROM nest_simulation_node")
 	#nodes.nest_simulation_nodes = [i[0] for i in cur.fetchall()]
 	con.close()
 
diff --git a/access_node/controllers/arbor_controller.py b/access_node/controllers/arbor_controller.py
index 4a74cee84c871a0ae1ad2d987a0b649b4bb5baed..4b8115a2c70cbc7f269f31510a1b33ee4e1086e1 100644
--- a/access_node/controllers/arbor_controller.py
+++ b/access_node/controllers/arbor_controller.py
@@ -30,7 +30,7 @@ def arbor_get_attributes():  # noqa: E501
     con = connect_to_database()
     cur = con.cursor()
 
-    cur.execute("SELECT NAME FROM ATTRIBUTES")
+    cur.execute("SELECT name FROM arbor_attribute")
     attributes = [i[0] for i in cur.fetchall()]
 
     con.close()
@@ -48,7 +48,7 @@ def arbor_get_cell_ids():  # noqa: E501
     con = connect_to_database()
     cur = con.cursor()
 
-    cur.execute("SELECT CELL_ID FROM CELLS")
+    cur.execute("SELECT id FROM arbor_cell")
     cell_ids = [i[0] for i in cur.fetchall()]
 
     con.close()
@@ -69,9 +69,9 @@ def arbor_get_cell_properties(cell_ids=None):  # noqa: E501
     cur = con.cursor()
 
     if cell_ids == None:
-        cur.execute("SELECT CELL_ID, PROPERTY FROM CELL_PROPERTIES")
+        cur.execute("SELECT cell_id, property FROM cell_property")
     else: 
-        cur.execute("SELECT CELL_ID, PROPERTY FROM CELL_PROPERTIES WHERE CELL_PROPERTIES.CELL_ID IN %s", (tuple(cell_ids),))
+        cur.execute("SELECT cell_id, property FROM cell_property WHERE cell_property.cell_id IN %s", (tuple(cell_ids),))
 
     properties = np.array(cur.fetchall())
     cell_ids = np.unique(properties[:,0])
@@ -159,20 +159,20 @@ def arbor_get_probes(attribute=None):  # noqa: E501
 
     if attribute == None:
         cur.execute('''SELECT 
-                        PROBES.PROBE_ID, 
-                        PROBES.CELL_ID, 
-                        PROBES.SEGMENT_ID,  
-                        PROBES.POSITION,
-                        FROM PROBES''')
+                        arbor_probe.id, 
+                        arbor_probe.cell_id, 
+                        arbor_probe.segment_id,  
+                        arbor_probe.position,
+                        FROM arbor_probe''')
     else:
         cur.execute('''SELECT 
-                        PROBES.PROBE_ID, 
-                        PROBES.CELL_ID, 
-                        PROBES.SEGMENT_ID,  
-                        PROBES.POSITION,
-                        FROM PROBES INNER JOIN ATTRIBUTES
-                        ON PROBES.ATTRIBUTE_ID = ATTRIBUTES.ATTRIBUTE_ID
-                        WHERE ATTRIBUTES.NAME = %s''', (attribute,))
+                        arbor_probe.id, 
+                        arbor_probe.cell_id, 
+                        arbor_probe.segment_id,  
+                        arbor_probe.position,
+                        FROM arbor_probe INNER JOIN arbor_attribute
+                        ON arbor_probe.attribute_id = arbor_attribute.id
+                        WHERE arbor_attribute.name = %s''', (attribute,))
 
     probes = np.array(cur.fetchall())
     con.close()
@@ -191,7 +191,7 @@ def arbor_get_simulation_time_info():  # noqa: E501
     con = connect_to_database()
     cur = con.cursor()
 
-    cur.execute("SELECT MIN(CURRENT_SIM_TIME) FROM ARBOR_SIMULATION_NODES")
+    cur.execute("SELECT MIN(current_simulation_time) FROM arbor_simulation_node")
     current_time = cur.fetchall()[0][0]
 
     con.close()
diff --git a/access_node/controllers/nest_controller.py b/access_node/controllers/nest_controller.py
index 6b8f1b86214cfad2729719414b6268c0c4a64c15..95a2934df78dd6ddab6aef92f4efe425c2c3c592 100644
--- a/access_node/controllers/nest_controller.py
+++ b/access_node/controllers/nest_controller.py
@@ -30,7 +30,7 @@ def nest_get_gids():  # noqa: E501
     con = connect_to_database()
     cur = con.cursor()
 
-    cur.execute("SELECT GID FROM GIDS")
+    cur.execute("SELECT id FROM nest_neuron")
     gids = [i[0] for i in cur.fetchall()]
 
     con.close()
@@ -50,7 +50,7 @@ def nest_get_gids_in_population(population_id):  # noqa: E501
     con = connect_to_database()
     cur = con.cursor()
 
-    cur.execute("SELECT GID FROM GIDS WHERE GIDS.POPULATION_ID ="+str(population_id))
+    cur.execute("SELECT id FROM nest_neuron WHERE nest_neuron.population_id ="+str(population_id))
     gids = [i[0] for i in cur.fetchall()]
 
     con.close()
@@ -68,13 +68,13 @@ def nest_get_multimeter_info():  # noqa: E501
     con = connect_to_database()
     cur = con.cursor()
 
-    ur.execute("SELECT * FROM MULTIMETERS;")
+    ur.execute("SELECT * FROM nest_multimeter;")
     attributes = np.array(cur.fetchall())
 
 
     gids = []
     for id in attributes[:,0]:
-        cur.execute("SELECT GID FROM MULT_PER_GID WHERE MULTIMETER_ID = %s", (id,))
+        cur.execute("SELECT id FROM nest_neuron_multimeter WHERE id = %s", (id,))
         gids.append([i[0] for i in cur.fetchall()])
 
     mult_info = []
@@ -175,15 +175,15 @@ def nest_get_neuron_properties(gids=None):  # noqa: E501
     con = connect_to_database()
     cur = con.cursor()
 
-    cur.execute("Select * FROM GIDS LIMIT 0")
+    cur.execute("Select * FROM nest_neuron LIMIT 0")
     colnames = np.array([desc[0] for desc in cur.description])
     # column 1 and 2 contain the Node_id/Population_id and thus are removed
     colnames = np.delete(colnames, [1,2])
 
     if gids == None:
-        cur.execute("Select * FROM GIDS")
+        cur.execute("Select * FROM nest_neuron")
     else:
-        cur.execute("Select * FROM GIDS WHERE GID IN %s", (tuple(gids),))
+        cur.execute("Select * FROM nest_neuron WHERE id IN %s", (tuple(gids),))
     
     con.close()
 
@@ -212,7 +212,7 @@ def nest_get_populations():  # noqa: E501
     con = connect_to_database()
     cur = con.cursor()
 
-    cur.execute("SELECT DISTINCT (POPULATION_ID) FROM GIDS")
+    cur.execute("SELECT DISTINCT (population_id) FROM nest_neuron")
     populations = [i[0] for i in cur.fetchall()]
 
     con.close()
@@ -230,7 +230,7 @@ def nest_get_simulation_time_info():  # noqa: E501
     con = connect_to_database()
     cur = con.cursor()
 
-    cur.execute("SELECT MIN(CURRENT_SIM_TIME) FROM SIMULATION_NODES")
+    cur.execute("SELECT MIN(current_simulation_time) FROM nest_simulation_node")
     current_time = cur.fetchall()[0][0]
 
     con.close()