windows之注册表

添加注册表项

1
2
3
4
5
6
7
8
9
10
11
Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOT\folder\shell\cmd]

;[HKEY_CLASSES_ROOT\folder\shell\cmd]

;@="Open Commond"

;[HKEY_CLASSES_ROOT\folder\shell\cmd\command]

;@="cmd.exe /k cd %1"

删除注册表项

1
2
3
4
[-HKEY_CLASSES_ROOT\Directory\Background\shell\runas]


[-HKEY_CLASSES_ROOT\Drive\shell\runas]

mysql 触发器

实例1
实例2
实例3
实例4
实例5

说明:
所需要触发的SQL语句都要以‘;’结束。end后面也需要有分界符,但不能再是’;’。所以创建触发器之前需要先修改分界符

delimiter 分界符 上文以 $ 为例子

对于insert,插入一行后出现了一个新行用new表示,在触发器中可以通过new.列名来引用插入行各个字段的值

对于delete,删除一行后之前的那行不见了,用old表示,在触发器中可以通过old.列名来引用被删除行各个字段的值

对于update,修改一行后旧的一样用old表示,新的一行用new表示,在触发器中可以通过new.列名来引用修改后行各个字段的值,old.列名来引用修改前各个字段的值。

触发器after和before的区别:

    after是先完成增删改再触发

    before是在增删改之前将以判断 如 :库存100 需要购买120 这时 就需要判断 只能购买100 不然库存就会变为 -20;例如:
1
2
3
4
5
6
7
8
9
10
11
	create trigger tg5 before insert on dingdan for each row 
begin
declare tmp int ; #保存库存
select num into tmp from shop where id=new.id;
if new.much>tmp #比较购买量 如果大于库存 则=粗存
then set new.much=tmp;
end if;
update shop set num=num-tmp where id=new.id;
end$
```bash
更新多件商品 如下:
create trigger more after insert on dingdan for each row
begin
update shop set num=num-new.much where id=new.id
end$

`bash

多个github账号发布hexo

##用多个Github账号发布Hexo博客
Posted on 2015-01-10 |
如果只有一个 Github 账号,用 Hexo 发布博客很简单,在_config.yml里进行如下配置就好:

我的 _config.yml

1
2
3
deploy:
type: github
repo: https://github.com/RockerFlower/rockerflower.github.com.git

但如果是同一台设备承载了两个或以上用户的 Git 需求,比如我女友也要用 Hexo 写博客,就需要配置一下 SSH 了。操作系统为 OS X,Windows 同理。

新建 User 2 的 SSH Key

新建 SSH key:

1
2
$ cd ~/.ssh
$ ssh-keygen -t rsa -C "example2@email.com"

设置 SSH Key 的名字为 id_rsa_seeyuen

1
2
3
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/RockerFlower/.ssh/id_rsa):
$ id_rsa_seeyuen

##把新密钥添加到 SSH Agent 中
为了让 SSH 识别新的私钥,需将其添加到 SSH Agent 中:

1
$ ssh-add ~/.ssh/id_rsa_seeyuen

如果出现Could not open a connection to your authentication agent的错误,就尝试用以下命令:

1
2
$ ssh-agent bash
$ ssh-add ~/.ssh/id_rsa_seeyuen

##把新生成的 id_rsa_seeyuen.pub 内容添加到 GitHub 后台
修改 config 文件
在 ~/.ssh 下找到 config 文件,如果没有就创建:

1
$ touch config        # 创建config

然后写入:

1
2
3
4
5
6
7
8
9
10
11
# Default Github User (example1@mail.com)
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa
# Second Github User (example2@mail.com)
# 建一个 Github 别名,新建的帐号使用这个别名做克隆和更新
Host git2
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_seeyuen

其中的规则是:从上至下读取 config 的内容,在每个 Host 下寻找对应的私钥。这里将 GitHub SSH 仓库地址中的 git@github.com 替换成新建的 Host 别名如:git2。
这个例子中,需要 git 的是各自的 Hexo 仓库,那么 See Yuen 博客仓库的原地址是:git@github.com:SeeYuen/seeyuen.github.com.git,替换后就是:git2:SeeYuen/seeyuen.github.com.git。

修改 Hexo 的 _config.yml
我的 _config.yml

