Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

XMLB list of DDL functions to create: Difference between revisions

From MoodleDocs
Line 31: Line 31:
** <font color="green">Done: </font>drop_key ($xmldb_table, $xmldb_key);
** <font color="green">Done: </font>drop_key ($xmldb_table, $xmldb_key);
** rename key ($xmldb_table, $xmldb_key, $newname);
** rename key ($xmldb_table, $xmldb_key, $newname);
** <font color="green">Done: </font>find_key_name ($xmldb_table, $xmldb_key); - although it isn't using AdoDB MetaXXX at all. Also, read [[Coding#Database structures|db coding]] for more info.
** <font color="green">Done: </font>find_key_name ($xmldb_table, $xmldb_key); - <font color="red">although it isn't using AdoDB MetaXXX at all (unsupported)</font>. Also, read [[Coding#Database structures|db coding]] for more info.
* '''Index functions'''
* '''Index functions'''
** <font color="green">Done: </font>add_index ($xmldb_table, $xmldb_index);
** <font color="green">Done: </font>add_index ($xmldb_table, $xmldb_index);

Revision as of 17:08, 30 September 2006

XML database schema > Roadmap > Creating new DDL functions > List of DDL functions to create


This page will be used to list and track the process of implementation of the new DDL functions available under Moodle 1.7.

This document can be outdated in the future, if new DDL functions arrive, and no efforts to keep it updated will be done. Its primary goal was to have the initial list and to track the work performed, by using the Done tag. Interim process can use the Work In Progress tag.

You always can view, in this link, the actual list of available DDL functions.

The initial list

  • Table functions
    • Done: create_table ($xmldb_table);
    • Done: drop_table ($xmldb_table);
    • Work In Progress: rename_table ($xmldb_table, $newname);
    • Done: table_exists ($xmldb_table);
  • Field functions
    • Done: add_field ($xmldb_table, $xmldb_field);
    • Done: drop_field ($xmldb_table, $xmldb_field);
    • Work In Progress: rename_field ($xmldb_table, $xmldb_field, $newname);
    • Done: change_field_type ($xmldb_table, $xmldb_field); (supports int<-->char, number<-->char, float<-->char)
    • Done: change_field_precision ($xmldb_table, $xmldb_field);
    • Done: change_field_unsigned ($xmldb_table, $xmldb_field);
    • Done: change_field_notnull ($xmldb_table, $xmldb_field);
    • Not Implemented: change_field_sequence ($xmldb_table, $xmldb_field); (some cross-db problems if more than one sequence is tried per table)
    • Done: change_field_enum ($xmldb_table, $xmldb_field);
    • Done: change_field_default ($xmldb_table, $xmldb_field);
    • Done: field_exists ($xmldb_table, $xmldb_field);
  • Key functions
    • Done: add_key ($xmldb_table, $xmldb_key);
    • Done: drop_key ($xmldb_table, $xmldb_key);
    • rename key ($xmldb_table, $xmldb_key, $newname);
    • Done: find_key_name ($xmldb_table, $xmldb_key); - although it isn't using AdoDB MetaXXX at all (unsupported). Also, read db coding for more info.
  • Index functions
    • Done: add_index ($xmldb_table, $xmldb_index);
    • Done: drop_index ($xmldb_table, $xmldb-index);
    • rename_index ($xmldb_table, $xmldb_index, $newname);
    • Done: index_exists ($xmldb_table, $xmldb_index);
    • Done: find_index_name ($xmldb_table, $xmldb_index);