CUBRID Engine  latest
db_class.c File Reference
#include "config.h"
#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#include <ctype.h>
#include <assert.h>
#include "authenticate.h"
#include "system_parameter.h"
#include "storage_common.h"
#include "db.h"
#include "class_object.h"
#include "object_print.h"
#include "server_interface.h"
#include "boot_cl.h"
#include "locator_cl.h"
#include "schema_manager.h"
#include "schema_template.h"
#include "object_accessor.h"
#include "set_object.h"
#include "virtual_object.h"
#include "parser.h"
#include "execute_schema.h"

Go to the source code of this file.

Functions

static int drop_internal (MOP class_, const char *name, SM_NAME_SPACE name_space)
 
static int add_method_internal (MOP class_, const char *name, const char *implementation, SM_NAME_SPACE name_space)
 
static int add_arg_domain (DB_OBJECT *class_, const char *name, int class_method, int index, int initial_domain, const char *domain)
 
DB_OBJECTdb_create_class (const char *name)
 
int db_drop_class (MOP class_)
 
int db_drop_class_ex (MOP class_, bool is_cascade_constraints)
 
int db_rename_class (MOP classop, const char *new_name)
 
int db_add_attribute_internal (MOP class_, const char *name, const char *domain, DB_VALUE *default_value, SM_NAME_SPACE name_space)
 
int db_add_attribute (MOP obj, const char *name, const char *domain, DB_VALUE *default_value)
 
int db_add_shared_attribute (MOP obj, const char *name, const char *domain, DB_VALUE *default_value)
 
int db_add_class_attribute (MOP obj, const char *name, const char *domain, DB_VALUE *default_value)
 
int db_drop_attribute (MOP class_, const char *name)
 
int db_drop_attribute_internal (MOP class_, const char *name)
 
int db_drop_shared_attribute (MOP class_, const char *name)
 
int db_drop_class_attribute (MOP class_, const char *name)
 
int db_add_set_attribute_domain (MOP class_, const char *name, int class_attribute, const char *domain)
 
int db_add_element_domain (MOP class_, const char *name, const char *domain)
 
int db_drop_set_attribute_domain (MOP class_, const char *name, int class_attribute, const char *domain)
 
int db_drop_element_domain (MOP class_, const char *name, const char *domain)
 
int db_change_default (MOP class_, const char *name, DB_VALUE *value)
 
int db_rename (MOP class_, const char *name, int class_namespace, const char *newname)
 
int db_rename_internal (MOP class_, const char *name, int class_namespace, const char *newname)
 
int db_rename_attribute (MOP class_, const char *name, int class_attribute, const char *newname)
 
int db_rename_method (MOP class_, const char *name, int class_method, const char *newname)
 
int db_add_method (MOP class_, const char *name, const char *implementation)
 
int db_add_class_method (MOP class_, const char *name, const char *implementation)
 
int db_drop_method (MOP class_, const char *name)
 
int db_drop_class_method (MOP class_, const char *name)
 
int db_change_method_implementation (MOP class_, const char *name, int class_method, const char *newname)
 
int db_add_argument (DB_OBJECT *class_, const char *name, int class_method, int index, const char *domain)
 
int db_set_method_arg_domain (DB_OBJECT *class_, const char *name, int index, const char *domain)
 
int db_set_class_method_arg_domain (DB_OBJECT *class_, const char *name, int index, const char *domain)
 
int db_add_set_argument_domain (DB_OBJECT *class_, const char *name, int class_method, int index, const char *domain)
 
int db_set_loader_commands (MOP class_, const char *commands)
 
int db_add_method_file (MOP class_, const char *name)
 
int db_drop_method_file (MOP class_, const char *name)
 
int db_drop_method_files (MOP class_)
 
int db_add_super (MOP class_, MOP super)
 
int db_add_super_internal (MOP class_, MOP super)
 
int db_drop_super (MOP class_, MOP super)
 
int db_drop_super_connect (MOP class_, MOP super)
 
int db_constrain_non_null (MOP class_, const char *name, int class_attribute, int on_or_off)
 
int db_constrain_unique (MOP class_, const char *name, int on_or_off)
 
