--- premium/premium.install	2008-08-03 02:26:20.000000000 -0400
+++ premium_6.4/premium.install	2008-09-24 16:03:22.000000000 -0400
@@ -1,30 +1,42 @@
 <?php
 // $Id: premium.install,v 1.2.2.4 2008/08/03 06:26:20 jerdavis Exp $
 
+/**
+ * Implementation of hook_schema().
+ */
+function premium_schema() {
+  $schema['premium'] = array(
+    'fields' => array(
+      'nid' => array(
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+      ),
+      'start_ts' => array(
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => FALSE,
+      ),
+      'end_ts' => array(
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => FALSE,
+      ),
+    ),
+  );
+
+  return $schema;
+}
+
 function premium_install() {
-  switch ($GLOBALS['db_type']) {
-    case 'mysql':
-    case 'mysqli':
-      db_query('CREATE TABLE {premium} (
-        nid               INT NOT NULL,
-        start_ts          INT,
-        end_ts            INT,
-        PRIMARY KEY(nid)
-      ) /*!40100 DEFAULT CHARACTER SET utf8 */;');
-      break;
-    case 'pgsql':
-      db_query('CREATE TABLE {premium} (
-        nid               INT NOT NULL,
-        start_ts          INT,
-        end_ts            INT,
-        PRIMARY KEY(nid)
-      )');
-      break;
-  }
+  // Create tables.
+  drupal_install_schema('premium');
 }
 
 function premium_uninstall() {
-  db_query('DROP TABLE {premium}');
+  // Remove tables.
+  drupal_uninstall_schema('premium');
+
   variable_del('premium_mode');
   variable_del('premium_time_count');
   variable_del('premium_time_unit');
