Monday, May 31, 2010

常用数据库JDBC连接写法

1. MySQL(http://www.mysql.com)mysql-connector-java-2.0.14-bin.jar

[cc lang="java"]Class.forName( "org.gjt.mm.mysql.Driver" );

cn = DriverManager.getConnection( "jdbc:mysql://MyDbComputerNameOrIP:3306/myDatabaseName", sUsr, sPwd );[/cc]

2. PostgreSQL(http://www.de.postgresql.org)pgjdbc2.jar

[cc lang="java"]Class.forName( "org.postgresql.Driver" );

cn = DriverManager.getConnection( "jdbc:postgresql://MyDbComputerNameOrIP/myDatabaseName", sUsr, sPwd );[/cc]

3. Oracle(http://www.oracle.com/ip/deploy/database/oracle9i/)classes12.zip

[cc lang="java"]Class.forName( "oracle.jdbc.driver.OracleDriver" );

cn = DriverManager.getConnection( "jdbc:oracle:thin:@MyDbComputerNameOrIP:1521:ORCL", sUsr, sPwd );[/cc]

4. Sybase(http://jtds.sourceforge.net)jconn2.jar

[cc lang="java"]Class.forName( "com.sybase.jdbc2.jdbc.SybDriver" );

cn = DriverManager.getConnection( "jdbc:sybase:Tds:MyDbComputerNameOrIP:2638", sUsr, sPwd );

//(Default-Username/Password: "dba"/"sql")[/cc]

5. Microsoft SQL Server(http://jtds.sourceforge.net)

[cc lang="java"]Class.forName( "net.sourceforge.jtds.jdbc.Driver" );

cn = DriverManager.getConnection( "jdbc:jtds:sqlserver://MyDbComputerNameOrIP:1433/master", sUsr, sPwd );[/cc]

6. Microsoft SQL Server(http://www.microsoft.com)

[cc lang="java"]Class.forName( "com.microsoft.jdbc.sqlserver.SQLServerDriver" );

cn = DriverManager.getConnection( "jdbc:microsoft:sqlserver://MyDbComputerNameOrIP:1433;databaseName=master", sUsr, sPwd );[/cc]

7. ODBC

[cc lang="java"]Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );

Connection cn = DriverManager.getConnection( "jdbc:odbc:" + sDsn, sUsr, sPwd );[/cc]

8.DB2

[cc lang="java"]Class.forName("com.ibm.db2.jdbc.net.DB2Driver");

String url="jdbc:db2://192.9.200.108:6789/SAMPLE"

cn = DriverManager.getConnection( url, sUsr, sPwd );[/cc]

Wednesday, May 26, 2010

Linux For Thinkpad 下投影仪使用

安装完Linux一般都会发现快捷键不好用了。

1、简单方法
切入到文本控制台[cci]CTRL+ALT+F1[/cci]
执行 [cci]echo crt_enable > /proc/acpi/ibm/video[/cci]
切回图形界面就可以使用投影仪了。
注:执行前确认  [cci]/proc/acpi/ibm/video[/cci] 存在
如果不存在请往下看。

2、复杂且有效方法

linux-wiki

http://www.thinkwiki.org/wiki/Problem_with_video_output_switching

Saturday, May 22, 2010

创业之前

读了王建硕的《为什么硅谷最牛的人在创业公司?》,感触很深,想想国情,应该是有中国特色的创业。不如把事情放小,换个角度思考。依然有路可走。

Thursday, May 13, 2010

计算机改名,SQL Server 2005不能做复制

问题:计算机名修改之后,做复制时报错,错误如下:
SQL Server 复制需要有实际的服务器名称才能连接到服务器。不支持通过服务器别名、IP 地址或任何其他备用名称进行连接。请指定实际的服务器名称“xxxx”。 (Replication.Utilities)

解决方法

  1. sys.sysservers 查看列 svrname 可以发现不是新的计算机名,问题就出在此处。

  2. 先用 sp_dropserver 删除服务器,语句:EXEC sp_dropserver '老计算机名'

  3. 再用 sp_addserver 添加新的服务器,语句:EXEC SP_ADDSERVER '新计算机名','LOCAL'

  4. 最后重启SQL SERVER 服务,问题解决。

Tuesday, May 11, 2010

用 GPG 加密文件

在 Linux 下,用 gpg 命令就可以实现文件的加密和解密,而且 gpg 基本上每个发行版都会预装。
假如你要加密的文件名为 xxx.txt ,只需输入:
[cc lang="bash"]gpg -c xxx.txt[/cc]
经过两次输入密码确定,就会在目录下生成 xxx.txt.gpg,这个就是加密后的文件,不要忘记把原文件删掉哦~
解密的话,输入:
[cc lang="bash"]gpg diary.txt.gpg[/cc]
输入正确的密码,diary.txt 就会在当前目录下重新生成。

Friday, May 7, 2010

孩子们,你们扫了爷爷的兴

孩子们,你们扫了爷爷的兴韩寒

[caption id="attachment_1483" align="alignleft" width="150" caption="Google 搜索 泰兴幼儿园"]泰兴幼儿园[/caption]

中的小孩也被人砍了,32人受伤,死亡情况不明。这个新闻因为离开上一次南平幼儿园袭击的新闻太近,我甚至一度误以为是同一个幼儿园。

在最近的变态凶手杀人事件中,他们都选择了幼儿园和小学,相信在很多想报复社会的人心中,去幼儿园小学杀人成为了一种时尚,因为在杀人过程中,你将遇到最少的抵抗,杀掉最多的人,造成民间最大的痛苦的恐慌,是最有效的报复社会手段。除了杨佳以外,几乎所有杀手都挑选了向弱者下手。这个社会没有出口,杀害更弱者成了他们唯一的出口。我建议把全国地方政府门卫间里的保安们抽调去保护幼儿园,孩子都保护不了的政府不需要那么多人保护。

Wednesday, May 5, 2010

利用SQL索引提高查询速度

1.合理使用索引

索引是数据库中重要的数据结构,它的根本目的就是为了提高查询效率。现在大多数的数据库产品都采用IBM最先提出的ISAM索引结构。

索引的使用要恰到好处,其使用原则如下:

  • 在经常进行连接,但是没有指定为外键的列上建立索引,而不经常连接的字段则由优化器自动生成索引。

  • 在频繁进行排序或分组(即进行group by或order by操作)的列上建立索引。

  • 在条件表达式中经常用到的不同值较多的列上建立检索,在不同值少的列上不要建立索引。比如在雇员表的“性别”列上只有“男”与“女”两个不同值,因此就无必要建立索引。如果建立索引不但不会提高查询效率,反而会严重降低更新速度。

  • 如果待排序的列有多个,可以在这些列上建立复合索引(compound index)。

  • 使用系统工具。如Informix数据库有一个tbcheck工具,可以在可疑的索引上进行检查。在一些数据库服务器上,索引可能失效或者因为频繁操作而 使得读取效率降低,如果一个使用索引的查询不明不白地慢下来,可以试着用tbcheck工具检查索引的完整性,必要时进行修复。另外,当数据库表更新大量 数据后,删除并重建索引可以提高查询速度。


Tuesday, May 4, 2010

SQL Server 2005复制

一、基本的功能测试:
DML操作同步:

  1. 有主键表的增/删/改数据同步(同步正常)

  2. 无主键表的增/删/改数据同步(无主键不能作同步复制,必须将每一张表加主键,否则无法配置到同步环境)

  3. 包含索引的表的增/删/改数据同步(同步正常)

  4. 包含触发器的表的增/删/改数据同步(如果A表包含有触发器,当增加记录时向B表插入数据,备库上会报错)

  5. 包含级连删除/修改数据的表的删/改数据同步 (同步正常)

  6. 包含大对象数据的表增/删/改数据同步(同步正常)

Saturday, May 1, 2010

平台还是流量?

Facebook是个平台,Twitter也是。其实应该是先有平台还是先有流量的问题。对于创业者来说这是个问题。我想成功的创业者,是应该考虑平台而不适流量。

但是对于只考虑流量的网站是否注定就说是失败的?那些众多的小站不是只考虑流量的内容网站吗?我想可能是因为内容站比平台站好做而已。对于创业者来说就是要不断模拟网站的变化做出提前的预期满足用户需求,以用户为中心,才是成功之道。市场调查、确定方向、分析用户群、分析潜在用户群、搭建平台、组织内容、服务用户。是否这才是正确之道?