Hi, I have a table RoomTable which have 3 columns as
1.RoomID (primary key),2.  RoomName 3. RoomSuffix

public void insertToRoomTable(String rName)
{
      try
        {
             sampleDB.execSQL("CREATE TABLE IF NOT EXISTS " +
                    ROOM_TABLE_NAME +
                    " (RoomID integer primary key
autoincrement,RoomName VARCHAR,RoomSuffix integer);");

                boolean roomExist = checkRoomExist(roomName);
                        System.out.println ("RoomExist is"+roomExist);
                        if (roomExist)
                        {
                                Cursor c4 = sampleDB.rawQuery("SELECT 
MAX(RoomSuffix) AS
MAX_SUFFIX FROM RoomTable WHERE RoomName = '"+roomName+"'",null);

                                if (c4 != null )
                        {
                                if  (c4.moveToFirst())
                                {
                                        System.out.println 
("??????????"+c4.getCount());
                                        do
                                        {
                                                System.out.println
(c4.getInt(c4.getColumnIndex("MAX_SUFFIX")));
                                                suf = 
c4.getInt(c4.getColumnIndex("MAX_SUFFIX"));
                                                suf++;
                                                System.out.println 
("!!!!!!!!!!!!"+suf);

                                        }
                                        while (c4.moveToNext());

                                }
                        }


                                roomName = roomName+suf;
                                c4.close();

                        }

                sampleDB.execSQL("INSERT INTO " +
                                ROOM_TABLE_NAME +
                                " Values (null,'"+roomName+"','"+suf+"');");

                System.out.println ("Inserted values into RoomTable
are"+roomName+":"+suf);

        }
                catch (Exception e)
                {
                        e.printStackTrace();
                }
  }

public boolean checkRoomExist(String name)
        {
                c = sampleDB.rawQuery("SELECT RoomName FROM " +ROOM_TABLE_NAME ,
null);
                if (c != null )
        {
                System.out.println ("%%%%%%%%%%%"+c.getCount());
                if  (c.moveToFirst())
                {
                        do
                        {
                                rname = 
c.getString(c.getColumnIndex("RoomName"));
                                System.out.println ("RoomName is"+rname);

                                if (rname.equalsIgnoreCase(name))
                                {
                                        System.out.println ("Room Exist");
                                        return true;
                                }


                        }
                        while (c.moveToNext());
                }
        }

        c.close();
        return false;

        }

Here what I want is - If suppose user insert first record as
1   Hall   0
and again if he insert record with same RoomName i.e Hall then
RoomName must be Hall1(i.e. RoomName+suffix)
2  Hall1   1
Third record must be
3   Hall2  2
If user enter other roomname thenit must be

4   Kitchen  0
again insert suppose Hall then

5   Hall   3 (Because last Hall suffix is 2)

Means I want different suffix for different RoomName. But using above
code I get output as

1   Hall     0
2   Hall 1  1
3   Hall1   1
4   Hall1   1

Each time I get Suffix as 1.
What is wrong in this code?  And if I remove where clause and write it
as

if (roomExist)                                                                  
                                                                        {
                                Cursor c4 = sampleDB.rawQuery("SELECT 
MAX(RoomSuffix) AS
MAX_SUFFIX FROM RoomTable ",null);

.....
}

Then here it is not maintaining different suffix for different
RoomName and I get output as

1  Hall            0
2  Hall1           1
3  Hall 2          2
4 Kitchen3       3

And what I want is
1  Hall     0
2  Hall1    1
3  Hall2    2
4 Kitchen  0

How to get This? Thanks in advance




-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to