PEAR is archived and read-only

This mirror preserves historical PEAR package releases and metadata so existing references remain available.

Home » Authentication » LiveUser » Bug #2808

SQLite Support

Details

Request #2808SQLite Support
Submitted2004-11-22 14:56 UTC
Fromcontact at mann dot fr
StatusClosed
PackageLiveUser
PHP Version4.3.8
OSWin
Roadmaps(Not assigned)

Comments

[2004-11-22 14:56 UTC] contact at mann dot fr

Description:
------------
I've got SQLite files for LiveUser_Perm.
I'll try to upload them with this bug.
If you'll accept me as a team member, I'll work :
(1) To get other Database formats for this package
(2) To enforce the independence of the Perm package
?

[2004-11-22 15:04 UTC] contact at mann dot fr

-- data/.../perm_db_simple.sqlite

--
-- Created by SQL::Translator::Producer::SQLite
-- Created on Sat Nov 20 11:47:04 2004
--
BEGIN TRANSACTION;

--
-- Table: liveuser_applications
--
CREATE TABLE liveuser_applications (
application_id INTEGER PRIMARY KEY NOT NULL DEFAULT '0',
application_define_name varchar(32) NOT NULL DEFAULT ''
);

--
-- Table: liveuser_areas
--
CREATE TABLE liveuser_areas (
area_id INTEGER PRIMARY KEY NOT NULL DEFAULT '0',
application_id int(11) NOT NULL DEFAULT '0',
area_define_name varchar(32) NOT NULL DEFAULT ''
);

--
-- Table: liveuser_languages
--
CREATE TABLE liveuser_languages (
language_id INTEGER PRIMARY KEY NOT NULL DEFAULT '0',
two_letter_name char(2) NOT NULL DEFAULT ''
);

--
-- Table: liveuser_perm_users
--
CREATE TABLE liveuser_perm_users (
perm_user_id INTEGER PRIMARY KEY NOT NULL DEFAULT '0',
auth_user_id varchar(32) NOT NULL DEFAULT '0',
perm_type tinyint(3) DEFAULT NULL,
auth_container_name varchar(32) NOT NULL DEFAULT ''
);

--
-- Table: liveuser_rights
--
CREATE TABLE liveuser_rights (
right_id INTEGER PRIMARY KEY NOT NULL DEFAULT '0',
area_id int(11) NOT NULL DEFAULT '0',
right_define_name varchar(32) NOT NULL DEFAULT '',
has_implied char(1) NOT NULL DEFAULT 'N',
has_level char(1) NOT NULL DEFAULT 'N'
);

--
-- Table: liveuser_translations
--
CREATE TABLE liveuser_translations (
section_id int(11) NOT NULL DEFAULT '0',
section_type tinyint(3) NOT NULL DEFAULT '0',
language_id smallint(5) NOT NULL DEFAULT '0',
name varchar(50) NOT NULL DEFAULT '',
description varchar(255) DEFAULT NULL,
PRIMARY KEY (section_id, section_type, language_id)
);

--
-- Table: liveuser_userrights
--
CREATE TABLE liveuser_userrights (
perm_user_id int(11) NOT NULL DEFAULT '0',
right_id int(11) NOT NULL DEFAULT '0',
right_level tinyint(3) DEFAULT '3',
PRIMARY KEY (right_id, perm_user_id)
);

CREATE INDEX areas_application_id_liveuser_ on liveuser_areas (application_id);
CREATE INDEX rights_area_id_liveuser_rights on liveuser_rights (area_id);
CREATE INDEX perm_user_id_liveuser_userrigh on liveuser_userrights (perm_user_id);
CREATE INDEX right_id_liveuser_userrights on liveuser_userrights (right_id);
CREATE UNIQUE INDEX application_define_name_liveus on liveuser_applications (application_define_name);
CREATE UNIQUE INDEX area_define_name_liveuser_area on liveuser_areas (application_id, area_define_name);
CREATE UNIQUE INDEX two_letter_name_liveuser_langu on liveuser_languages (two_letter_name);
CREATE UNIQUE INDEX right_define_name_liveuser_rig on liveuser_rights (area_id, right_define_name);
COMMIT;

[2004-11-22 15:05 UTC] contact at mann dot fr

-- data/LiveUser/sql/perm_db_simple.sqlite
--
-- Created by SQL::Translator::Producer::SQLite
-- Created on Sat Nov 20 11:47:04 2004
--
BEGIN TRANSACTION;