int db_add_resolution (MOP class_, MOP super, const char *name, const char *alias)
 
int db_add_class_resolution (MOP class_, MOP super, const char *name, const char *alias)
 
int db_drop_resolution (MOP class_, MOP super, const char *name)
 
int db_drop_class_resolution (MOP class_, MOP super, const char *name)
 
int db_add_index (MOP classmop, const char *attname)
 
int db_drop_index (MOP classmop, const char *attname)
 
int db_add_constraint (MOP classmop, DB_CONSTRAINT_TYPE constraint_type, const char *constraint_name, const char **att_names, int class_attributes)
 
int db_drop_constraint (MOP classmop, DB_CONSTRAINT_TYPE constraint_type, const char *constraint_name, const char **att_names, int class_attributes)
 
int db_truncate_class (DB_OBJECT *class_)
 

Function Documentation

static int add_arg_domain ( DB_OBJECT class_,
const char *  name,
int  class_method,
int  index,
int  initial_domain,
const char *  domain 
)
static
static int add_method_internal ( MOP  class_,
const char *  name,
const char *  implementation,
SM_NAME_SPACE  name_space 
)
static
int db_add_argument ( DB_OBJECT class_,
const char *  name,
int  class_method,
int  index,
const char *  domain 
)

Definition at line 988 of file db_class.c.

References add_arg_domain().

int db_add_attribute_internal ( MOP  class_,
const char *  name,
const char *  domain,
DB_VALUE default_value,
SM_NAME_SPACE  name_space 
)
int db_add_class_attribute ( MOP  obj,
const char *  name,
const char *  domain,
DB_VALUE default_value 
)

Definition at line 288 of file db_class.c.

References db_add_attribute_internal(), and ID_CLASS_ATTRIBUTE.

int db_add_class_method ( MOP  class_,
const char *  name,
const char *  implementation 
)

Definition at line 819 of file db_class.c.

References add_method_internal(), and ID_CLASS_METHOD.

int db_add_class_resolution ( MOP  class_,
MOP  super,
const char *  name,
const char *  alias 
)
int db_add_element_domain ( MOP  class_,
const char *  name,
const char *  domain 
)

Definition at line 490 of file db_class.c.

References db_add_set_attribute_domain().

int db_add_index ( MOP  classmop,
const char *  attname 
)
int db_add_method ( MOP  class_,
const char *  name,
const char *  implementation 
)

Definition at line 797 of file db_class.c.

References add_method_internal(), and ID_METHOD.

int db_add_resolution ( MOP  class_,
MOP  super,
const char *  name,
const char *  alias 
)
int db_add_set_argument_domain ( DB_OBJECT class_,
const char *  name,
int  class_method,
int  index,
const char *  domain 
)

Definition at line 1049 of file db_class.c.

References add_arg_domain().

int db_add_set_attribute_domain ( MOP  class_,
const char *  name,
int  class_attribute,
const char *  domain 
)
int db_add_shared_attribute ( MOP  obj,
const char *  name,
const char *  domain,
DB_VALUE default_value 
)

Definition at line 268 of file db_class.c.

References db_add_attribute_internal(), and ID_SHARED_ATTRIBUTE.

int db_add_super ( MOP  class_,
MOP  super 
)
int db_add_super_internal ( MOP  class_,
MOP  super 
)
int db_change_default ( MOP  class_,
const char *  name,
DB_VALUE value 
)
int db_change_method_implementation ( MOP  class_,
const char *  name,
int  class_method,
const char *  newname 
)
int db_constrain_non_null ( MOP  class_,
const char *  name,
int  class_attribute,
int  on_or_off 
)
int db_constrain_unique ( MOP  class_,
const char *  name,
int  on_or_off 
)

Definition at line 1497 of file db_class.c.

References db_add_constraint(), DB_CONSTRAINT_UNIQUE, db_drop_constraint(), and NULL.

int db_drop_attribute ( MOP  class_,
const char *  name 
)
int db_drop_attribute_internal ( MOP  class_,
const char *  name 
)

Definition at line 380 of file db_class.c.

