Custom Drupal Module not creating any tables
Anything specific I need in the module file?
Install File
function module_install() {
//lets create the scho开发者_如何学Pythonol database
$create_table_sql = "CREATE TABLE IF NOT EXISTS `table1` (
id
int(11) NOT NULL,
principal_name
varchar(300) NOT NULL,
school_name
varchar(300) NOT NULL,
address1
varchar(300) NOT NULL,
address2
varchar(300) NOT NULL,
city
varchar(300) NOT NULL,
computer_serial_no
varchar(300) NOT NULL,
state
varchar(200) NOT NULL,
uid
int(200) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1";
db_query($create_table_sql);
//lets create the student database
$create_table_sql = "CREATE TABLE IF NOT EXISTS table2
(
id
int(11) NOT NULL,
principal_name
varchar(300) NOT NULL,
school_name
varchar(300) NOT NULL,
address1
varchar(300) NOT NULL,
address2
varchar(300) NOT NULL,
city
varchar(300) NOT NULL,
computer_serial_no
varchar(300) NOT NULL,
state
varchar(200) NOT NULL,
uid
int(200) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1";
db_query($create_table_sql);
}
/** * _UNINSTALL hook * * This function is run to uninstall the module. * */ function module_uninstall() {
// Delete the DB
db_query("drop table table1");
db_query("drop table table2");
}
Info File Just in Case
; $Id$
name = My Module description = This module deals with blah blah package = Somepackage core = 6.x
version = "6.x-1.0" core = "6.x"
You should be using hook_install and hook_schema.
http://api.drupal.org/api/function/hook_schema/6
http://api.drupal.org/api/function/hook_install/6
For installing and uninstalling, hook_schema will make it more consistent and easier to debug, without writing SQL.
You do not need to write your own DDL queries - use the Schema API instead.
精彩评论