--
-- Table: liveuser_applications
--
CREATE TABLE liveuser_applications (
application_id INTEGER PRIMARY KEY NOT NULL DEFAULT '0',
application_define_name varchar(32) NOT NULL DEFAULT ''
);

--
-- Table: liveuser_areas
--
CREATE TABLE liveuser_areas (
area_id INTEGER PRIMARY KEY NOT NULL DEFAULT '0',
application_id int(11) NOT NULL DEFAULT '0',
area_define_name varchar(32) NOT NULL DEFAULT ''
);

--
-- Table: liveuser_languages
--
CREATE TABLE liveuser_languages (
language_id INTEGER PRIMARY KEY NOT NULL DEFAULT '0',
two_letter_name char(2) NOT NULL DEFAULT ''
);

--
-- Table: liveuser_perm_users
--
CREATE TABLE liveuser_perm_users (
perm_user_id INTEGER PRIMARY KEY NOT NULL DEFAULT '0',
auth_user_id varchar(32) NOT NULL DEFAULT '0',
perm_type tinyint(3) DEFAULT NULL,
auth_container_name varchar(32) NOT NULL DEFAULT ''
);

--
-- Table: liveuser_rights
--
CREATE TABLE liveuser_rights (
right_id INTEGER PRIMARY KEY NOT NULL DEFAULT '0',
area_id int(11) NOT NULL DEFAULT '0',
right_define_name varchar(32) NOT NULL DEFAULT '',
has_implied char(1) NOT NULL DEFAULT 'N',
has_level char(1) NOT NULL DEFAULT 'N'
);

--
-- Table: liveuser_translations
--
CREATE TABLE liveuser_translations (
section_id int(11) NOT NULL DEFAULT '0',
section_type tinyint(3) NOT NULL DEFAULT '0',
language_id smallint(5) NOT NULL DEFAULT '0',
name varchar(50) NOT NULL DEFAULT '',
description varchar(255) DEFAULT NULL,
PRIMARY KEY (section_id, section_type, language_id)
);

--
-- Table: liveuser_userrights
--
CREATE TABLE liveuser_userrights (
perm_user_id int(11) NOT NULL DEFAULT '0',
right_id int(11) NOT NULL DEFAULT '0',
right_level tinyint(3) DEFAULT '3',
PRIMARY KEY (right_id, perm_user_id)
);

CREATE INDEX areas_application_id_liveuser_ on liveuser_areas (application_id);
CREATE INDEX rights_area_id_liveuser_rights on liveuser_rights (area_id);
CREATE INDEX perm_user_id_liveuser_userrigh on liveuser_userrights (perm_user_id);
CREATE INDEX right_id_liveuser_userrights on liveuser_userrights (right_id);
CREATE UNIQUE INDEX application_define_name_liveus on liveuser_applications (application_define_name);
CREATE UNIQUE INDEX area_define_name_liveuser_area on liveuser_areas (application_id, area_define_name);
CREATE UNIQUE INDEX two_letter_name_liveuser_langu on liveuser_languages (two_letter_name);
CREATE UNIQUE INDEX right_define_name_liveuser_rig on liveuser_rights (area_id, right_define_name);
COMMIT;
perennite:~# cat /usr/share/php/data/LiveUser/sql/perm_db_medium.sqlite
--
-- Created by SQL::Translator::Producer::SQLite
-- Created on Sat Nov 20 11:54:30 2004
--
BEGIN TRANSACTION;

--
-- Table: liveuser_grouprights
--
CREATE TABLE liveuser_grouprights (
group_id int(11) NOT NULL DEFAULT '0',
right_id int(11) NOT NULL DEFAULT '0',
right_level tinyint(3) DEFAULT '3',
PRIMARY KEY (group_id, right_id)
);

CREATE TABLE liveuser_groups (
group_id int(11) NOT NULL default '0',
group_type int(11) NULL default '1',
group_define_name varchar(32) default NULL,
owner_user_id int(11) default NULL,
owner_group_id int(11) default NULL,
is_active char(1) NOT NULL default 'N',
PRIMARY KEY (group_id)
-- ,
-- UNIQUE KEY `group_define_name` (`group_define_name`)
);

--
-- Table: liveuser_groupusers
--
CREATE TABLE liveuser_groupusers (
perm_user_id int(11) NOT NULL DEFAULT '0',
group_id int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (group_id, perm_user_id)
);

