<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.finkproject.org/index.php?action=history&amp;feed=atom&amp;title=Fink%3APackageDatabase%3ANewSchema</id>
	<title>Fink:PackageDatabase:NewSchema - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.finkproject.org/index.php?action=history&amp;feed=atom&amp;title=Fink%3APackageDatabase%3ANewSchema"/>
	<link rel="alternate" type="text/html" href="https://wiki.finkproject.org/index.php?title=Fink:PackageDatabase:NewSchema&amp;action=history"/>
	<updated>2026-05-14T03:30:36Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.13</generator>
	<entry>
		<id>https://wiki.finkproject.org/index.php?title=Fink:PackageDatabase:NewSchema&amp;diff=71&amp;oldid=prev</id>
		<title>Chris01: collate ascii_general_ci</title>
		<link rel="alternate" type="text/html" href="https://wiki.finkproject.org/index.php?title=Fink:PackageDatabase:NewSchema&amp;diff=71&amp;oldid=prev"/>
		<updated>2007-02-20T19:49:52Z</updated>

		<summary type="html">&lt;p&gt;collate ascii_general_ci&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Fink_Header}}&lt;br /&gt;
&lt;br /&gt;
Possible new layout for a distribution/release db. It should replace the existing release table and also the  [http://fink.cvs.sourceforge.net/fink/web/pdb/releases.inc?view=markup&amp;amp;pathrev=redesign_pdb releases.inc] file. The code below will go into the [http://fink.cvs.sourceforge.net/fink/scripts/pdb/schema.sql?view=markup&amp;amp;pathrev=redesign_pdb schema.sql] and [http://fink.cvs.sourceforge.net/fink/scripts/pdb/releases.sql?view=markup&amp;amp;pathrev=redesign_pdb releases.sql]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
create table if not exists distribution (&lt;br /&gt;
  dist_id int unsigned not null auto_increment,&lt;br /&gt;
  identifier varchar(16) not null,&lt;br /&gt;
  description varchar(64) not null default '',&lt;br /&gt;
  architecture enum('powerpc', 'i386') not null default 'powerpc',&lt;br /&gt;
  priority tinyint unsigned not null default '1',&lt;br /&gt;
  active boolean default 1,&lt;br /&gt;
  primary key (dist_id)&lt;br /&gt;
) collate ascii_general_ci;&lt;br /&gt;
&lt;br /&gt;
create table if not exists distribution_releases (&lt;br /&gt;
  rel_id int unsigned not null auto_increment,&lt;br /&gt;
  dist_id int unsigned not null references distribution(dist_id),&lt;br /&gt;
  type enum('bindist', 'stable', 'unstable') not null,&lt;br /&gt;
  version varchar(16) not null,&lt;br /&gt;
  priority tinyint unsigned not null default '1',&lt;br /&gt;
  active boolean default 1,&lt;br /&gt;
  primary key (rel_id)&lt;br /&gt;
) collate ascii_general_ci;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
insert into distribution (dist_id, identifier, description, architecture, priority, active) values (null, '10.1', '10.1', 'powerpc', 1, 1);&lt;br /&gt;
select @last_dist_id := last_insert_id();&lt;br /&gt;
insert into distribution_releases (rel_id, dist_id, type, version, priority, active) values (null, @last_dist_id, 'bindist',  '0.4.1', 1, 1);&lt;br /&gt;
&lt;br /&gt;
insert into distribution (dist_id, identifier, description, architecture, priority, active) values (null, '10.2-gcc3.3', '10.2\n(gcc3.3 only)', 'powerpc', 2, 1);&lt;br /&gt;
select @last_dist_id := last_insert_id();&lt;br /&gt;
insert into distribution_releases (rel_id, dist_id, type, version, priority, active) values (null, @last_dist_id, 'unstable', 'current', 3, 1);&lt;br /&gt;
insert into distribution_releases (rel_id, dist_id, type, version, priority, active) values (null, @last_dist_id, 'stable',   'current', 2, 1);&lt;br /&gt;
insert into distribution_releases (rel_id, dist_id, type, version, priority, active) values (null, @last_dist_id, 'bindist',  '0.6.4', 1, 1);&lt;br /&gt;
&lt;br /&gt;
insert into distribution (dist_id, identifier, description, architecture, priority, active) values (null, '10.3', '10.3', 'powerpc', 3, 1);&lt;br /&gt;
select @last_dist_id := last_insert_id();&lt;br /&gt;
insert into distribution_releases (rel_id, dist_id, type, version, priority, active) values (null, @last_dist_id, 'unstable', 'current', 3, 1);&lt;br /&gt;
insert into distribution_releases (rel_id, dist_id, type, version, priority, active) values (null, @last_dist_id, 'stable',   'current', 2, 1);&lt;br /&gt;
insert into distribution_releases (rel_id, dist_id, type, version, priority, active) values (null, @last_dist_id, 'bindist',  '0.7.2', 1, 1);&lt;br /&gt;
&lt;br /&gt;
insert into distribution (dist_id, identifier, description, architecture, priority, active) values (null, '10.4', '10.4/powerpc', 'powerpc', 4, 1);&lt;br /&gt;
select @last_dist_id := last_insert_id();&lt;br /&gt;
insert into distribution_releases (rel_id, dist_id, type, version, priority, active) values (null, @last_dist_id, 'unstable', 'current', 3, 1);&lt;br /&gt;
insert into distribution_releases (rel_id, dist_id, type, version, priority, active) values (null, @last_dist_id, 'stable',   'current', 2, 1);&lt;br /&gt;
insert into distribution_releases (rel_id, dist_id, type, version, priority, active) values (null, @last_dist_id, 'bindist',  '0.8.1', 1, 1);&lt;br /&gt;
&lt;br /&gt;
insert into distribution (dist_id, identifier, description, architecture, priority, active) values (null, '10.4', '10.4/intel', 'i386', 5, 1);&lt;br /&gt;
select @last_dist_id := last_insert_id();&lt;br /&gt;
insert into distribution_releases (rel_id, dist_id, type, version, priority, active) values (null, @last_dist_id, 'unstable', 'current', 3, 1);&lt;br /&gt;
insert into distribution_releases (rel_id, dist_id, type, version, priority, active) values (null, @last_dist_id, 'stable',   'current', 2, 1);&lt;br /&gt;
insert into distribution_releases (rel_id, dist_id, type, version, priority, active) values (null, @last_dist_id, 'bindist',  '0.8.1', 1, 1);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And the corresponding package schema:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
create table if not exists package (&lt;br /&gt;
 pkg_id int unsigned not null auto_increment,&lt;br /&gt;
 rel_id int unsigned not null references distribution_releases(rel_id),&lt;br /&gt;
 name varchar(64) not null,&lt;br /&gt;
 parentname varchar(64),&lt;br /&gt;
 version varchar(64) not null,&lt;br /&gt;
 revision varchar (16) not null,&lt;br /&gt;
 epoch tinyint not null default '0',&lt;br /&gt;
 descshort varchar(80) not null default '',&lt;br /&gt;
 desclong text,&lt;br /&gt;
 descusage text,&lt;br /&gt;
 maintainer varchar(255),&lt;br /&gt;
 license varchar(64),&lt;br /&gt;
 homepage varchar(255),&lt;br /&gt;
 section varchar(32) not null,&lt;br /&gt;
 infofile varchar(255) not null default '',&lt;br /&gt;
 infofilechanged datetime,&lt;br /&gt;
 primary key (pkg_id),&lt;br /&gt;
 index (name),&lt;br /&gt;
 index (section),&lt;br /&gt;
 index (rel_id)&lt;br /&gt;
) collate ascii_general_ci;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Fink_Header}}&lt;br /&gt;
&lt;br /&gt;
[[Category: Fink|Package Database New Schema]]&lt;br /&gt;
[[Category: Fink Structure|Package Database New Schema]]&lt;/div&gt;</summary>
		<author><name>Chris01</name></author>
	</entry>
</feed>