本文章仅供个人备份,有需要的朋友也可以用。但是,无注解和说明。不推荐新手用于研习!

sql

服务挂起的问题的解决:

关于:以前的某个程序安装已在安装计算机上创建挂起的文件操作 解决办法

以前装过sql

server,后来删掉。现在重装,却出现“以前的某个程序安装已在安装计算机上创建挂起的文件操作。运行安装程序之前必须重新启动计算机”错误。无法进行下去。

步骤是:

1)添加/删除程序中彻底删除sql server。

2)将没有删除的sql server目录也删除掉。

3)打开注册表编辑器,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session

Manager中找到PendingFileRenameOperations项目,并删除它。这样就可以清除安装暂挂项目。

4)删除注册表中跟sql server相关的键。

其实估计只要做第3步就可以搞定,这样就可以清除安装暂挂项目。自己是先走了1,2,4,最后做了3才搞定。所以估计3才是最关键的

保证SQL2000正常工作的顺序和Java代码:

1、安装SQL2000、sp3补丁包、设置用户、权限、安全(高级)。

2、加载一个Java关于SQL2000的类库,可以实现直接调用。程序打包的时候也不要忘记打进去。

3、Java开发数据库的时候,使用下列代码:(用于C/S架构,远程调用数据库)

实现了所有数据库功能,其中DBUpdata()根据不同的SQL语句可以实现插入、删除、添加、修改等操作。其中关键是语句:

rs = stmt.executeQuery(sql);

完全代码如下:

import java.sql.DriverManager;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Vector;
import java.rmi.RemoteException;
import java.sql.Connection;
public class ConnectDB {
String
sDBDriver =
"com.microsoft.sqlserver.jdbc.SQLServerDriver"; String sConnStr =
"jdbc:sqlserver://"+IP地址+":"+端口号+";databaseName="+数据库名称;
Connection conn = null;
ResultSet rs
= null;
Statement
stmt = null;
private
static boolean flag=true;
public
ConnectDB(){
try {
Class.forName(sDBDriver);
}
catch (ClassNotFoundException e) {
System.out.println(e.toString());
}
try {
conn = DriverManager.getConnection(sConnStr,用户名,密码);
stmt = conn.createStatement();
}
catch (SQLException ex) {
System.out.println(ex.toString());
}
}
public
Vector getData(String sql) throws RemoteException {
Vector rrs = new Vector();
try {
rs = stmt.executeQuery(sql);
int c = rs.getMetaData().getColumnCount();
while (rs.next()) {
Vector v = new Vector(c);
for (int i = 0; i < c; i++)
v.add(rs.getObject(i + 1));
rrs.add(v);
}
}
catch (SQLException ex) {
System.out.println(ex.toString());
}
return rrs;
}
public
int getNum(String sql) throws RemoteException {
int i = 0;
try {
rs = stmt.executeQuery(sql);
int c = rs.getMetaData().getColumnCount();
while (rs.next()) {
i++;
}
}
catch (SQLException ex) {
System.out.println(ex.toString());
}
return i;
}
public
int DBUpdate(String sql) throws RemoteException {
int rs = 0;
try {
rs = stmt.executeUpdate(sql);
}
catch (SQLException ex) {
System.out.println(ex.toString());
}
return rs;
}
public
Connection getConnection(){
return this.conn;
}
public
Statement getStatement(){
return this.stmt;
}
public
void SQLOver() {
try {
rs.close();
stmt.close();
conn.close();
} catch (SQLException ex) {
System.out.println(ex.toString());
}
this.flag=true;
}
public ConnectDB getInstance(){
if(flag){
this.flag=false;
return new ConnectDB();
}
return null;
}
}

4、使用该代码和Java通过可视化界面拖拽的自动生成的代码可同时使用,但不推荐。

访问其他数据库的方法:

1、通过JDBC:ODBC的桥接,在控制面板里面设置——数据源里面设置。

2、根据不同的数据库,修改红色的代码部分,就能够完成。

程序打包、运行问题:

编写.bat法:

1、给目标机器安装JDK

1.4.2以上版本,或者干脆将JDK打包于要发布的程序包内。程序包内要包括所有用到的.class文件,按层次结构来放置。还有其他所有用到的图片、外调类库、音频、视频等等东东,也按照层次结构放置好

2、编写.bat文件,格式如下:

@echo off

C:

cd\jdk路径\bin

javaw -classpath "环境变量:程序调试中出现的、用到的都放进去"

包名.包含Main方法的类名

cd\

3、保存成.bat格式的文件即可。以后运行程序,就双击.bat文件,这个文件放在什么地方都可以,类似.exe文件的效果,不过每次都要调用javaw.exe

来打开,而不是真正独立的.exe。