SQLの窓

2014年04月29日


Eclipse のパンくずリスト(breadcrumb) をワークスペースの設定ファイルで非表示にする



Eclipse で『CTRL+SHIFT+L』でショートカットキーの一覧が表示されますが、その中に『パンくずリスト』と言う項目があります。



この項目は、『ナビゲート』メニューにもありますが、表示した後元に戻す項目がありません。インターネットで調べると、ツールバーに削除する項目がある( あった? ) という旨の記事を見つける事ができるのですが、自分の環境でそのようなアイコンを確認できていません。( ADT Build: v22.2.1-833290 )



ですが、Eclipse ではワークスペース単位で設定ファイルが書き込まれているのでそこを修正して非表示に変更できます。

▼ 場所
ワークスペースフォルダ\.metadata\.plugins\org.eclipse.core.runtime\.settings
▼ ファイル
org.eclipse.jdt.ui.prefs
▼ 内容( エントリ )
breadcrumb.org.eclipse.jdt.ui.JavaPerspective=true

この内容を false にしてやると表示しなくなります



関連する記事


posted by lightbox at 2014-04-29 14:04 | Java | このブログの読者になる | 更新情報をチェックする

2014年04月19日


TeraPad Ver 1.09 の ini 設定付きインストーラ

TeraPad はもうかなり長い間お世話になっています。でも、インストール後必ず以下の設定が必要です。
1) 行番号の常時表示
2) 拡張子の追加
3) スペース等の空白文字を全て目視可能にする
4) ウインドウのサイズを終了時に保存
5) タイトルにフルパスでファイルの場所を表示
なので、ダウンロード、解凍、配置、ini 設定 を全て実行してくれるスクリプトです。 ( ダウンロードしてエクスプローラからダブルクリックします ) インストール先フォルダを指定してインストールします。(いくつインストールしても問題ありません) ショートカットの内容は最後に設定した内容になりますが、変更をすれば同じバージョンをいくつでもインストールできます。 zip 版を使用しているので、必要無くなれば tpad109 ディレクトリを削除するとアンインストールになります。 ※ ソースコード参照 紹介されていた書籍 ※ 2012/10/21 初版の書籍です。 TeraPad は、とても古くからある優秀なエディタです。時代の流れで、インターネットで使うような特殊文字を直接表示できない事をのぞいて問題は全くありません ( 特殊文字を直接使いたい場合は、Mery がおすすめです ) 関連するスクリプト SendTo フォルダを開くスクリプト 更新履歴 2009-07-18 : 記事作成 2013-04-07 : 最新バージョンでテストしてリプレース
posted by lightbox at 2014-04-19 23:44 | Windows | このブログの読者になる | 更新情報をチェックする

2014年04月16日


ちょうどいいデスクトップ色

昔々の Windows の標準のデスクトップ色です。個人の PC に画像を使うのは当たり前ですが、仕事場の PC のように、沢山の PC を管理する立場からすると、このような単色を望んでいます。 



▼ Windows7


▼ Windows8

( Classic Shell を使用しています )

posted by lightbox at 2014-04-16 10:17 | Windows | このブログの読者になる | 更新情報をチェックする

Seesaa : 記事の投稿者に、記事編集用のダイレクトリンクを作成して、日付フォーマットに『年月日』を追加する

article.page_url 変数を、JavaScript の変数 strno にセットして、正規表現で url から アーティクル番号を取り出して管理画面内の記事編集の url に作り直してリンクを作成しています。

このリンクをクリックした後、そのブログの編集画面に移動するのは、複数のブログを管理している場合、一覧のうち先頭のブログか、既に編集の為に開いているブログである必要があります( 前もって Seesaa にログインして、そのブログを選択しておく必要があります )

変更する場所は「コンテンツ」の「記事」から「コンテンツHTML編集」です
※ この例では、posted で検索するといいと思います。
<div class="posted">
class="posted" という div セクションがあるので、その後に続く記述を変更します
▼ 変更前

posted by <% article.nickname %> at <% article.createstamp | date_format("%H:%M") -%>


▼ 変更後
※ 2014/04/16 : article.id が使えるのでこのほうが簡単です
posted by <a href="https://blog.seesaa.jp/pages/my/blog/article/edit/input?id=<% article.id %>" target="_blank"><% article.nickname %></a> at <% article.createstamp | date_format("%Y-%m-%d %H:%M") -%>

