Sybase果然强,连错误的SQL都能解析
今天有程序员和我反映,说用一个sql可以查出数据,可以加了gorup by 之后,就没有数据了。查了之后发现一个奇怪的现象,原来程序员的SQL写错了,可问题是Sybase竟然可以执行。1> select * from test2> goid money----------- -----------1 12 13 14 15 15 24 2(7 rows affected)1> select id,sum(money) from test where id<22> goid----------- -----------1 12 13 14 15 15 14 1(7 rows affected)1> select * from test where id<22> goid money----------- -----------1 1(1 row affected)select id,sum(money
DML操作涉及到的系统表
用户表上没有锁,却不能做select 操作,很奇怪哦。[@more@]用户反映对表做select 操作,被堵塞了,一直在等待我觉得很奇怪,表是rowdata,除非发生了表升级,否则不因该被堵塞住阿。查了一下,在表上没有锁,再查进程,果然是lock sleep ,再一查才发现,原来是在等待 syscolumns 表的锁。有个drop tble 死在那了,结果导致对 syscolumns 表有表一级的锁,这个原因导致的select 无法操作,倒是我一直没有注意到过了。顺便作了一个测试我用了一个测试库,因为系统标无法lock table,所以我用update 把syscolumsn 这张表上关于test1 ,这张表
DB2学习笔记 - 表空间
表空间的学习笔记。[@more@]CREATE TABLESPACEcreate tablespace语句给数据库定义了一个新的表空间,分配container给tablespace。表空间的定义和属性保存在catalog。有2种不同的方式管理表空间1. 系统管理的表空间(SMS)可以使用到系统的IO缓存。不能从SMS表空间删除container。在SMS表空间内,每个container就是一个目录。如果一个表空间由多个容器创建,那么db2将均衡写入到各个容器的数据量。所有表数据和索引都共享同一个表空间。文件大小有可能动态增长,其大小上限由容器数量、操作系统在文件大小方面的限制,以及操作系统在单个文件
都是ALP惹的祸
今天碰到个怪问题。有人在界面上删除一条记录,然后界面就死在那了,然后用select 访问表,也访问不了了,一直在等待。[@more@]今天碰到个怪问题。有人在界面上删除一条记录,然后界面就死在那了,然后用select 访问表,也访问不了了,看了一下数据库,在表上有个锁,导致select 操作lock sleep 了,可是。。。 就算有锁,也不应该会阻塞select 阿,晕。本来就对锁不是很清楚,回去查了下资料。原来对于select DOL表会要求 共享意图表锁和共享行锁,对于delete DOL表会要求 排它意图表锁和数据行上的更新行锁和随后的排它行锁。可对于APL表