view upgrade_to_201002.php @ 93:80cc05b420af

fix: $*_CHANNEL_MAPに存在しないチャンネルの番組を取得する際のエラーを修正
author epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
date Tue, 02 Mar 2010 23:21:17 +0900
parents cce6f88590fd
children
line wrap: on
line source

#!/usr/bin/php
<?php
include_once('config.php');
include_once(INSTALL_PATH . '/Settings.class.php' );


// mysqli::multi_query篏障<т戎

function multi_query( $sqlstrs, $dbh ) {
	$error = false;
	
	foreach( $sqlstrs as $sqlstr ) {
		$res = mysql_query( $sqlstr );
		if( $res === FALSE ) {
			echo "failed: ". $sqlstr . "\n";
			$error = true;
		}
	}
	return $error;
}


$settings = Settings::factory();
$dbh = mysql_connect( $settings->db_host, $settings->db_user, $settings->db_pass );
if( $dbh !== FALSE ) {

	$sqlstr = "use ".$settings->db_name;
	mysql_query( $sqlstr );

	$sqlstr = "set NAMES 'utf8'";
	mysql_query( $sqlstr );
	
	// RESERVE_TBL

	$sqlstrs = array (
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  channel_disc varchar(128) not null default 'none';",	// channel disc
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  channel_id integer not null  default '0';",			// channel ID
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  program_id integer not null default '0';",				// Program ID
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  type varchar(8) not null default 'GR';",				// 腮ワGR/BS/CS鐚
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  channel varchar(10) not null default '0';",			// c潟
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  title varchar(512) not null default 'none';",			// 帥ゃ
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  description varchar(512) not null default 'none';",		// 茯 text->varchar
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  category_id integer not null default '0';",			// 眼ID
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  starttime datetime not null default '1970-01-01 00:00:00';",	// 紮
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  endtime datetime not null default '1970-01-01 00:00:00';",		// 腟篋
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  job integer not null default '0';",					// job
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  path blob default null;",								// 牙祉<ゃ
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  complete boolean not null default '0';",				// 絎篋
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  reserve_disc varchar(128) not null default 'none';",	// 茘ョhash
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  autorec integer not null default '0';",				// 若若ID
	 "alter table ".$settings->tbl_prefix.RESERVE_TBL." modify  mode integer not null default '0';",					//牙祉≪若
	);
	
	if( multi_query( $sqlstrs, $dbh ) ) {
		echo "篋膣若≪若紊掩\n";
	}
	
	$sqlstrs = array(
	 "create index reserve_ch_idx on ".$settings->tbl_prefix.RESERVE_TBL."  (channel_disc);",
	 "create index reserve_st_idx on ".$settings->tbl_prefix.RESERVE_TBL."  (starttime);",
	);
	
	if( multi_query( $sqlstrs, $dbh ) ) {
		echo "篋膣若ゃ潟鴻篏с障\n";
	}
	
	// PROGRAM_TBL
	
	$sqlstrs = array (
		"alter table ".$settings->tbl_prefix.PROGRAM_TBL." modify channel_disc varchar(128) not null default 'none';",	// channel disc
		"alter table ".$settings->tbl_prefix.PROGRAM_TBL." modify channel_id integer not null default '0';",				// channel ID
		"alter table ".$settings->tbl_prefix.PROGRAM_TBL." modify type varchar(8) not null default 'GR';",				// 腮ワGR/BS/CS鐚
		"alter table ".$settings->tbl_prefix.PROGRAM_TBL." modify channel varchar(10) not null default '0';",			// c潟
		"alter table ".$settings->tbl_prefix.PROGRAM_TBL." modify title varchar(512) not null default 'none';",			// 帥ゃ
		"alter table ".$settings->tbl_prefix.PROGRAM_TBL." modify description varchar(512) not null default 'none';",	// 茯 text->varchar
		"alter table ".$settings->tbl_prefix.PROGRAM_TBL." modify category_id integer not null default '0';",			// 眼ID
		"alter table ".$settings->tbl_prefix.PROGRAM_TBL." modify starttime datetime not null default '1970-01-01 00:00:00';",	// 紮
		"alter table ".$settings->tbl_prefix.PROGRAM_TBL." modify endtime datetime not null default '1970-01-01 00:00:00';",		// 腟篋
		"alter table ".$settings->tbl_prefix.PROGRAM_TBL." modify program_disc varchar(128) not null default 'none';",	 		// 茘ョhash
		"alter table ".$settings->tbl_prefix.PROGRAM_TBL." modify autorec boolean not null default '1';",					// 牙紙合≦
	);
	
	if( multi_query( $sqlstrs, $dbh ) ) {
		echo "腟若≪若紊掩\n";
	}
	
	$sqlstrs = array(
	 "create index program_ch_idx on ".$settings->tbl_prefix.PROGRAM_TBL." (channel_disc);",		// ゃ潟
	 "create index program_st_idx on ".$settings->tbl_prefix.PROGRAM_TBL." (starttime);",			// ゃ潟
	);
	
	if( multi_query( $sqlstrs, $dbh ) ) {
		echo "腟若ゃ潟鴻篏с障\n";
	}
	
	// CHANNEL_TBL
	
	$sqlstrs = array(
	"alter table ".$settings->tbl_prefix.CHANNEL_TBL." modify type varchar(8) not null default 'GR';",				// 腮
	"alter table ".$settings->tbl_prefix.CHANNEL_TBL." modify channel varchar(10) not null default '0';",			// channel
	"alter table ".$settings->tbl_prefix.CHANNEL_TBL." modify name varchar(512) not null default 'none';",			// 茵腓阪
	"alter table ".$settings->tbl_prefix.CHANNEL_TBL." modify channel_disc varchar(128) not null default 'none';",	// 茘ョhash
	"alter table ".$settings->tbl_prefix.CHANNEL_TBL." add sid varchar(64) not null default 'hd'",				// 泣若ID02/23/2010菴遵
	);
	
	if( multi_query( $sqlstrs, $dbh ) ) {
		echo "c潟若≪若紊掩\n";
	}
	
	// CATEGORY_TBL
	
	$sqlstrs  = array(
	"alter table ".$settings->tbl_prefix.CATEGORY_TBL." modify name_jp varchar(512) not null default 'none';",		// 茵腓阪
	"alter table ".$settings->tbl_prefix.CATEGORY_TBL." modify name_en varchar(512) not null default 'none';",		// 筝
	"alter table ".$settings->tbl_prefix.CATEGORY_TBL." modify category_disc varchar(128) not null default 'none'",	// 茘ョhash
	);
	if( multi_query( $sqlstrs, $dbh ) ) {
		echo "眼若≪若紊掩\n";
	}
	
	// KEYWORD_TBL
	
	$sqlstrs = array(
	 "alter table ".$settings->tbl_prefix.KEYWORD_TBL." modify keyword varchar(512) not null default '*';",			// 茵腓阪
	 "alter table ".$settings->tbl_prefix.KEYWORD_TBL." modify type varchar(8) not null default '*';",				// 腮
	 "alter table ".$settings->tbl_prefix.KEYWORD_TBL." modify channel_id integer not null default '0';",				// channel ID
	 "alter table ".$settings->tbl_prefix.KEYWORD_TBL." modify category_id integer not null default '0';",			// 眼ID
	 "alter table ".$settings->tbl_prefix.KEYWORD_TBL." modify use_regexp boolean not null default '0';",				// 罩h頫憗篏睡1
	 "alter table ".$settings->tbl_prefix.KEYWORD_TBL." add autorec_mode integer not null default '0';",						// 牙祉≪若02/23/2010菴遵
	 "alter table ".$settings->tbl_prefix.KEYWORD_TBL." add weekofday enum ('0','1','2','3','4','5','6','7' ) default '7'",		// ャ菴遵
	);
	if( multi_query( $sqlstrs, $dbh ) ) {
		echo "若若若≪若紊掩\n";
	}
}
else
	exit( "DB・膓紊掩\n" );
?>