From 95b4d89742093af5b033f314bb45d33185614a79 Mon Sep 17 00:00:00 2001
From: Evan Prodromou <evan@prodromou.name>
Date: Sun, 17 Aug 2008 11:17:28 -0400
Subject: Database uses UTF-8 by default

darcs-hash:20080817151728-84dde-6d5557db098a1273c0b9e3451b814e8d57759e57.gz
---
 db/laconica.sql | 51 +++++++++++++++++++--------------------------------
 1 file changed, 19 insertions(+), 32 deletions(-)

(limited to 'db/laconica.sql')

diff --git a/db/laconica.sql b/db/laconica.sql
index e9ed0edb8..3615340c1 100644
--- a/db/laconica.sql
+++ b/db/laconica.sql
@@ -13,7 +13,7 @@ create table profile (
 
     index profile_nickname_idx (nickname),
     FULLTEXT(nickname, fullname, location, bio, homepage)
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 create table avatar (
     profile_id integer not null comment 'foreign key to profile table' references profile (id),
@@ -28,7 +28,7 @@ create table avatar (
 
     constraint primary key (profile_id, width, height),
     index avatar_profile_id_idx (profile_id)
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 create table sms_carrier (
     id integer auto_increment primary key comment 'primary key for SMS carrier',
@@ -36,7 +36,7 @@ create table sms_carrier (
     email_pattern varchar(255) not null comment 'sprintf pattern for making an email address from a phone number',
     created datetime not null comment 'date this record was created',
     modified timestamp comment 'date this record was modified'
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 /* local users */
 
@@ -67,7 +67,7 @@ create table user (
     modified timestamp comment 'date this record was modified',
     
     index user_smsemail_idx (smsemail)
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 /* remote people */
 
@@ -78,7 +78,7 @@ create table remote_profile (
     updateprofileurl varchar(255) comment 'URL we use for updates to this profile',
     created datetime not null comment 'date this record was created',
     modified timestamp comment 'date this record was modified'
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 create table subscription (
     subscriber integer not null comment 'profile listening',
@@ -91,7 +91,7 @@ create table subscription (
     constraint primary key (subscriber, subscribed),
     index subscription_subscriber_idx (subscriber),
     index subscription_subscribed_idx (subscribed)
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 create table notice (
 
@@ -110,7 +110,7 @@ create table notice (
     index notice_profile_id_idx (profile_id),
     index notice_created_idx (created),
     FULLTEXT(content)
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 create table notice_source (
      code varchar(32) primary key not null comment 'source code',
@@ -118,7 +118,7 @@ create table notice_source (
      url varchar(255) not null comment 'url to link to',
      created datetime not null comment 'date this record was created',
      modified timestamp comment 'date this record was modified'
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 create table reply (
 
@@ -132,20 +132,7 @@ create table reply (
     index reply_profile_id_idx (profile_id),
     index reply_replied_id_idx (replied_id)
 
-) ENGINE=MyISAM;
-
-create table fave (
-
-    notice_id integer not null comment 'notice that is the favorite' references notice (id),
-    user_id integer not null comment 'user who likes this notice' references user (id),
-    modified timestamp not null comment 'date this record was modified',
-
-    constraint primary key (notice_id, user_id),
-    index fave_notice_id_idx (notice_id),
-    index fave_user_id_idx (user_id),
-    index fave_modified_idx (modified)
-    
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 /* tables for OAuth */
 
@@ -155,7 +142,7 @@ create table consumer (
 
     created datetime not null comment 'date this record was created',
     modified timestamp comment 'date this record was modified'
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 create table token (
     consumer_key varchar(255) not null comment 'unique identifier, root URL' references consumer (consumer_key),
@@ -168,7 +155,7 @@ create table token (
     modified timestamp comment 'date this record was modified',
 
     constraint primary key (consumer_key, tok)
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 create table nonce (
     consumer_key varchar(255) not null comment 'unique identifier, root URL',
@@ -181,7 +168,7 @@ create table nonce (
 
     constraint primary key (consumer_key, tok, nonce),
     constraint foreign key (consumer_key, tok) references token (consumer_key, tok)
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 /* One-to-many relationship of user to openid_url */
 
@@ -193,7 +180,7 @@ create table user_openid (
     modified timestamp comment 'date this record was modified',
 
     index user_openid_user_id_idx (user_id)
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 /* These are used by JanRain OpenID library */
 
@@ -205,14 +192,14 @@ create table oid_associations (
     lifetime INTEGER,
     assoc_type VARCHAR(64),
     PRIMARY KEY (server_url(255), handle)
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 create table oid_nonces (
     server_url VARCHAR(2047),
     timestamp INTEGER,
     salt CHAR(40),
     UNIQUE (server_url(255), timestamp, salt)
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 create table confirm_address (
     code varchar(32) not null primary key comment 'good random code',
@@ -223,13 +210,13 @@ create table confirm_address (
     claimed datetime comment 'date this was claimed for queueing',
     sent datetime comment 'date this was sent for queueing',
     modified timestamp comment 'date this record was modified'
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 create table remember_me (
     code varchar(32) not null primary key comment 'good random code',
     user_id integer not null comment 'user who is logged in' references user (id),
     modified timestamp comment 'date this record was modified'
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 create table queue_item (
 
@@ -240,7 +227,7 @@ create table queue_item (
 
     index queue_item_created_idx (created)
 
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
 
 /* Hash tags */
 create table notice_tag (
@@ -250,4 +237,4 @@ create table notice_tag (
 
     constraint primary key (tag, notice_id),
     index notice_tag_created_idx (created)
-) ENGINE=MyISAM;
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
-- 
cgit v1.2.3-54-g00ecf

