public static Phrase createNew(Connection con, int dic, Type type, String phrase1, String phrase2)
	{
		Phrase phrase = null;
		try
		{
			PreparedStatement ps = con.prepareStatement(
					"INSERT INTO " + tableInfo.tableName
					+ " (Dic, Type, Phrase1, Phrase2) VALUES (?, ?, ?, ?)",
					Statement.RETURN_GENERATED_KEYS);
			ps.setInt(1, dic);
			ps.setInt(2, Type.toInt(type));
			ps.setString(3, phrase1);
			ps.setString(4, phrase2);
			ps.executeUpdate();
			ResultSet rs = ps.getGeneratedKeys();
			rs.next();
			phrase = new Phrase(con, rs.getString(1));
			ps.close();
		}
		catch(SQLException sqle)
		{
			if (sqle.getSQLState().equals("42X05")) // table does not exist
			{
				DBObject.createTable(con, tableInfo);
				return Phrase.createNew(con, dic, type, phrase1, phrase2);
			}
		}
		return phrase;
	}