Monday, December 12, 2011

#TEMPTABLE 、##TEMPTABLE 、@TEMPTABLE 區別?!

下列三種方式的區別 :
 
--方法一 
CREATE TABLE #TEMP(
  NAME CHAR(20),
  ID   CHAR(10)
)
 
--方法二 
CREATE TABLE ##TEMP(
  NAME CHAR(20),
  ID   CHAR(10)
)
 
--方法三 
DECLARE @TEMP TABLE (
  NAME CHAR(20),
  ID   CHAR(10)
)
 
INSERT INTO #TEMP VALUES('TOM','A123456789')
INSERT INTO ##TEMP VALUES('ARIC','G123212343')
INSERT INTO @TEMP  VALUES ('BILL','M123465324')
 
方法一 VS. 方法二
1.兩者均在tempdb資料庫中建立起資料表(存於DISK中),可利用 DROP TABLE 刪除暫存資料表,或是建立該暫存資料表的連線結束時,SQL Server 會自動將其刪除。 
2.#TEMP資料只有建立者可以取用,其他人不可取用;##TEMP則是所有人均可取用
 
方法一二 VS 方法三
1.前者需用到DISK I/O;後者則是儲存於記憶體中
2.前者需使用DROP或是連線結束後暫存表才會消失;後者不需使用DROP指令,當批次指令執行完成後即自動被刪除

Wednesday, December 7, 2011

Transfer Contacts From iPhone to Android

If you are an iPhone user surely you might have interested in switching to android phones. But one of the challenging thing in migrating from iPhone to android is you need to transfer iphone contacts to android. Few weeks before I wrote to backup your entire android phone and to backup your android sms to gmail. In both the backup process Google is the primary point and we can backup everything to Google easily.
transfer-contacts
The same we going to follow in our contact transferring from iPhone to Android. We will be using Google Contacts for transferring the contacts from  your iPhone to android. Here I gave the procedure for transferring the contacts from iPhone to android from mac also the procedure for windows machines.
To import iPhone Contacts From Mac to Google Contacts
1. Connect iPhone and open the iTunes in your macbook ( iTunes 7.7 or later version is preferable)
2. Select iPhone from the device list in your iTunes.
3. Click the info tab in your iTunes.
4. In address book click the sync address book contacts option.
5. Select all contacts and check the sync Google Contacts option in the same page.
transfer-contacts-mac
6.Click configure button to enter your Gmail id and password.
7. That’s it, all the contacts from your iPhone are sync with Gmail contacts.
Note: For sync your iPhone contacts with Gmail you need to clear all the contacts in your Gmail account. Otherwise use a fresh Gmail id for sync your contacts.
To Import iPhone Contacts from PC to Google Contacts
1. Install iTunes latest version in your windows machine. Download iTunes (latest version).
2. Connect iPhone to your PC.
3. Go to iTunes and select the iPhone from device list.
4. Click info tab and select sync contact with.
tranfer-contacts1
5. Select Google Contacts from the list.
6. You will be prompted to enter your Gmail id and password.
7. After entering your Gmail id and password click ok to start sync.
To Copy Contacts From Google to Your Android Phone
1. Go to Accounts & Sync in your android phone (menu -> settings -> Accounts & Sync)
2. Tap add account option at bottom of the screen.
3. Select Google from the list and enter your Gmail id and password.
4. Then your Gmail account will be sync with your android mobile.
google-contacts-android
5. Tap the Gmail account as show in the above screenshot above.
6. Then you will have a list of options to enable or disable sync with your android mobile.
7. Tap on Google Contacts then it will automatically sync the contacts from Gmail.
8. That’s it all  your Google Contacts will now appear in your android phone contacts.

soruce: http://www.dailytut.com/apple/transfer-contacts-iphone-android-mobile.html

Stock Comments (2011/12)

1 不用margin操作股票
2 不操作option (卖covered call除外)
3 不操作垃圾股。垃圾股的定义是:股价小于$5,market cap < 300 million
4 不操作不是你工作行业的医药股,尤其是还不盈利的公司
5 不操作你没有认真观察过两个星期以上的股票
6 不操作每日涨/跌幅排行榜上的股票,除非它们在你的watchlist上呆过一断时间了
7 严格执行cut loss的规定,以8%为界
8 切实减少操作次数,能不trade就不trade
9 不short股票
10. 账户多元化,任何个股在账户中占的份额不得超过40%

