2008-04-17

现实当中的幽灵船


  • 玛丽·赛勒斯特号(Mary Celeste),在1872年被发现遗弃在葡萄牙和亚速尔群岛之间的海域,尽管船只毫发无损但船员却不见踪影。

  • Joyita号于1955年被发现遗弃于太平洋。

  • 货轮Fisah Ketsi号,于1990年发现其漂流于巴西东海岸,船员消失,货仓盖敞开。

  • 建生号于2006年3月26日在澳大利亚海岸被发现,无人知道船只的来源或出现在该地点的原因。

  • 有水手曾报告说看见已沉没27年的Valencia 号蒸汽船出现于温哥华岛(Vancouver Island)附近。这艘船如幽灵般的尾随其他船只,直到这些船只靠近海岸,这些目击者还称看见其5号救生船完好无损的漂浮在其母船的周围,同样无人驾驶。

  • Ourang Medan,通常被归于幽灵船的行列,尽管一些怀疑者给出了船员死因的解释。

  • Baychimo ,1931年在北冰洋航行时由于被浮冰卡住而弃船,其通常被认为已经沉没,但它在其后的38年间不断被报道发现仍在漂浮,但没有人曾前去救援此船只。

  • Kaz II号,2007年4月18日被发现漂浮于澳洲昆士兰北部汤斯维尔80海里外,2007年4月15日在昆士兰北部的爱丽海滩出发,拯救人员于2007年4月20日早上登上游艇,发现引擎、电脑及无线电也在启动,所有情况均很正常,他们更看到台面摆放了食物及餐具,但游艇却人去楼空,救生艇却不见了,但游艇完全没有遇事痕迹,有关当局已将“Kaz II”号封为“鬼游艇”。

  • U-Boat,在大西洋航线,曾经有货柜商船发现第二次世界大战纳粹徳国旧式U-Boat于雾降时浮出大海,雾散即消失;货柜商船以望远镜侦察此潜艇,发现潜挺不能站人之艇首往往立站一名纳粹军官,脸色苍白瘦双手环搂胸,可怕的是此“人”眼无双瞳,发现后不数日,此区海域常出现海难,出现似为预警示人。

The Flying Dutchman - 飞翔的荷兰人

飞翔的荷兰人(德语:Fliegender Holländer;英语:The Flying Dutchman。又译作漂泊的荷兰人,彷徨的荷兰人等),是传说中一艘永远无法返乡的幽灵船,注定在海上漂泊航行。飞翔的荷兰人通常在远距离被发现,有时还散发着幽灵般的光芒。据说如果有其他船只向她打招呼,她的船员会试图托人向陆地上或早已死去的人捎信。在海上传说中,与这艘幽灵船相遇在航海者看来是毁灭的征兆。在德文里(fliegend)是用来表示一种持续飞行的状态,形容受诅的荷兰人永远飘流在海上,四处航行,却始终无法靠岸的悲惨宿命。

2006年,飞翔的荷兰人的故事被用于加勒比海盗系列电影中,船员受诅咒渐渐变化成海洋生物,船长戴维·琼斯(Davy Jones)是影片中的主要反派之一,因与海洋女神卡吕普索之间的感情纠葛与背叛而招致诅咒。

关于飞翔的荷兰人的故事在航海传说中有很多个版本,与之相关的是福肯伯格船长(Captain Falkenburg)的中世纪传奇故事,他以自己的灵魂为赌注与魔鬼掷骰子,被诅咒在北海不停往返直到审判日。

飞翔的荷兰人第一次在书中被提到是在乔治·巴林顿《Voyage to Botany Bay》(1795年)一书的第6章:

    译文:我对海员崇敬幻影的迷信常有耳闻,但从未对这类记录给予太多信任。据传一艘荷兰军舰在好望角外失事,船上无人生还。同行的船只经受住了暴风,随后抵达好望角。整修后返回欧洲的途中,他们在相同的纬度遭到猛烈的暴风雨的袭击。值夜的一些水手看到,或者在想象中看到,一艘船满帆向他们始来,仿佛要将他们撞沉:一名水手尤其确定这正是在前一场暴风中沉没的船,或者是她的幻影。但暴风雨稍停的时候,黑云似的船就消失了。幻影在海员心里挥之不去,等船靠岸,故事也就像野火般在人中传开了,幻影也被称作飞翔的荷兰人。

