最近在复习sqlserver,oracle,mysql这三个数据库。综合复习的时候就总结了一下这三个数据库在java程序中的连接和分页的代码,希望拿出来和大家分享,同时也希望能帮助大家
(1)下面是三种数据库的连接代码(这里需要相关的数据库驱动,大家可以去网上下载)
①sqlserver:
1 String Driver="com.microsoft.jdbc.sqlserver.SQLServerDriver"; //连接SQL数据库的方法
2 String URL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_name"; //db_name为数据库名
3 String Username="username"; //用户名
4 String Password="password"; //密码
5 Class.forName(Driver).new Instance(); //加载数据可驱动
Connection con=DriverManager.getConnection(URL,UserName,Password);
2 oracle:
JDBC-ODBC桥连接形势(这中形势只适合于本地操作,不提供远程操作呢):
1 String Driver="sun.jdbc.odbc.JdbcOdbcDriver";
2 String URL="jdbc:odbc:dbsource"; //dbsource为数据源名
3 String Username="username"; //用户名
4 String Password="password"; //密码
5 Class.forName(Driver).newInstance();
Connection con=DriverManager.getConnection(URL,Username,Password);
JDBC形势(也就是thin模式):
1 String Driver="oracle.jdbc.driver.OracleDriver"; //连接数据库的方法
2 String URL="jdbc:oracle:thin:@loaclhost:1521:orcl"; //orcl为数据库的SID
3 String Username="username"; //用户名
4 String Password="password"; //密码
5 Class.forName(Driver).newInstance(); //加载数据库驱动
Connection con=DriverManager.getConnection(URL,Username,Password);
③ mysql:
1 String Driver="com.mysql.jdbc.Driver"; //驱动程序
2 String URL="jdbc:mysql://localhost:3306/db_name"; //连接的URL,db_name为数据库名
3 String Username="username"; //用户名
4 String Password="password"; //密码
5 Class.forName(Driver).new Instance();
Connection con=DriverManager.getConnection(URL,Username,Password);
下面是三种数据库相对应的分页算法代码:
sqlserver:
select top pagenow*pagesize* from 表名 where id not in(select top pagesize*(pagenow -1) id from 表名 order by 列名)order by 列名
oracle:
select * from (select t1.*,rownum rn from(select * from 表名) t1 where rownum<=10)where rn>=6:这表示显示的是第六到第十页的数据
mysql:
select * from 表名where 条件 limit 3,4;3代表从第几条起(编号从0开始的)。4代表取出几条
上述三种分页的算法是分页算法中的之一,当然也有别的,大家见仁见智参考吧,