在股海中生存壮大
要当随从,不要当领导 (跟从趋势)
要迟到,不要早到 (不要再盘前交易,不要猜顶或底)
要救急,不要救穷 (买挣钱的企业)
要广结善缘,不要只靠一个(分散风险)
要膀大款,不要独自创业 (找龙斗股,强庄股, 不找冷门股)
要八面玲珑,不要一根筋 (注意趋数不断变化)
要后发制人,不要没事找事 (跟庄)
要留有余的,不要把事做绝 (不用马金,少全舱)
要细水长流,不要指望一夜暴富 (注重分红,少垃圾)
要热情开放,不要清高封闭(有好股要广而告知)
要多感恩,不要抱怨(善有善报)
要多照顾老客户,不要外来和尚好念经(多做自己熟悉的股,少跟风他人新股)
要乐观,不要悲观 (输赢是股家常事)
要豁达,不要报复(赔钱就走,报复不出善缘,找合适自己的股)

一般来说,P/E市盈率水平为:

    * 0-13:即价值被低估
    * 14-20:即正常水平
    * 21-28:即价值被高估
    * 28+:反映股市出现投机性泡沫


缓涨急跌是牛市特征,急涨阴跌是熊市
地量+小K线+小乖离+分时横盘=买入
天量+大K线+大乖离+分时急冲=卖出
契合买点3+1= (K线由大收敛至小+量由天量缩至地两量+股价调整至十日线或整理五日线)+ 分时横盘不破前低
简单点就是:3+1=(小K线+小量+小乖离)+ 分时横盘

输入法的注册、安装和卸载

注册输入法
输入法的安装和普通应用程序有一个大的区别是,除了复制文件到安装目录、做一些必要的设置外,还需要向Windows系统注册这个输入法。
我们前期一篇博文 TSF(Text Service Framework)简介中谈到,Windows有两种输入法的框架,IMM32和CTF。下面分别说下两种情况的注册。

IMM32框架

每个输入法要将自己注册为一个Keyboard Layout,具体来说做以下几件事:
A.在注册表中HKEY_LOCAL_MACHINE/SYSTEM /CurrentControlSet/Control/Keyboard Layouts,创建一个新的Key,名字为xxxx0804 (低位表示语言,这里0804表示简体中文;高位表示设备句柄,0000表示默认的physical layout,如00000804表示简体中文英文键盘)。譬如:
[HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Keyboard Layouts/E0200804]
"IME File"="***.IME"
"Layout File"="kbdus.dll"
"Layout Text"="微软拼音输入法 2010"
"Layout Display Name"="@C://Program Files (x86)//***//***.DLL,-101"
***.IME为一个传统的动态链接库,只是扩展名不一样。它必须export几个IMM框架必须要的函数接口。
B. Enable这个输入法,譬如:
[HKEY_CURRENT_USER/Keyboard Layout/Preload]
"1"="00000804"
"2"="e0200804"
这里表示语言栏会显示两个keyboard layout:
1为简体中文键盘,2为注册的某简体中文输入法
C.复制 IMSCxxx.ime到system32目录下
通过这三步,Windows就知道了这个输入法,并将其显示在语言栏中。

CTF框架

CTF框架下,一个输入法为一个TIP(Text Input Processor),其首先必须注册为一个COM组件。通过 ITfInputProcessorProfileMgr::RegisterProfile()接口注册TIP的CLSID和ProfileID。这等 价于下面写注册表的方式:
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/CTF/TIP/{CLSID}/LanguageProfile/[langid]/{guidProfile}
Description=SZ:
IconFile=SZ:
IconIndex=DWORD:
Enable=DWORD:[0|1]
SubstituteLayout=SZ:
CLSID 代表TIP,同时指容纳TIP的COM的GUID,ProfileID是指具体某个输入法的ID,一个COM可以包含多个输入法ProfileID。譬如,微软拼音2010就在一个COM中实现了两个输入法:新体验和简捷,以满足不同用户需求。
或者使用老接口来注册
1) 通过ITfInputProcessorProfiles::Register()注册CLSID
2) 通过ITfInputProcessorProfiles::AddLanguageProfile()添加language profile
    -可以添加不同语言的多种的profile
    这等价于:
    HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/CTF/TIP/{CLSID}/LanguageProfile/[langid]/{guidProfile}
    Description=SZ:
    IconFile=SZ:
    IconIndex=DWORD:
3) 通过ITfInputProcesorProfiles::EnableLanguageProfileByDefault()来缺省Enable或disable 某profile.
    - 这个设置是系统级别,即应用于不同系统中的不同用户.
    - 如果没有调用此接口,默认是enable
    - 可以在HKCU中覆盖此设置
    这等价于:
    HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/CTF/TIP/{CLSID}/LanguageProfile/[langid]/{guidProfile}
    Enable=DWORD:[0|1]
4) 设置profile的名字:调用ITfInputProcessorProfilesEx::SetLanguageProfileDisplayName().
    - 可选步骤. 注意设置不同语言的名字。
    这等价于:
    HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/CTF/TIP/{CLSID}/LanguageProfile/[langid]/{guidProfile}
    Display Description=SZ:
5) 设置可替换的keyboard layout (仅使用键盘TIP)
    - ITfInputProcessorProfiles::SubstituteKeyboardLayout() 为profile设置可替换的hkl。
      当焦点从Cicero aware 的控件切换到non-Cicero aware的控件上时,这个hkl会被用到。这等价于:
    HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/CTF/TIP/{CLSID}/LanguageProfile/[langid]/{guidProfile}
    SubstituteLayout=SZ:
    
可选 – 在控制面板输入法对话框中隐藏profile
    HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/CTF/TIP/{CLSID}/LanguageProfile/[langid]/{guidProfile}
    HiddenInSettingUI=DWORD:[0|1]
    如果此键值不存在,则默认为0,即此profile显示在控制面板输入法对话框中
顺便提一下,在当前用户下设置默认输入法:
ITfInputProcessorProfile::SetDefaultLanguageProfile()
这只影响到新创建线程,而不会对已经运行的线程产生影响。当然,重启后,在所有线程都会生效。次接口只会影响当前用户,对系统中其他用户无影响
这等价于:
HKEY_CURRENT_USER/SOFTWARE/Microsoft/CTF/Assembly/[langid]/{TIP’sCategory}
Default=SZ:TIP’sCLSID
KayboardLayout=DWORD:
Profile=SZ:TIP’s guidProfile
从上面可以看到,无论哪种框架,都需要向注册表HKEY_LOCAL_MACHINE路径写入输入法信息,另外不同输入法也可能注册自己的组件到操作系统中,所以安装时:
第一,需要administrator权限;要求所用户必须属于administrators组的成员;
第二,如果系统中安装了某些安全软件,其可能阻挡写入注册表系统路径(如HKEY_LOCAL_MACHINE),这时候安装就不能成功。要么暂时关闭其功能,要么在其提示是选择“允许写入”,要么卸载它后再安装.