1
2
3
4
deploy:
type: github
repo: https://github.com/RockerFlower/rockerflower.github.com.git
See Yuen 的 _config.yml

1
2
3
deploy:
type: github
repo: git2:SeeYuen/seeyuen.github.com.git

完成。这样在各自的目录下可以互不影响地 deploy 到各自的 Github 仓库了。

hexo之SSH KEY

##使用Github SSH Key以免去Hexo部署时输入密码

原文本来放在Hexo常见问题解决方案之中,但是由于步骤较多,理解起来比较困难,因此将本文独立出来单独成篇,以便于进行操作。

操作
修改_config.yml
将_config.yml的git信息修改为SSH形式。

###列出已存在的SSH Key
打开Git Bash,并且输入:

1
ls -al ~/.ssh

这个命令会列出你.ssh账户中已经存在的SSH key,如果之前没有设置过,一般都是没有。

###生成密钥
然后输入:

1
ssh-keygen -t rsa -C "your_email@example.com"

这个命令将会生成一个以your_email@example.com为标签的ssh key,然后bash中会显示:

1
2
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter]

直接回车,然后出现:

1
2
Enter passphrase (empty for no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]

因为追求操作方便,我们不打算在deploy的时候输入这个passphrase,所以直接回车两次设为空。然后你会看到:

1
2
3
4
Your identification has been saved in ~/.ssh/id_rsa.
Your public key has been saved in ~/.ssh/id_rsa.pub.
The key fingerprint is:
01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com

###加入SSH Agent
下一步输入:

1
ssh-agent -s

如果出现类似Agent pid XXXX这样的字样,则跳过下一步,否则输入:

1
eval `ssh-agent -s`

直到出现Agent pid XXXX这样的提示之后,输入:

1
ssh-add ~/.ssh/id_rsa

这样,你成功的在本地生成了一个可用的SSH key。

###将SSH Key添加到Github中
下面将这个key添加到github网站。
打开https://github.com/settings/ssh,点击Add SSH Key,复制id_rsa.pub中的所有内容到Key框中,在Title框中输入方便自己记忆的名字(建议输入能让自己明白是哪台电脑的名字,方便以后管理)。
当网页显示添加成功后,就已经完成了全部的操作。
下面进行一些测试,同样是打开Git Bash,输入:

1
ssh -T git@github.com

bash中会显示如下字样:

1
2
3
4
5
6
7
8
9
The authenticity of host 'github.com (207.97.227.239)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?
```bash
输入yes之后,计算机会自动将github.com列入已知的host,然后会出现如下提示:

```bash
Hi username! You've successfully authenticated, but GitHub does not
provide shell access.

如果成功看见,说明你已经配置好了,快去享受爽快的hexo一键部署吧;
如果出现任何错误提示,请仔细检查自己的操作,或者将错误信息发给我。

更新日志
2015年02月07日 独立成篇。
2015年02月16日 补充_config.yml的修改。
2015年03月22日 修复了一处代码显示BUG。

Hexo本地文件托管到GitHub

像我就不知道什么时候把Hexo的本地文件弄丢了,所以重部署Hexo本地文件夹之后就决定将Hexo本地文件托管到GitHub,以防再次丢失。
托管步骤
1.在GitHub上建立一个新的repository,名字与本地Hexo文件相同
2.在本地Hexo文件Git Bash here,首先用git初始化管理这个目录

1
git init

3.把Hexo所有文件加入到git的管理中

1
git add .

此时使用git status可以看到一大片绿的文件名,表示这些文件的管理添加成功
4.使用命令git commit -m “first commit”,将这些文件提交到本地仓库
5.使用命令git remote origin http://github.com/username/yourRepositoryName.git把本地文件托管到该远程仓库
6.使用命令git push origin master,将本地仓库的改动推送到远程仓库
同步命令
同步到本地
1.clone整个Hexo文件
1

1
git clone https://你的托管地址.git

这样即使本地Hexo文件丢失或者换了新的电脑也可以将Hexo的源文件复制到本地了
2.同步更新到本地
当远程仓库有更新时,使用git pull或git fetch即可同步代码到本地
同步到github
写博客后,使用如下命令提交更新到远程仓库

1
2
3
git add .
git commit -m
git push

你是本站第位访客 本站访客数人次
Fork me on GitHub