▼ 以下は同じ結果ですが、参考です。正規表現で URL から情報を取得して利用しています
posted by 
<script type="text/javascript">
(function(){
 var strno = '<% article.page_url %>';
 strno.match( /article\/([^\.]+).html/ );
 document.write( '<a href="https://blog.seesaa.jp/pages/my/blog/article/edit/input?id=');
 document.write( RegExp.$1+'" target="_blank"><% article.nickname %></a>' );
})();
</script>
 at <% article.createstamp | date_format("%Y-%m-%d %H:%M") -%>

日付は管理上年月日を明示したほうがいいと思います。



複数のブログを管理している場合、先頭以外のブログの編集画面を開いていても、一定時間( かなり長いですが )経つと、先頭ブログに戻ってしまうので、それに気が付かず記事を更新しようとすると、失敗したというページ表示がされる場合がありますが、そのページをそのまま置いておいて、他のタブでもう一度今更新しようとしたブログの編集画面を開きます。

その後、更新に失敗したページに戻って『再読み込み』すると正しく更新されて編集画面が戻って来ます。

また、編集中に誤ってブラウザのタブを閉じてしまっても、Google Chrome であれば、『最近使ったタブ』から開く事によって、入力中の内容も戻って来ます。



Seesaa独自タグ簡易リファレンス

タグ:Seesaa
posted by lightbox at 2014-04-16 09:04 | Seesaa プログ管理支援 | このブログの読者になる | 更新情報をチェックする

2014年04月14日


PHP + MySQL : Windows の COM を使った ODBC 経由での接続とデータの取得(SELECT)

extension=php_com_dotnet.dll によって、Windows では、PHP が COM を使えるようになります。他の ODBC 経由と同じく、SHIFT_JIS 前提となりますが、本来の Fields コレクションの文字列での参照がうまく行かないので、連想配列を作成して利用の準備をしています。

PHP で COM を使うような状況は、VBScript のような Windows 純正のスクリプトを使う代わりに、PHP を Windows の保守に使うという選択肢です。そうすると、COM と PHP の関数群の両方が使えるようになります。
<?php
header( "Content-Type: text/html; Charset=shift_jis" );
header( "pragma: no-cache" );
header( "Expires: Wed, 31 May 2000 14:59:58 GMT" );
header( "Cache-control: no-cache" );

// 日本語設定
mb_language( "ja" );
// 内部エンコード
mb_internal_encoding("UTF-8");

// 接続オブジェクト
$cn = new COM( "ADODB.Connection" );
// レコードセットオブジェクト
$rs = new COM( "ADODB.Recordset" );

$server = 'localhost';
$db_name = 'lightbox';
$user = 'root';
$password = 'パスワード';

// 接続文字列作成
$connect_string = "Provider=MSDASQL;";
$connect_string .= "Driver={MySQL ODBC 5.3 Unicode Driver};";
$connect_string .= "Server={$server};";
$connect_string .= "DATABASE={$db_name};";
$connect_string .= "UID={$user};";
$connect_string .= "PWD={$password};";
$connect_string .= "charset=cp932;";

// 接続
try {
	$cn->Open( $connect_string );
}
catch ( Exception $ex ) {
	die( '{"error": "接続できませんでした: ' . $ex->getMessage() . '"}' );
}


$query = "select * from 社員マスタ";

try {
	// レコードセット取得
	$rs->Open( $query, $cn );
}
catch ( Exception $ex ) {
	die( '{"error":' . $ex->getMessage() . '"}' );
}

// 列数
$field_count = $rs->Fields->Count;
$count = 0;

?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=shift_jis">
<style>
* {
	font-family: "メイリオ", Meiryo, "MS Pゴシック", sans-serif;
	font-size: 12px;
}
table {
	border-collapse: collapse;
	border-style: solid;
	border-color: #c0c0c0;
	border-width: 1px;
	background-color: #FFFFFF;
}
td {
	padding: 5px;
	border-style: solid;
	border-color: #c0c0c0;
	border-width: 1px;
}
</style>
</head>
<body>

<?php
$log_file = "rowdata_006.log";

file_put_contents( $log_file,"" );

print "<table>\n";
while (!$rs->EOF) {
	print "<tr>\n";
	print "\t<td>" . ($count + 1) . "</td>\n";
	for( $i = 0; $i < $field_count; $i++ ) {
		$wk = $rs->Fields[$i]->value."";
		print "\t<td>{$wk}</td>\n";

		// 連想配列作成
		$field[$rs->Fields[$i]->name] = $rs->Fields[$i]->value."";
	}
	print "</tr>\n";
	$count++;

	file_put_contents( $log_file, print_r($field,true), FILE_APPEND );
	$rs->MoveNext();
}
print "</table>";