根据一些来源,这艘幽灵船的船长原型是17世纪的荷兰船长伯纳德·福克(Bernard Fokke)。福克因从荷兰到爪哇航行的离奇神速而出名,当时的人因而怀疑他与魔鬼为伍以达到如此的速度。

对飞翔的荷兰人的第一次详细的描述应该是布莱克伍德杂志(Blackwood's Magazine)1821年五月刊上的一篇文章。事件发生的地点是好望角:

    译文:她是一艘阿姆斯特丹船,于70年前起航。她的主人是亨德里克·范德戴肯(Hendrik van der Decken)船长。他是一个坚定可靠的海员,就算与魔鬼为敌也会按自己的意见行事。从来没有哪个他手下的船员有任何抱怨,虽然船上的具体情形外人无从知晓。故事是这样:在好望角转弯的时候他们正试图在恶劣天气中通过桌湾。然而,风越来越大,不断的向船冲击,范德戴肯在甲板上咒骂大风。日落稍后,一艘经过的船问他是否不打算当晚入港,范德戴肯回答“如果我进港,就让我永世受诅咒,因为我将在此迎风航行直至审判日。”他确实一直没有进港,人们相信他仍在海面上大风中航行,每次有人遇到这艘船,她都有恶劣的天气相伴。

19到20世纪之间在外海上有很多起对“飞翔的荷兰人”的目击事件。威尔士亲王乔治(后来的乔治五世)的目击是最著名的几次之一。1880年,在他十五岁时,他与兄长威尔士亲王阿尔伯特·维克多(其父是后来的爱德华七世)一起正由辅导老师达尔顿(John Neale Dalton)陪伴,乘4000吨的轻巡洋舰巴坎堤号(HMS Bacchante),进行为期三年的航行。在澳大利亚悉尼和墨尔本之间海面上,达尔顿写到:

    译文:在早晨4点“飞翔的荷兰人”出现在我们的船首方向。它像幻影般发着红色的光,照亮了200码以外双桅船的桅杆和船帆。她从船首左侧靠近时,在舰桥上值班的军官和后甲板上的见习军官显然都看到了她。见习军官立刻被派往前甲板,但到达时她在附近出现过的痕迹已经消失的无影无踪了,连在地平线上都找不到她的任何踪迹。10点45分,早先发现飞翔的荷兰人的海员从前桅中部顶横桁坠落到前甲板上,摔得粉身碎骨。

2008-04-02

Sending Non-ASCII Text to MySQL in UTF8 Encoding

This section provides a test on sending non-ASCII character strings to MySQL server in UTF8 encoding.

The next test I did was to re-run the same SQL INSERT statement that included Latin1, UTF-8, GBK and Big5 characters directly. But I changed MySQL session settings with character_set_client=latin1 and character_set_connection=latin1 to see how MySQL applies the conversion when executing the INSERT statement.

<?php #MySQL-Send-Non-ASCII-UTF8.php
# Copyright (c) 2007 by Dr. Herong Yang, http://www.herongyang.com/
#
$con = mysql_connect("localhost", "Herong", "TopSecret");
$ok = mysql_select_db("HerongDB", $con);
$test_name = "Send Non-ASCII";

# Set character_set_results
mysql_query("SET character_set_results=utf8", $con);

# Set character_set_client and character_set_connection
mysql_query("SET character_set_client=utf8", $con);
mysql_query("SET character_set_connection=utf8", $con);

# Show character set encoding variables
$sql = "SHOW VARIABLES LIKE 'character_set_%'";
$res = mysql_query($sql, $con);
while ($row = mysql_fetch_array($res)) {
print($row['Variable_name']." = ".$row['Value']."\n");
}
mysql_free_result($res);

# Delete the record
$sql = "DELETE FROM Comment_Mixed WHERE Test_Name ='$test_name'";
mysql_query($sql, $con);
print("\nNumber of rows deleted: ".mysql_affected_rows()."\n");

# Build the SQL INSERT statement
$sql = <<<END_OF_MESSAGE
INSERT INTO Comment_Mixed (Test_name, String_ASCII,
String_Latin1, String_UTF8, String_GBK, String_Big5)
VALUES ('$test_name', 'Television',
'T?l?vision', '电视机/電視機', '???', '???');
END_OF_MESSAGE;

# Run the SQL statement
if (mysql_query($sql, $con)) {
print("\nNumber of rows inserted: ".mysql_affected_rows()."\n");
} else {
print("SQL statement failed.\n");
print(mysql_errno($con).": ".mysql_error($con)."\n");
}

# Get the recod back
$sql = "SELECT * FROM Comment_Mixed"
. " WHERE Test_Name = '$test_name'";
$res = mysql_query($sql, $con);
if ($row = mysql_fetch_array($res)) {
print("\nTest Name = ".$row['Test_Name']."\n");
print(" String_ASCII: 0x".bin2hex($row['String_ASCII'])."\n");
print(" String_Latin1: 0x".bin2hex($row['String_Latin1'])."\n");
print(" String_UTF8: 0x".bin2hex($row['String_UTF8'])."\n");
print(" String_GBK: 0x".bin2hex($row['String_GBK'])."\n");
print(" String_Big5: 0x".bin2hex($row['String_Big5'])."\n");
}
mysql_free_result($res);

mysql_close($con);
?>


Note that string literals in the source code above will not be displayed properly, because this book uses UTF-8 encoding. Here is the output:



C:\>\local\php\php MySQL-Send-Non-ASCII-UTF8.php

character_set_client = utf8
character_set_connection = utf8
character_set_database = latin1
character_set_filesystem = binary
character_set_results = utf8
character_set_server = latin1
character_set_system = utf8
character_sets_dir = \local\mysql\share\charsets\

Number of rows deleted: 0

Number of rows inserted: 1

Test Name = Send Non-ASCII
String_ASCII: 0x54656c65766973696f6e
String_Latin1: 0x543f6c3f766973696f6e
String_UTF8: 0xe794b5e8a786e69cba2fe99bbbe8a696e6a99f
String_GBK: 0x3f3f3f3f3f
String_Big5: 0x3f713f3f3f3f


The output is interesting:




  • Conversion from character_set_client, utf8, to character_set_connection, utf8 - Identical encodings. No conversion will happen.


  • Conversion from character_set_connection, utf8, to column String_ASCII's encoding, ascii - Will happen with potential data loss. But the input text for String_ASCII is ASCII characters only and compatible with UTF-8. The output shows no problem.


  • Conversion from character_set_connection, utf8, to column String_Latin1's encoding, latin1 - Will happen with potential data corruption. MySQL took my Latin1 input string as a UTF-8 string and converted to Latin1. Output of String_Latin1 shows one corrupted character (0xE9 was replaced by 0x3F) in two places.


  • Conversion from character_set_connection, utf8, to column String_UTF8's encoding, utf8 - Perfect match. No conversion will happen. Output of String_UTF8 is perfectly correct.


  • Conversion from character_set_connection, utf8, to column String_GBK's encoding, gbk - Will happen with potential data corruption. MySQL took my GBK input string as a UTF-8 string and converted to GBK. Output of String_GBK is totally corrupted.


  • Conversion from character_set_connection, utf8, to column String_Big5's encoding, big5 - Will happen with potential data corruption. MySQL took my Big5 input string as a UTF-8 string and converted to Big5. Output of String_Big5 is totally corrupted.

2008-04-01

Automotive family tree 2008



4月1日:愚人节

1945年,在第二次世界大战中,美国军队在日本冲绳岛登陆,冲绳岛战役(图)陆上之战爆发。
1976年乔布斯沃兹尼亚克美国加利福尼亚州成立苹果公司
1979年伊朗举行全民公决,通过在伊朗建立伊斯兰共和制政体的国家。
2001年,前南斯拉夫联盟总统米洛舍维奇因涉嫌滥用职权等罪被塞尔维亚警方逮捕。
2002年荷兰安乐死法律正式生效,成为世界上第一个承认安乐死合法的国家。

Google has acquired FeedBurner

http://www.feedburner.com/google