CREATE INDEX perm_user_id_liveuser_groupuse on liveuser_groupusers (perm_user_id);
CREATE INDEX group_id_liveuser_groupusers on liveuser_groupusers (group_id);
CREATE INDEX group_define_name_liveuser_groups on liveuser_groups (group_define_name);
COMMIT;

[2004-11-22 15:07 UTC] contact at mann dot fr

-- data/LiveUser/sql/perm_db_complex.sqlite
--
-- Created by SQL::Translator::Producer::SQLite
-- Created on Sat Nov 20 10:24:34 2004
--
BEGIN TRANSACTION;

--
-- Table: liveuser_area_admin_areas
--
CREATE TABLE liveuser_area_admin_areas (
area_id int(11) NOT NULL DEFAULT '0',
perm_user_id int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (area_id, perm_user_id)
);

--
-- Table: liveuser_group_subgroups
--
CREATE TABLE liveuser_group_subgroups (
group_id int(11) NOT NULL DEFAULT '0',
subgroup_id int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (group_id, subgroup_id)
);

--
-- Table: liveuser_right_implied
--
CREATE TABLE liveuser_right_implied (
right_id int(11) NOT NULL DEFAULT '0',
implied_right_id int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (right_id, implied_right_id)
);

CREATE INDEX perm_user_id_liveuser_area_adm on liveuser_area_admin_areas (perm_user_id);
CREATE INDEX area_id_liveuser_area_admin_ar on liveuser_area_admin_areas (area_id);
CREATE INDEX subgroup_id_liveuser_group_sub on liveuser_group_subgroups (subgroup_id);
CREATE INDEX group_id_liveuser_group_subgro on liveuser_group_subgroups (group_id);
CREATE INDEX right_id_liveuser_right_implie on liveuser_right_implied (right_id);
CREATE INDEX implied_right_id_liveuser_righ on liveuser_right_implied (implied_right_id);
COMMIT;

[2004-11-22 15:09 UTC] contact at mann dot fr

-- data/LiveUser/sql/perm_db_medium.sqlite
--
-- Created by SQL::Translator::Producer::SQLite
-- Created on Sat Nov 20 11:54:30 2004
--
BEGIN TRANSACTION;

--
-- Table: liveuser_grouprights
--
CREATE TABLE liveuser_grouprights (
group_id int(11) NOT NULL DEFAULT '0',
right_id int(11) NOT NULL DEFAULT '0',
right_level tinyint(3) DEFAULT '3',
PRIMARY KEY (group_id, right_id)
);

CREATE TABLE liveuser_groups (
group_id int(11) NOT NULL default '0',
group_type int(11) NULL default '1',
group_define_name varchar(32) default NULL,
owner_user_id int(11) default NULL,
owner_group_id int(11) default NULL,
is_active char(1) NOT NULL default 'N',
PRIMARY KEY (group_id)
-- ,
-- UNIQUE KEY `group_define_name` (`group_define_name`)
);

--
-- Table: liveuser_groupusers
--
CREATE TABLE liveuser_groupusers (
perm_user_id int(11) NOT NULL DEFAULT '0',
group_id int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (group_id, perm_user_id)
);

CREATE INDEX perm_user_id_liveuser_groupuse on liveuser_groupusers (perm_user_id);
CREATE INDEX group_id_liveuser_groupusers on liveuser_groupusers (group_id);
CREATE INDEX group_define_name_liveuser_groups on liveuser_groups (group_define_name);
COMMIT;

[2004-11-22 17:19 UTC] smith at backendmedia dot com

Hi,

thx for your efforts. We are also aware of these issues. We are currently exploring the possibility of moving entirely to the MDB2 xml schema format, which lets us maintain 1 single schema file for all RDBMS. For those people that dont want to use the MDB2 Manager for installation we will probably provide SQL schemas generated by the MDB2 Manager as a separate download from the wiki.

In regards to making LiveUser more portable we have also just began a major rework of the storage access in LiveUser, which should solve many of the current issues. However we still need people to help us test things on various RDBMS.

please checkout our wiki at http://pear.limbourg.com. there you will find some uptodate information about where we are heading and a link to our internal mailinglist. We look forward to seeing you there! Also we have already working versions of the new LiveUser package in CVS (LiveUser and LiveUser_Admin CVS dir).