// レコードセットを閉じる
$rs->Close();

// 接続解除
@$cn->Close();
?>

<br>
出力件数 : <?= $count ?>



関連する記事

posted by lightbox at 2014-04-14 23:33 | MySQL | このブログの読者になる | 更新情報をチェックする

VBScript + MySQL : ADO( ODBC ) による接続とデータの取得(SELECT)

VBScript の形態は、大きく分けて3つあり、一つは単純な一枚のテキストに全てのスクリプトを書いて実行する拡張子が .vbs のもの。さらに、外部にスクリプトソースを分割する事ができる本格的なプログラミングをする人の為にある拡張子 .wsf のもの。そして、ここでは紹介しませんが、HTML で画面を作成し、ブラウザの中での動きと同じような環境で作成する拡張子 .hta の HTMLアプリケーションがあります。

MySQL に接続して csv ファイルを書き出すだけの処理を .vbs と .wsf で書いています。.wsf で特別な事をしていないのでここではどちらがという事がありませんが、.wsf のほうがいろいろ作法があり、複雑なことが可能になっています。

ADO は VBScript からアクセス可能な、主にデータベースを扱う為にあるオブジェクトです。通常、データーベースへのアクセスは、ADODB.ConnectionADODB.Recordset でほとんどの事を実行する事ができます。

VBScript で記述する場合の最大特徴は、エラー処理で、on error resume next と on error goto 0 の間でエラーが発生した場合に強制終了を回避できるようになっています。

※ Scripting.FileSystemObject は、テキストファイルを扱う為のオブジェクトです

ado_std.vbs
Set Cn = CreateObject( "ADODB.Connection" )
Set Rs = CreateObject( "ADODB.Recordset" )
Set Fs = CreateObject( "Scripting.FileSystemObject" )

strDriver = "{MySQL ODBC 5.3 Unicode Driver}"
strServer = "localhost"
strDb = "lightbox"
strUser = "root"
strPass =  "パスワード"

ConnectionString = _
	"Provider=MSDASQL" & _
	";Driver=" & strDriver
ConnectionString = ConnectionString & ";Server=" & strServer
ConnectionString = ConnectionString & ";Database=" & strDb
ConnectionString = ConnectionString & ";UID=" & strUser
ConnectionString = ConnectionString & ";PWD=" & strPass
ConnectionString = ConnectionString & ";"

' **********************************************************
' 接続
' **********************************************************
on error resume next
Cn.Open ConnectionString
if Err.Number <> 0 then
	Wscript.Echo Err.Description
	Wscript.Quit
end if
on error goto 0

' **********************************************************
' クエリー
' **********************************************************
Query = "select * from 社員マスタ"

on error resume next
Rs.Open Query, Cn
if Err.Number <> 0 then
	Cn.Close
	Wscript.Echo Err.Description
	Wscript.Quit
end if
on error goto 0

' **********************************************************
' 出力ファイルオープン
' **********************************************************
Set Csv = Fs.CreateTextFile( "ado_std.csv", True )

' **********************************************************
' データ出力
' **********************************************************
Do While not Rs.EOF
	Buffer = ""
	For i = 0 to Rs.Fields.Count - 1
		if Buffer <> "" then
			Buffer = Buffer & ","
		end if
		Buffer = Buffer & """" & Rs.Fields(i).Value & """"
	Next
	Csv.WriteLine Buffer
	Rs.MoveNext
Loop

' **********************************************************
' ファイルクローズ
' **********************************************************
Csv.Close

' **********************************************************
' レコードセットクローズ
' **********************************************************
Rs.Close

' **********************************************************
' 接続解除
' **********************************************************
Cn.Close

Wscript.Echo "処理が終了しました"


ado_pro.wsf
<JOB>
<COMMENT>
************************************************************
■著作権その他

このプログラムはフリーです。どうぞ自由に御使用ください。
著作権は作者である私(lightbox)が保有しています。
また、本ソフトを運用した結果については、作者は一切責任を
負えせんのでご了承ください。
************************************************************
</COMMENT>

<OBJECT id="Cn" progid="ADODB.Connection" />
<OBJECT id="Rs" progid="ADODB.Recordset" />
<OBJECT id="Fs" progid="Scripting.FileSystemObject" />

<SCRIPT language="VBScript">

