Log of /trunk/webwork2/lib/WeBWorK/DB/Schema/SQL.pm
Parent Directory
Revision
1167 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Jun 13 23:35:54 2003 UTC (9 years, 11 months ago) by
sh002i
File length: 7141 byte(s)
Diff to
previous 972
Several changes to the DB system:
Made all schemas subclasses of WeBWorK::DB::Schema, factored common
constructor code out into Schema.pm. Made all drivers subclasses of
WeBWorK::DB::Schema, factored common constructor code out into
Driver.pm.
Removed superfluous style() and tables() functions from schemas and
drivers. (You can treat the constants in which these are defined as
functions, and call them like $object->STYLE or $object->STYLE().)
WeBWorK::DB now tries to build all tables defined in %dbLayout, instead
of using its own internal list. (TODO: add warnings if known tables are
not built or unknown tables are built.)
Made the error messages given during DB instantiation a little more
intelligent.
Changed the behavior of the exists() and delete() schema methods in all
schemas (and updated the docs) s.t. not all elements of @keyparts have
to be defined.
Changed WeBWorK::DB to allow undefined values to be passed instead of
IDs in delete* method calls, but only if the call was made from
WeBWorK::DB itself (to protect you from accidentally passing an
undefined value and clobbering your whole database).
Changed delete functions to be more efficient. For example,
deleteGlobalSet no longer has to say:
$self->deleteUserSet($_, $setID)
foreach $self->listSetUsers($setID);
$self->deleteGlobalProblem($setID, $_)
foreach $self->listGlobalProblems($setID);
Instead it says:
$self->deleteUserSet(undef, $setID);
$self->deleteGlobalProblem($setID, undef);
This is somewhat more efficient with hash-style schemas, and MUCH more
efficient with the SQL schema.
As usual, be wary of lingering bugs. w00t!
-sam
Revision
972 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Jun 2 20:08:53 2003 UTC (9 years, 11 months ago) by
sh002i
File length: 7628 byte(s)
Diff to
previous 931
The delete() method now uniformly returns a false value (instead of
dying) if no matching record exists.
-sam
Revision
931 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed May 28 19:21:04 2003 UTC (9 years, 11 months ago) by
sh002i
File length: 7619 byte(s)
Diff to
previous 923
changed the Schema interface (to include a reference to $db) and changed
DBI connect to connect_cached.
-sam
Revision
923 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed May 28 01:27:38 2003 UTC (9 years, 11 months ago) by
sh002i
File length: 7597 byte(s)
Diff to
previous 919
additional work on DB system and SQL backend.
Record:: classes now support a can() method.
fixed some other stuff.
-sam
Revision
904 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon May 26 22:13:34 2003 UTC (9 years, 11 months ago) by
sh002i
File length: 7225 byte(s)
Diff to
previous 874
More SQL work. Appears to be working, after very limited testing. See
forthcoming email for details.
-sam
This form allows you to request diffs between any two revisions of this file.
For each of the two "sides" of the diff,
enter a numeric revision.