References drop_internal(), ER_SM_ATTRIBUTE_NOT_FOUND, error(), ID_ATTRIBUTE, ID_SHARED_ATTRIBUTE, and NO_ERROR.

Referenced by db_drop_attribute().

Here is the caller graph for this function:

int db_drop_class ( MOP  class_)

Definition at line 110 of file db_class.c.

References db_drop_class_ex().

Referenced by au_install(), and catcls_vclass_install().

Here is the caller graph for this function:

int db_drop_class_attribute ( MOP  class_,
const char *  name 
)

Definition at line 421 of file db_class.c.

References drop_internal(), and ID_CLASS_ATTRIBUTE.

int db_drop_class_ex ( MOP  class_,
bool  is_cascade_constraints 
)

Definition at line 122 of file db_class.c.

References CHECK_1ARG_ERROR, CHECK_CONNECT_ERROR, CHECK_MODIFICATION_ERROR, CHECK_PARTITION_SUBS, do_check_partitioned_class(), NULL, and sm_delete_class_mop().

Referenced by db_drop_class(), and drop_class_name().

Here is the caller graph for this function:

int db_drop_class_method ( MOP  class_,
const char *  name 
)

Definition at line 852 of file db_class.c.

References drop_internal(), and ID_CLASS_METHOD.

Referenced by catcls_vclass_install().

Here is the caller graph for this function:

int db_drop_class_resolution ( MOP  class_,
MOP  super,
const char *  name 
)
int db_drop_constraint ( MOP  classmop,
DB_CONSTRAINT_TYPE  constraint_type,
const char *  constraint_name,
const char **  att_names,
int  class_attributes 
)
int db_drop_element_domain ( MOP  class_,
const char *  name,
const char *  domain 
)

Definition at line 559 of file db_class.c.

References db_drop_set_attribute_domain().

int db_drop_index ( MOP  classmop,
const char *  attname 
)
int db_drop_method ( MOP  class_,
const char *  name 
)

Definition at line 835 of file db_class.c.

References drop_internal(), and ID_METHOD.

int db_drop_resolution ( MOP  class_,
MOP  super,
const char *  name 
)
int db_drop_set_attribute_domain ( MOP  class_,
const char *  name,
int  class_attribute,
const char *  domain 
)
int db_drop_shared_attribute ( MOP  class_,
const char *  name 
)

Definition at line 404 of file db_class.c.

References drop_internal(), and ID_SHARED_ATTRIBUTE.

int db_rename ( MOP  class_,
const char *  name,
int  class_namespace,
const char *  newname 
)
int db_rename_attribute ( MOP  class_,
const char *  name,
int  class_attribute,
const char *  newname 
)
int db_rename_class ( MOP  classop,
const char *  new_name 
)

Definition at line 151 of file db_class.c.

References CHECK_2ARGS_ERROR, CHECK_CONNECT_ERROR, CHECK_MODIFICATION_ERROR, CHECK_PARTITION_SUBS, do_check_partitioned_class(), NULL, and sm_rename_class().

Referenced by do_rename_internal().

Here is the caller graph for this function:

int db_rename_internal ( MOP  class_,
const char *  name,
int  class_namespace,
const char *  newname 
)
int db_rename_method ( MOP  class_,
const char *  name,
int  class_method,
const char *  newname 
)

Definition at line 726 of file db_class.c.

References db_rename_internal().

int db_set_class_method_arg_domain ( DB_OBJECT class_,
const char *  name,
int  index,
const char *  domain 
)

Definition at line 1024 of file db_class.c.

References add_arg_domain().

int db_set_loader_commands ( MOP  class_,
const char *  commands 
)
int db_set_method_arg_domain ( DB_OBJECT class_,
const char *  name,
int  index,
const char *  domain 
)

Definition at line 1006 of file db_class.c.

References add_arg_domain().

int db_truncate_class ( DB_OBJECT class_)

Definition at line 1859 of file db_class.c.

References CHECK_1ARG_ERROR, CHECK_CONNECT_ERROR, CHECK_MODIFICATION_ERROR, NO_ERROR, and sm_truncate_class().

Referenced by synccoll_force(), and truncate_class_name().

Here is the caller graph for this function: