首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

惯用知识记录

2012-12-20 
常用知识记录sql 部分?1. 查询已创建的数据库// oracleselect name from v$database// db2db2 list db di

常用知识记录

sql 部分

?

1. 查询已创建的数据库   // oracle    select name from v$database;    // db2   db2 list db directory2. 复制表结构   // oracle   create table tableName as select * from tableNameOld where 1=2;   // db2   # 保留 not null 和 默认值, 会丢失主键,自增量等信息   create table tableName like tableNameOld;   # 保留 not null, 丢失主键,自增量,默认值等信息   create table tableName as (select * from tableNameOld) definition only;3. 复制表结构及其数据   // oracle   create table talbeName as select * from tableNameOld;   // db2   ??4. 修改表名   // oracle, db2   rename tableNameOld to tableName;   5. 列5.1 添加列   // oracle, db2   alter table tableName add columnName typeName;   5.2 修改列   // oracle   alter table talbeName modify columnName typeName;   // db2   alter table tableName alter column columnName set data type typeName; 5.3 删除列   // oracle, db2   alter table tableName drop column columnName;6. 复制表数据6.1 表结构一样    // oracle, db2    insert into tableName select * from tableNameOld;6.2 表结构不一样    // oracle, db2    insert into tableName(col1,col2,...) select column1,column2,... from tableNameOld;7. 分页   // oracle        select * from (        select A.*,rownum as rn from (sql) A where rownum <= ?    ) where rn >= ?;        select * from (        select A.*,rownum as rn from (sql) A    ) where rn >= ? and rn <=?;   // db2   select * from (       select A.*,rownumber() over(order by columnName) rn from (sql) A   ) where rn>=? and rn<=?;8. null    判断字段为 null   : where columnName is null   判断字段不为 null : where columnName is not null   null 参与比较结果均为 false : > null, < null, <> null   null 在 order by 时大于任何值   # null     -> not null   // oracle    alter table tableName modify columnName not null;   // db2   alter table tableName alter columnName set not null;   # not null -> null   // oracle   alter table tableName modify columnName null;    // db2   alter table tableName alter columnName drop not null;9. 分组   group by 需要和统计函数一起使用,例如 sum,avg,count,max,min等,   且select 中出现的列必须在 group by 中出现   select customer,sum(orderPrice) from orders group by customer;10. 索引   对于复合索引,where 条件中的列出现顺序必须与创建索引时的列顺序一致;   如果 where 条件里只有复合索引中的部分列,则必须有前导列否则索引无效;   所谓前导列可看作是创建索引时的第一个列名;11. 系统时间   // oracle   select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;   // db2   select current date from sysibm.dual;   select current date from sysibm.sysdummy1;   select current time from sysibm.sysdummy1;   select current timestamp from sysibm.sysdummy1;12. 批量更新12.1 批量 insert   // oracle   ??   // db2   insert into tableName values (val1,val2,...),(val8,val9);12.2 java code   PreparedStatement prst = conn.prepareStatement(sql);   prst.setXXX(index, value);   prst.addBatch();          // !! 将参数添加到批处理命令中   prst.executeBatch();      // !! 批量执行命令13. 序列13.1 创建序列   # oracle, db2   create sequence seqName increment by 1 start with 1      nomaxvalue nocycle cache 10;13.2 查询序列   # oracle    select seqName.currval from dual;   select seqName.nextval from dual;   # db2   select seqName.currval from sysibm.dual;   select seqName.nextval from sysibm.dual;      values prevval for seqName;   values nextval for seqName;   13.3 修改序列   # oracle, db2   alter sequence seqName increment by 1 maxvalue 9999     cycle nocache;13.4 删除序列   # oracle, db2   drop sequence seqName;    

?

?

web 部分

1. session   session 产生于用户第一次访问 jsp 页面或者第一次调用 request.getSession()   或 request.getSession(true);   首次访问的页面是静态页面的话不产生 session;   session 存储在服务器上,每个 session 有一个 sessionId 与之对应,   sessionId 存储在客户端的 cookie 中,客户端每次发送请求的时候都会发送相应的 sessionId,如果客户端禁用了 cookie 的话会采用 URL 重写的方式传递 sessionId;2. js 中读取 cookiefunction readCookies(){    var result = "";    var cks = document.cookie.split(";");    for (var i=0; i<cks.length; i++){        result += cks[i] + "\n";    }    alert(result);}

?

?

热点排行