java 连接数据库 不能执行sql语句
我的系统是64位win7,安装sql2005,但是用eclipse连接sql时是可以连接的(用测试代码成功连接了的),但是就是不能执行对数据库操作的语句,也没有报错,在执...
我的系统是64位win7,安装sql 2005,但是用eclipse连接sql时是可以连接的(用测试代码成功连接了的),但是就是不能执行对数据库操作的语句,也没有报错,在执行那句就卡在了,sql语句在查询分析里可以执行。就是不能用java语句执行
/**
*
*
*
*
*/
package com.text2;
import java.sql.*;
public class Text2 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//定义对象
Connection ct=null;
ResultSet rs=null;
PreparedStatement ps=null;
try {
//加载驱动,固定写法
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
//连接
ct=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=lianxi;User=sa;Password=123451");
//插入数据
String sql="insert into dept values(60,'保安部','北京')";
ps = ct.prepareStatement(sql);
System.out.println("er");
ps.executeUpdate();
// if(i==1)
// {
// ;
//
// }
// else
// {
// System.out.println("er");
// }
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally
{
try {
//为了程序更健壮
if(ps!=null)
{
ps.close();
}
if(ct!=null)
{
ct.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
就是在插入数据后的ps = ct.prepareStatement(sql);
的不能执行,没有报错出现就是一直是运行状态 展开
/**
*
*
*
*
*/
package com.text2;
import java.sql.*;
public class Text2 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//定义对象
Connection ct=null;
ResultSet rs=null;
PreparedStatement ps=null;
try {
//加载驱动,固定写法
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
//连接
ct=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=lianxi;User=sa;Password=123451");
//插入数据
String sql="insert into dept values(60,'保安部','北京')";
ps = ct.prepareStatement(sql);
System.out.println("er");
ps.executeUpdate();
// if(i==1)
// {
// ;
//
// }
// else
// {
// System.out.println("er");
// }
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally
{
try {
//为了程序更健壮
if(ps!=null)
{
ps.close();
}
if(ct!=null)
{
ct.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
就是在插入数据后的ps = ct.prepareStatement(sql);
的不能执行,没有报错出现就是一直是运行状态 展开
2个回答
展开全部
dept 是不是死锁了? 查下看看。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sqlserver 服务 开了嘛?
执行没有响应有报错吗?能截个图看下嘛?
你是指 控制台 停止按钮一直是红色的 一直在运行中?
你是不是打断点了?
如果是运行后没效果,那就是你的connection没有commit。
初步看来是没有什么问题的。
执行没有响应有报错吗?能截个图看下嘛?
你是指 控制台 停止按钮一直是红色的 一直在运行中?
你是不是打断点了?
如果是运行后没效果,那就是你的connection没有commit。
初步看来是没有什么问题的。
更多追问追答
追问
控制台一直是红的,一直在运行中
用输出语句定位定位在这句
ps = ct.prepareStatement(sql);
没有执行,没有报错出现
没有断点,应该是运行后没效
如果加载的包有问题,会不会出现这种情况呢?
追答
如果包有问题class.forName就会有问题,getConnetcion也会有问题,
你试下,查询,看行不行?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询