yangyi
项目合作联系我: yangyi_love@hotmail.com

2011年9月27日

如果看到mysql中COLUMN 的collate是以ci结尾,意味着该列不区分大小写。

更改为cs或bin结尾的即可。

举例:

ALTER TABLE tablename MODIFY COLUMN `nickname` VARCHAR(30) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL;

posted @ 2011-09-27 17:49 谁是菜鸟? 阅读(4) 评论(0) 编辑

2011年8月2日

selector{
property:value; /* 所有浏览器 */
property:value\9; /* 所有IE浏览器 */
+property:value; /* IE7 */
_property:value; /* IE6 */
}

备忘

posted @ 2011-08-02 15:48 谁是菜鸟? 阅读(7) 评论(0) 编辑

2011年5月9日

连支付网关最头疼的就是乱码

产生的原因:

1:中文URLEncode的编码集不一致产生乱码,

URLEncode.encode("GBK")和 URLEncode.encode("UTF-8")传过来的值是完全不同的

example:

URLEncoder.encode("蜜蜂飞啊飞","UTF-8")=%E8%9C%9C%E8%9C%82%E9%A3%9E%E5%95%8A%E9%A3%9E

URLEncoder.encode("蜜蜂飞啊飞","GBK")=%C3%DB%B7%E4%B7%C9%B0%A1%B7%C9

所以我们服务器接收的编码必须要和对方服务器的编码一致,否则产生乱码。

假定我们的服务器是URIEncoding="utf-8",那么要求对方传过来的数据只能用utf-8 

posted @ 2011-05-09 14:01 谁是菜鸟? 阅读(18) 评论(0) 编辑

2011年1月11日

仅记录自己的错误

HBufC* content=HBufC::NewLC();

(CleanupStack::Pop();)本应该在删除之前

delete content;

少用这个NewLC,一旦忘记了 查起来是要死人的

 

 

posted @ 2011-01-11 16:28 谁是菜鸟? 阅读(70) 评论(0) 编辑

2010年12月3日

mysql出现:Lock wait timeout exceeded; try restarting transaction

什么问题导致的呢?绝对是程序的问题,因为另一个线程锁住了表或者记录导致后来到请求无法完成。

如何产生的:

表A

存储过程B

DELIMITER $$

DROP PROCEDURE IF EXISTS `B` $$
CREATE PROCEDURE `B`( )
BEGIN
SET autocommit=0;

select * from A where id=1 for update;

.......
commit;
END $$

DELIMITER ;

 

存储过程C

DELIMITER $$

DROP PROCEDURE IF EXISTS `C` $$
CREATE PROCEDURE `C`( )
BEGIN
select * from A where id=1 for update;

........
END $$

DELIMITER ;

 

 

当调用完B以后(autocommit=0),调用c(此时该记录被锁定,因为没有commit该锁就一直在,造成了全局的死锁.这里其实还是代码问题,因为在autocommit=1的情况下for update 实际上是不起作用的),此后无论任何地方再来锁A表的记录的时候就会出这个超时的异常。

autocommit是connection级别的变量,但是锁确实全局的(select @@autocommit;),在我们使用数据库连接池的情况下,connection.close()其实只关闭了所有的statement,

所以当同一个connection调用了B以后再去调用C.造成了一个全局的锁。

如果只是想加锁的范围在特定的语句,则应该使用START TRANSACTION语句:

START TRANSACTION;
select * from A where id=1 for update;
。。。
COMMIT;

 

 

 

 

 

posted @ 2010-12-03 13:38 谁是菜鸟? 阅读(241) 评论(2) 编辑

2010年11月19日

posted @ 2010-11-19 14:06 谁是菜鸟? 阅读(343) 评论(1) 编辑

2010年11月10日

摘要: (说明,如果选择netbean请自动省略本文;如果您选择用eclipse自带的jar导出工具和手动拷贝到sfs,那么以下所有步骤你只需要执行5,6,8,10.其他省略~~~~)1:下载ant http://ant.apache.org/bindownload.cgi2:解压到c:\ant3:配置系统变量注销电脑让系统环境生效 4:检查系统环境是否配置成功 运行->cmd->ant看到下...阅读全文
posted @ 2010-11-10 18:18 谁是菜鸟? 阅读(352) 评论(1) 编辑

2010年8月10日

摘要: 1:Error writing file Errcode: 28一定是你的硬盘空间不够~~阅读全文
posted @ 2010-08-10 11:53 谁是菜鸟? 阅读(55) 评论(0) 编辑

2010年7月30日

摘要: 1:查看系统版本uname -a2:tar解压tar -zxvf memcached-1.x.x.tar.gz3:查找文件find -name "aa.*"4:查看文件大小du -h --max-depth=1 /var (max-depth=1指定文件目录下第一级所有文件夹的大小)5:ssh显示中文vi /etc/sysconfig/i18n 加入下面代码保存退出,重新登陆sshLANG="zh_CN.GB18030" LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN" SUPPORTED=&qu阅读全文
posted @ 2010-07-30 11:56 谁是菜鸟? 阅读(35) 评论(0) 编辑
 
摘要: 在CentOS5.5中安装memcached偶遇"checking build system type... Invalid configuration `x86_64-unknown-linux-': machine `x86_64-unknown-linux' not recognized"的错误,到处搜索而无所得~原来是该机器上没有gcc等必须的包.该死的谁装的机器拖出去打~~~yum in...阅读全文
posted @ 2010-07-30 11:25 谁是菜鸟? 阅读(167) 评论(0) 编辑