tcis.class_instance_id = cis.id AND tcit.treenode_id = tcis.treenode_id '''.format(direction=direction) c.execute(query) rows = c.fetchall() for terminal_id, skeleton_id in rows: new_values = {'u': user_id, 'p': project_id, 'r': part_of_id, 'ca': terminal_id, 'cb': skeleton_id} # Check whether that link is already present: c.execute('''SELECT id FROM class_instance_class_instance WHERE class_instance_a = %(ca)s AND class_instance_b = %(cb)s AND project_id = %(p)s AND relation_id = %(r)s''', new_values) if len(c.fetchall()) < 1: c.execute('''INSERT INTO class_instance_class_instance (user_id, project_id, relation_id, class_instance_a, class_instance_b) VALUES (%(u)s, %(p)s, %(r)s, %(ca)s, %(cb)s)''', new_values) else: print >> sys.stderr, "The part_of relation between terminal {0} and skeleton {1} already exists".format(terminal_id, skeleton_id) db_connection.commit() c.close() db_connection.close()
c.execute('SELECT c.class_name, c.id, t.name FROM class_instance t, class c '+ 'WHERE c.id = t.class_id AND '+ 't.id = %s', (cid,) ) class_name, class_id, ci_name = c.fetchone() print(" ... of class: {0} ({1})".format(class_id,class_name)) print(" ... with name: "+ci_name) print_all_relationships(cid) elif table_name == 'connector': print(' ... at position: ', get_location(cid)) print_all_relationships(cid) elif table_name == 'treenode': print(' ... at position: ', get_location(cid)) print(' ... of radius: ', get_treenode_radius(cid)) print_all_relationships(cid) elif table_name == 'class': c.execute('SELECT class_name FROM class t WHERE id = %s',(cid,)) print(' ... with name: '+c.fetchone()[0]) elif table_name == 'relation': c.execute('SELECT relation_name FROM relation t WHERE id = %s',(cid,)) print(' ... with name: '+c.fetchone()[0]) else: print("There's currently no support for entities from the table '{0}'".format(table_name)) c.close() db_connection.close()