public static Dictionary createNew(Connection con, String name, String desc, String lang1, String lang2)
	{
		Dictionary dict = null;
		try
		{
			PreparedStatement ps = con.prepareStatement(
					"INSERT INTO " + tableInfo.tableName
					+ " (Name, Descr, Lang1, Lang2) VALUES (?, ?, ?, ?)",
					Statement.RETURN_GENERATED_KEYS);
			ps.setString(1, name);
			ps.setString(2, desc);
			ps.setString(3, lang1);
			ps.setString(4, lang2);
			ps.executeUpdate();
			ResultSet rs = ps.getGeneratedKeys();
			rs.next();
			dict = new Dictionary(con, rs.getString(1));
			ps.close();
		}
		catch(SQLException sqle)
		{
			if (sqle.getSQLState().equals("42X05")) // table does not exist
			{
				DBObject.createTable(con, tableInfo);
				return Dictionary.createNew(con, name, desc, lang1, lang2);
			}
		}
		return dict;
	}