Java数据库包java.sql.*详解(jdk1.6)
1:应用程序不再需要使用 Class.forName() 显式地加载 JDBC 驱动程序。当前使用 Class.forName() 加载 JDBC 驱动程序的现有程序将在不作修改的情况下继续工作。
2:需要注意以下命令:
executeUpdate:是最基础的数据库的更新、插入和删除操作。效率低下。
executeQuery:是最基础的执行查询语句,同样也是效率低下。
execute:兼具上面二者的功能但返回一个boolean型变量
executeBatch:n个SQL语句初始化好,一起提交给数据库执行,效率很高!!!建议使用
3:由2可知,插入操作不能由excuteQuery来执行:
String n=request.getParameter("userName");
String sql=" insert into user value( null,' "+n+" ' ) ";
stmt.execute(sql);
相关文档:
create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列
......
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import com.paic.is.dispatch.TMPEntry;
import javapassword ......
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintWriter;
public class ExceptionDefaultHandler
{
private final static String _relativeExceptionLogPath = "log";
private final static String _defaultExceptionLogFileName = "exception.log";
......
第一部分
单表查询
例一:查询全体学生的学号与姓名
SELECT Sno,Sname
from Student;
例二:查询全体学生的姓名、学号、所在系
SELECT Sname,Sno,Sdept
from Student;
例三:查询全体学生的详细记录
SELECT *
from Student;
等价于:
SELECT *
from Student;
例四:查询全体学生的姓名及其出生年份
......