public HsqlCharacterDao(HsqlUnitOfWork uow)
	{
		super(uow);
		try {
			Connection connection = uow.getConnection();
			stmt = connection.createStatement();
			
			ResultSet rs = connection.getMetaData().getTables(null, null, null, null);
			
			boolean exists = false;
			while(rs.next())
			{
				if("product".equalsIgnoreCase(rs.getString("TABLE_NAME")))
				{
					exists = true;
					break;
				}
			}
			
			insert = connection.prepareStatement(""
					+ "INSERT INTO character(name,description)"
					+ " VALUES(?,?,?)");
			
			getById = connection.prepareStatement(""
					+ "SELECT * FROM product WHERE id=?");
			
			delete = connection.prepareStatement("DELETE FROM character WHERE id=?");
			
			getAll = connection.prepareStatement("SELECT * FROM character");
			
			update = connection.prepareStatement(""
					+ "update character set"
					+ "(name,description)=(?,?)"
					+ "where id=?");
			
			if(!exists)
			{
				stmt.executeUpdate(""
						+ "CREATE TABLE character("
						+ "id bigint GENERATED BY DEFAULT AS IDENTITY,"
						+ "name varchar(50),"
						+ "description varchar(500),"
						+ ")");
				
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
		
	}