Question: I am trying to use two `TapGestures` on two labels, but it always shows the result of last one TapGesture. My code is as follows:

```
 [write_review_label addGestureRecognizer:[[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(open_view:)]];
[map_image addGestureRecognizer:[[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(open_view:)]];
write_review_label.tag = 1;
map_image.tag = 2;

-(void)open_view:(UITapGestureRecognizer *)recog1
{
NSLog( @"recog1.view.tag == %d",recog1.view.tag);
if (recog1.view.tag==2)
{
    [self performSegueWithIdentifier:@"mapsegue" sender:self];
}
else
    [self performSegueWithIdentifier:@"loginsegue" sender:self];
 }

```

Answer: 
you would need to take item\_name as param and put in quotes, 

```
String sql="SELECT id,price FROM item WHERE item.name='"+ item_name+"'";

```
First, you need an reader, like this

```
private static void reader() throws SQLException {
    DataBaseName db = new DataBaseName ();
    names = db.getNames();
}

```