1.用中文字段名要看数据库是否支持?(但我还是不支持你这种做法,中文字段名缺乏兼容性)2.在java中操作数据库建议你还是用JDBC直接连接,不推荐JDBC-ODBC桥(效率下降)JDBC-ODBC例子:
....
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection(your_Db_Url);
.....
....
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection(your_Db_Url);
.....
解决方案 »
- 朋友进来帮忙看看谢谢!让用*画一个圆,我画出来的为啥是椭圆
- 请问这个equals方法为什么需要做这么多次判断?
- 怎样使jComboBox不可用,但内容不变灰
- 关于Object嵌套的取法【菜鸟上路】
- 请问如何将从数据库查询到的结果集,中的数据存放到读到GUI中~~
- 在文本域中字如何保留下来
- 为什么ThreadLocal 有时可能get()得到对象的值有时可以有时不行
- 用jstl使用数据库,怎么在/WEB-INF/web.xml中设置context paramter(datasourse),使它连上ms sql server?
- Eclipse or SWT有没有像DatePicker这样的Dialog?
- 学JAVA也有几个月了,后面应该怎么继续提升呢。。
- iPlanet Directory Server和iPlanet Web Server性能、价格各几何?
- 使用jar.exe打包时,路径中不能有空格
我要用jdbc或jdbc-odbc这么用,关键的地方说说就行,谢谢!
2。 public void connectToDB() //连接数据库
{ String url="jdbc:odbc:yourDBName";
try
{ try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(Exception e)
{
}
conn=DriverManager.getConnection(url,"userName","password");
}
catch(Exception e)
{ }
}
//userName为登录数据库时的用户名,password为用户密码
conn=null;
stmt=null;
strCon="jdbc:odbc:webdb";
// String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";
//pubs为你的数据库的 try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//也可这样表示:Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance() ;
//newInstance 应用
/**
* 1。是有来生成该类的一个实例,Class class = Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Object obj = class.newInstance();当然在该例中,不要Object obj = class.newInstance();也是正确的,因为
你用Connection conn= DriverManager.getConnection(url,user,password); 连接数据源,它会根据你加载的驱动程序类也就是
在com.microsoft.jdbc.sqlserver.SQLServerDriver自动连接数据源的!
* 2。
这可以动态的生成类对象,例如,你可以动态的配置类名,然后根据类名构造对象,只能通过该方法,因为你程序中不知道是那个类,所以不能new了。
Class class = Class.forName("com.xxx.xxx");
Object obj = class.newInstance();
就可以得到对象实例了。
/////////////////////////////////////////////////////////////
简单的sqlserver示例:
import java.sql.*;
public class Test {
public static void main(String[] args) {
try {
String address = "jdbc:microsoft:sqlserver://192.168.0.24:1433";//本机ip
String user="sa";//数据库用户密码
String passwd="";//口令
String database = "TESTDB";//目标数据库
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");//申明
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 * FROM UserLog";
ResultSet r = smt.executeQuery(selCode);
int i =0;
if(r.last()) {//取结果集结果数目
i = r.getRow();
}
System.out.println(i);
}
catch(Exception e) {
System.out.println(e);//捕捉异常
}
}
} //*/
}
catch(Exception ex){
System.out.println("没有找到jdbc-odbc数据库驱动程序");
}
}
public void opendb(){
try{
conn=DriverManager.getConnection(strCon,"sa","password");
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE ,ResultSet.CONCUR_READ_ONLY );
}
catch(SQLException ex){
System.err.println("aq.executequery:"+ex.getMessage() );
}
}
public void closedb(){
try{
stmt.close() ;
conn.close();
}
catch(SQLException ex){
System.err.println("aq.executeQuery:"+ex.getMessage() );
}
}
/**执行数据库查询
*@param sql 查询数据库的select语句
*/
public ResultSet executequery(String sql){
ResultSet rs=null;
try{
rs=stmt.executeQuery(sql);
}
catch(SQLException ex){
System.err.println("aq.executequery:"+ex.getMessage() );
}
return rs;
}/**
* 执行数据库insert,update...
* @param sql 查询数据库的select
*/
public int executeupdate(String sql)
{
int ret=0;
try{
ret=stmt.executeUpdate(sql);
System.out.println("操作成功");
}
catch(SQLException ex){
System.err.println("aq.executequery:"+ex.getMessage());
}
return ret;
}
参考一下吧!别忘了加分哦!