What is "tablespace"? Should I remove it?
CREATE TABLE isn't always a simple statement, the one which enumerates columns and their datatypes, possibly some constraints. Nope, it can get really complex - see documentation.
Just for example, this is what SQL Developer extracts from metadata for Scott's DEPT table:
CREATE TABLE "SCOTT"."DEPT" ("DEPTNO" NUMBER(2,0), "DNAME" VARCHAR2(14 BYTE), "LOC" VARCHAR2(13 BYTE) ) SEGMENT CREATION IMMEDIATE PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT) TABLESPACE "USERS" ;
TABLESPACE is one of parameters you can use, and it specifies ... well, tablespace in which Oracle creates that table. Usually, there's one tablespace we use for our data. Sometimes, there are more of them - in that case, you can choose which one to use. If you don't specify it, Oracle will use a default tablespace assigned to that user.
Therefore, can you omit it? Yes, you can - table will then be created in that default tablespace (regardless of its name).