`
xwz_adolf
  • 浏览: 43772 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

更换数据库对JAVA程序影响的几大要素

阅读更多
表:
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| deptno | int(11)     | NO   | PRI |         |       |
| dname  | varchar(14) | YES  |     | NULL    |       |
| loc    | varchar(13) | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
+--------+-------+------+
| deptno | dname | loc  |
+--------+-------+------+
|     10 | a     | b    |
|     20 | b     | b    |
|     30 | c     | c    |
|     40 | d     | d    |
|     50 | e     | e    |
+--------+-------+------+
数据库与数据库之间影响程序的几大要素:(所有例子根据上面的dept表)
1.字段的类型不同
[size=small; color: #ff0000]2.分页代码的sql语句的不同[/size]
   mysql:用limit关键字 eg:
select * from dept order by deptno desc limit 3, 2;

在java程序中一般设:
3---------->每页显示的个数 * (你所选择的第几页  - 1)
2---------->每页显示的个数
oracle:用rownum关键字 eg:
 
select * from 
(
    select d.*,rownum rownum_   from
    (
        select * from dept order by deptno desc
    )d   where rownum <= 2
)  where rownum_ >= 1;

在java程序中一般设:
2---------->获取当前显示页面最后一条记录的位置
          (每页显示的个数 *  你选择的当前页数)
1---------->获取当前显示页面第一条记录的位置
         (每页显示的个数 *  (你选择的当前页数 - 1) + 1)
sqlserver:用top关键字  eg:
select top 2 deptno ,dname from dept
where id not in
(
  select top 4 deptno from dept 
)

在java程序中一般设
2--------->每页显示的个数
4--------->每页显示的个数 * 你选择的第几页

[size=small; color: #ff0000] 3.数据自动递增字段[/size]
mysql:auto_increment
oracle:建立自动增长的序列,在从序列获取

[size=small; color: #ff0000] 4.取当前时间[/size]
mysql:
获取系统时间:select now();
日期转换:select date_format(now(), '%Y-%m-%d  %H:%i:%s')

oarcle:
获取系统时间:select sysdate from dual;
日期转换字符串:select to_char(date, 'yyyy-mm-dd')
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics