code: def create_table(self, tablename, columns, primary_key=None, force_recreate=False):
          
          if self.is_table_existed(tablename):
              if force_recreate:
                  self.drop_table(tablename)
              else:
                  raise MonSQLException('TABLE ALREADY EXISTS')
  
          columns_specs = ','.join(columns)
          if primary_key is not None:
              if len(primary_key) == 0:
                  raise MonSQLException('PRIMARY KEY MUST AT LEAST CONTAINS ONE COLUMN')
  
              columns_specs += ',PRIMARY KEY(%s)' %(','.join(primary_key))
  
          sql = 'CREATE TABLE %s(%s)' %(tablename, columns_specs)
          self.__cursor.execute(sql)
          self.__db.commit()
docs: :Parameters:
  
          - tablename: string
          - columns: list or tuples, with each element be a string like 'id INT NOT NULL UNIQUE'
          - primary_key: list or tuples, with elements be the column names
          - force_recreate: When table of the same name already exists, if this is True, drop that table; if False, raise exception
          
          :Return: Nothing