protected function sqlupdate(array $fields, array $nums = null, array $bools = null) {
		$db = $this->db;

		$idfield = $this->idfield();

		$nums != null or $nums = [];
		$bools != null or $bools = [];

		$keys = array_diff(array_keys($fields), [ $idfield ]);
		$strs = array_diff(array_keys($fields), $bools, $nums);

		$setters = \hlin\Arr::join(",\n\t\t\t\t\t       ", $keys, function ($_, $val) {
			return "`$val` = :$val";
		});

		$db->prepare
			(
				"	UPDATE `[table]`
					   SET $setters
					 WHERE `$idfield` = :$idfield
				",
				[ 'table' => $this->constants()['table'] ]
			)
			->strs($fields, $strs)
			->bools($fields, $bools)
			->nums($fields, $nums)
			->execute();

		return $fields[$idfield];
	}
protected function sqlupdate(array $fields, array $nums = null, array $bools = null) {
		$db = $this->db;

		$idfield = $this->idfield();

		$nums != null or $nums = [];
		$bools != null or $bools = [];

		$keys = array_diff(array_keys($fields), [ $idfield ]);
		$strs = array_diff(array_keys($fields), $bools, $nums);

		$setters = \hlin\Arr::join(",\n\t\t\t\t\t       ", $keys, function ($_, $val) {
			return "`$val` = :$val";
		});

		$db->prepare
			(
				"	UPDATE `[table]`
					   SET $setters
					 WHERE `$idfield` = :$idfield
				",
				[ 'table' => $this->constants()['table'] ]
			)
			->strs($fields, $strs)
			->bools($fields, $bools)
			->nums($fields, $nums)
			->execute();

		return $fields[$idfield];
	}
protected function sqlupdate ( array $ fields , array $ nums = null , array $ bools = null ) { $ db = $ this -> db ; $ idfield = $ this -> idfield ( ) ; $ nums != null or $ nums = [ ] ; $ bools != null or $ bools = [ ] ; $ keys = array_diff ( array_keys ( $ fields ) , [ $ idfield ] ) ; $ strs = array_diff ( array_keys ( $ fields ) , $ bools , $ nums ) ; $ setters = \ hlin \ Arr :: join ( ",\n\t\t\t\t\t       " , $ keys , function ( $ _ , $ val ) { return "`$val` = :$val" ; } ) ; $ db -> prepare ( "	UPDATE `[table]`
					   SET $setters
					 WHERE `$idfield` = :$idfield
				" , [ 'table' => $ this -> constants ( ) [ 'table' ] ] ) -> strs ( $ fields , $ strs ) -> bools ( $ fields , $ bools ) -> nums ( $ fields , $ nums ) -> execute ( ) ; return $ fields [ $ idfield ] ; }
Update fields, if bools or nums are specified the fields mentioned are
treated as strings

@return int updated entry id
Update fields if bools or nums are specified the fields mentioned are treated as strings