/管理员信息插入/
?
create procedure sp_Insert_Admin @AdmName Varchar(25), @AdmPWD Varchar(25), @LoginIP Varchar(25), @LoginLog Varchar(100), @LogTime time as begin insert into Tab_Admin(AdmName,AdmPWD,LoginIP,LoginLog,LogTime) values (@AdmName,@AdmPWD,@LoginIP,@LoginLog,@LogTime) end GO
/系统信息查询/
?
create procedure sp_Select_Sys @Sysid int as begin select * from Tab_System where @sysid=sysid end GO
/系统信息插入/
create procedure sp_Insert_System @LoginIP Varchar(25), @SysTime Time, @SysLog Varchar(100), @IsAdmin Int, @Property Varchar(25) as begin insert into Tab_System(LoginIP,SysTime,SysLog,IsAdmin,Property) values (@LoginIP,@SysTime,@SysLog,@IsAdmin,@Property) end GO
import java .sql.*;
public class sql {
public static void main(String[] args) {
try {
String address = “jdbc:microsoft:sqlserver://localhost:1433”;
//驱动类型+目标数据库ip+数据库端口
String user=”sa”;//数据库用户密码
String passwd=”“;//口令
String database = “pubs”;//目标数据库
Class.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver”).newInstance();//驱动申明
Connection con = DriverManager.getConnection(address,user,passwd);//建立链接
con.setCatalog(database);//确定目标数据库
Statement smt =
con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
//建立描述,设定结果集支持滚动光标且敏感,不可编辑
String selCode = “SELECT test1,test2 FROM test”;//查询语句
ResultSet rs = smt.executeQuery(selCode);//结果集
if(rs.last()) {//从第一条往后依次取结果集中的记录
String userId = rs.getString(1);//等同rs.getString(“userId”),即第一个字段数据
String userName = rs.getString(2);//同上,第二个字段,全部取其为String类型
//若是中文字段,一般需要转码
//userName = new String(userName.getBytes(“ISO-8859-1”),”gb2312”);
System.out.println(userId+”:”+userName);//输出此条记录的查询结果
}
rs.close();//释放资源
smt.close();
con.close();
}
catch(Exception e) {
System.out.println(e);//捕捉异常
}
}
}
2) 执行SQL语句和存储过程
具体我想写一个操作基本数据库的包,请准备开发中间件组的同学是否可以给出所需基本函数?因为时间关系,我没考虑好具体写哪些操作过程,如果上面存储过程和数据库修改的话,我会给出新的数据库和存储过程。具体的基本数据库操作包还是需要的,大家先看看,然后给我答复。
5、 存在的问题
1) 上面的SQL语句直接执行,然后就可以建立一个基本的数据库了,然后执行PL/SQL就可以建立所有的存储过程了,执行存储过程是
Exec 存储过程名字 [参数],…..
2) 这样设计的数据库是空数据库,大家随便写一些信息就行了
3) 数据库中的Property是说,有些数据是什么我还没想清楚,但是一定会拓展的。
4) 大家会发现数据库中没有约束性要求,是因为我们需要简单的测试,如果添加太多约束,会导致系统不稳定和提高开发的复杂性。
5) 代码的大小写没有关系,MS SQL大小写都可以,我只是按照我自己的写法写的大小写,如有个别差错,可以正常使用。
6) 代码我在MS SQL2008上测试过,可以使用!