安装和卸载微软拼音输入法2010
从论坛和其他用户反馈上,在安装和卸载微软拼音输入法2010时有些用户会遇到问题。如果安装时解决上面两点还存在问题(下面所说仅针对从微软拼音主页http://www.microsoft.com/china/pinyin/ 下载的微软拼音输入法2010,不适用于Office 2010中文版中包含的微软拼音输入法),那按以下步骤确定问题:
1. 如果安装失败,要确认系统中是否残留以前安装过的。下载一个myuninstaller, 这是个绿色软件,直接运行:
   
2. 上面显示的是x86系统中的软件列表,如果存在红线中两个安装包中任意一个,全部卸载,
    Microsoft Office IME (Chinese (Simplified)) 2010
    Microsoft Office IMESS (Chinese (Simplified)) 2010
3. 安装原始安装包。
如果还失败,可以试试某用户的方法http://social.technet.microsoft.com/Forums/zh-CN/2087/thread/2af44c79-4005-4ebe-92d3-1fa003526353。 理论上来说,只要管理员权限就能写入HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Image File Execution Options,但某些系统中不能写入,可能的原因是公司的域策略或者杀毒软件保护了此路径,因为这个路径非常特殊,恶意软件经常利用此路径而自动启动恶 意进程。
微软拼音之所以写这个目录,是因为启用了SEHOP(Structured Exception Handler Overwrite Protection),参见http://msdn.microsoft.com/en-us/library/bb430720.aspx,这可以防止恶意程序利用此漏洞。

手工设置输入法顺序

记得以前系统的某个版本是可以直接设置输入法顺序的,感到很方便,但自从使用xp sp2以来,输入法顺序的更改对于一般用户都是非常头痛的一件事,非的借助第三方工具不可,查阅资料发现,其实更改它也不是很难,这里做了些引用和补充,如有错误请指正:

手工更改输入法顺序
1.修改注册表法:
在注册表编辑器(在“开始/运行”对话框中输入“REGEDIT”)中展开:“HKEY_CURRENT_USER\Keyboard Layout\Preload”分支,可看到名为”1”、”2”、”3”…的文件夹,它们分别顺序对应输入法菜单中的各项输入法。假设当前输入法菜单中, 全拼对应的文件名是2,智能ABC对应的文件名是5,可先将5改为6(点右键选“重命名”即可修改),然后将2改为5,再将6改为2,最后重启系统。可看 到输入法菜单中全拼和智能ABC的位置调换了。
2.快捷键法:
打开“控制面板”,双击“输入法”,启动“输入法属性”对话框,选择“热键”选项卡。通过“基本键”和“组合键”为各输入法定义不同的快捷键。如将 “王码五笔输入法”定义快捷键为“Ctrl+Alt+5”,以后要使用五笔输入法,按下“Ctrl+Alt+5”组合键即可。此法虽未实际调整输入法位 置,但在你心中却有一明了的顺序,可让你随意调出。
注:此方法只适合Win9X/2000。
3.软件
我们可以用《Windows优化大师》或《超级魔法兔子》等软件来调整。运行《Windows优化大师》后,进入“系统个性设置”选项卡中的“输入法 顺序”,选中任一输入法后,通过右边的“向上”、“向下”按键,调整到合适位置即可;同样,“超级魔法兔子”也用一个“输入法”选项供调整。
4.重装法
重新添加输入法以达到调整顺序的目的,具体方法:在控制面板中找到“输入法”图标双击打开输入法,找到需要调整的输入法,把它前面的输入法依次删除 (这里删除并不是真的把输入法从电脑中删除,只是把它清出输入法列表)再按想要的顺序依次地添加上,注意先安装的输入法会排在前面。这样输入法的顺序就得 到了调整。

/*********部分注册表信息***************/
[HKEY_CURRENT_USER\Keyboard Layout\Preload]
"1"="00000804"
"2"="e00e0804"
"3"="e0210804"
"4"="e0220804"
"5"="00000409"
[HKEY_CURRENT_USER\Keyboard Layout\Preload\1]
"TrueID"=""
[HKEY_CURRENT_USER\Keyboard Layout\Preload\2]
"TrueID"=""
[HKEY_CURRENT_USER\Keyboard Layout\Preload\3]
"TrueID"=""
[HKEY_CURRENT_USER\Keyboard Layout\Preload\4]
"TrueID"=""
[HKEY_CURRENT_USER\Keyboard Layout\Preload\5]
"TrueID"=""
/*********部分注册表信息***************/

/*********输入法代码***************/
00000409 (默认) - 美国英语
00000804 中文 (简体) - 美式键盘
E0010804 中文 (简体) - 全拼
E0030804 中文 (简体) - 郑码
E0040804 中文 (简体) - 智能 ABC
E00E0804 中文 (简体) - 微软拼音输入法 3.0 版
(系统显示)
E0020804 中文 (简体) -双拼
E0050804 中文 (简体) -内码
E0120804 Chinese (Simplified) - Enhanced Unicode IME (Windows 2000)

对上述注册表信息的注解:
"1"="00000804"  中文 (简体) - 美式键盘
"2"="e00e0804"  中文 (简体) - 微软拼音输入法 3.0 版
"3"="e0210804"  中文五笔(极品)
"4"="e0220804"  紫光拼音(v5)
"5"="00000409"  (默认) - 美国英语

该设置i在桌面上的实际顺序是:中文 (简体) - 美式键盘    紫光拼音(v5)   中文五笔(极品)    微软拼音
                                                 (默认) - 美国英语
在浏览器中的顺序为:中文 (简体) - 美式键盘    微软拼音    中文五笔(极品)   紫光拼音(v5)
                                   (默认) - 美国英语

/*********输入法代码***************/