strDriver = "{MySQL ODBC 5.3 Unicode Driver}"
strServer = "localhost"
strDb = "lightbox"
strUser = "root"
strPass =  "パスワード"

ConnectionString = _
	"Provider=MSDASQL" & _
	";Driver=" & strDriver
ConnectionString = ConnectionString & ";Server=" & strServer
ConnectionString = ConnectionString & ";Database=" & strDb
ConnectionString = ConnectionString & ";UID=" & strUser
ConnectionString = ConnectionString & ";PWD=" & strPass
ConnectionString = ConnectionString & ";"

' **********************************************************
' 接続
' **********************************************************
on error resume next
Cn.Open ConnectionString
if Err.Number <> 0 then
	Wscript.Echo Err.Description
	Wscript.Quit
end if
on error goto 0

' **********************************************************
' クエリー
' **********************************************************
Query = "select * from 社員マスタ"

on error resume next
Rs.Open Query, Cn
if Err.Number <> 0 then
	Cn.Close
	Wscript.Echo Err.Description
	Wscript.Quit
end if
on error goto 0

' **********************************************************
' 出力ファイルオープン
' **********************************************************
Set Csv = Fs.CreateTextFile( "ado_pro.csv", True )

' **********************************************************
' データ出力
' **********************************************************
Do While not Rs.EOF
	Buffer = ""
	For i = 0 to Rs.Fields.Count - 1
		if Buffer <> "" then
			Buffer = Buffer & ","
		end if
		Buffer = Buffer & """" & Rs.Fields(i).Value & """"
	Next
	Csv.WriteLine Buffer
	Rs.MoveNext
Loop

' **********************************************************
' ファイルクローズ
' **********************************************************
Csv.Close

' **********************************************************
' レコードセットクローズ
' **********************************************************
Rs.Close

' **********************************************************
' 接続解除
' **********************************************************
Cn.Close

Wscript.Echo "処理が終了しました"

</SCRIPT>
</JOB>

現在、VBScript の進化は Microsoft 内では止まって(終わって)おり、後継としては、Framework の使える PowerShell になっていますが、かなり敷居の高いものとなっているため、今でも VBScript の範囲でできる事が多いせいもあって、VBScript が使われているところは多いと思います。



関連する記事

posted by lightbox at 2014-04-14 22:43 | MySQL | このブログの読者になる | 更新情報をチェックする
Seesaa の各ページの表示について
Seesaa の 記事がたまに全く表示されない場合があります。その場合は、設定> 詳細設定> ブログ設定 で 最新の情報に更新の『実行ボタン』で記事やアーカイブが最新にビルドされます。

Seesaa のページで、アーカイブとタグページは要注意です。タグページはコンテンツが全く無い状態になりますし、アーカイブページも歯抜けページはコンテンツが存在しないのにページが表示されてしまいます。

また、カテゴリページもそういう意味では完全ではありません。『カテゴリID-番号』というフォーマットで表示されるページですが、実際存在するより大きな番号でも表示されてしまいます。

※ インデックスページのみ、実際の記事数を超えたページを指定しても最後のページが表示されるようです

対処としては、このようなヘルプ的な情報を固定でページの最後に表示するようにするといいでしょう。具体的には、メインの記事コンテンツの下に『自由形式』を追加し、アーカイブとカテゴリページでのみ表示するように設定し、コンテンツを用意するといいと思います。


※ エキスパートモードで表示しています

アーカイブとカテゴリページはこのように簡単に設定できますが、タグページは HTML 設定を直接変更して、以下の『タグページでのみ表示される内容』の記述方法で設定する必要があります

<% if:page_name eq 'archive' -%>
アーカイブページでのみ表示される内容
<% /if %>

<% if:page_name eq 'category' -%>
カテゴリページでのみ表示される内容
<% /if %>

<% if:page_name eq 'tag' -%>
タグページでのみ表示される内容
<% /if %>
この記述は、以下の場所で使用します
container 終わり



フリーフォントで簡単ロゴ作成
フリーフォントでボタン素材作成
フリーフォントで吹き出し画像作成
フリーフォントではんこ画像作成
ほぼ自由に利用できるフリーフォント
フリーフォントの書体見本とサンプル
画像を大きく見る為のウインドウを開くボタンの作成

CSS ドロップシャドウの参考デモ
イラストAC
ぱくたそ
写真素材 足成
フリーフォント一覧
utf8 文字ツール
右サイド 終わり
base 終わり