I am trying to get this done, however it appears like MySQL is not permitting me. It is possible to means to fix this problem or shall we be held likely to always range from the function during my Place queries?

CREATE TABLE foo(
  created INT NOT NULL DEFAULT UNIX_TIMESTAMP()
)

I am conscious of the TIMESTAMP type that accepts a present_TIMESTAMP default, but my client was adamant on using epoch amount of time in the database.

The way in which MySQL implements the TIMESTAMP data type, it's really storing the epoch amount of time in the database. Which means you could only use a TIMESTAMP column having a default of CURRENT_TIMESTAMP and apply the UNIX_TIMESTAMP() into it if you wish to display it as being an int:

CREATE TABLE foo(
  created TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);

insert into foo values (current_Date()),(now());

select unix_timestamp(created) from foo;
+-------------------------+
| unix_timestamp(created) |
+-------------------------+
|              1300248000 |
|              1300306959 |
+-------------------------+
2 rows in set (0.00 sec)

However, if you want the datatype from the column to become INT, you should use R. Bemrose's suggestion and hang it via trigger:

CREATE TABLE foo(
  created INT NULL
);

delimiter $$

create trigger tr_b_ins_foo before insert on foo for each row
begin
  if (new.created is null)
  then
    set new.created = unix_timestamp();
  end if;
end $$

delimiter ;


insert into foo values (unix_timestamp(current_Date())), (null);

select created from foo;
+------------+
| created    |
+------------+
| 1300248000 |
| 1300306995 |
+------------+
2 rows in set (0.00 sec)

From the documentation:

With one exception, the default value should be a continuing it can't be considered a function or perhaps an expression. What this means is, for instance, that you simply cannot set the default for any date column to become the worth of a function for example NOW() or CURRENT_DATE. The exception is the fact that you are able to specify CURRENT_TIMESTAMP as the default for any TIMESTAMP column.

Well, if MySQL will not let you're doing so directly, you could get it done utilizing a [cde] trigger.