问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java与数据库连接的问题

发布网友 发布时间:2022-04-09 07:05

我来回答

7个回答

热心网友 时间:2022-04-09 08:34

给你一个我的例子:这是连接数据库的类:
package mypackage;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.JOptionPane;
public class ConnectionData {
Connection myCon;
Statement myStatement;
public ConnectionData() {
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
System.out.println("成功加载驱动");
}catch(ClassNotFoundException e1){
e1.printStackTrace();
JOptionPane.showMessageDialog(null,"加载数据库驱动失败!","提示",JOptionPane.YES_OPTION );
}
try{
myCon=DriverManager.getConnection("jdbc:odbc:MyPhoneDataSource");
myStatement=myCon.createStatement();
System.out.println("成功连接数据源");
}catch(SQLException sqe){
JOptionPane.showMessageDialog(null,"连接数据源失败!","提示",JOptionPane.YES_OPTION );
sqe.printStackTrace();
}
}
public int UpdateData(String sql){
int result = 0;
try {
result=myStatement.executeUpdate(sql);
}catch (SQLException e) {
JOptionPane.showMessageDialog(null,"sql语句执行失败!","错误提示",JOptionPane.ERROR_MESSAGE);
e.printStackTrace();
}
return result;
}
public ResultSet QueryData(String sql){
ResultSet result = null;
try {

result=myStatement.executeQuery(sql);
}catch(SQLException e) {
JOptionPane.showMessageDialog(null,"sql语句执行失败!","错误提示",JOptionPane.ERROR_MESSAGE);
e.printStackTrace();
}
return result;
}
public void closeData()
{
try {
myStatement.close();
myCon.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
这是用户注册的类,里面有插入语句:
package mypackage;
import javax.swing.*;

import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.ResultSet;
import java.sql.SQLException;
public class UserLogin extends JDialog implements ActionListener{
private static final long serialVersionUID = 1L;
JLabel label1,label2;
JTextField textfield1,textfield2;
JButton button1,button2;
int myResultSet1=0;
ResultSet result;
public UserLogin(){
setTitle("用户注册");
this.setLayout(null);
label1=new JLabel("请输入用户名");
label1.setBounds(20,5,180,20);
textfield1=new JTextField(30);
textfield1.setBounds(110,5,100,25);
textfield1.addActionListener(this);

label2=new JLabel("请输入密码");
label2.setBounds(20,40,80,20);
textfield2=new JTextField(30);
textfield2.setBounds(110,40,100,25);
textfield2.addActionListener(this);

button1=new JButton("确定");
button1.setBounds(40,80,80,30);
button1.addActionListener(this);

button2=new JButton("取消");
button2.setBounds(130,80,80,30);
button2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
dispose();
}
});

add(label1);
add(textfield1);
add(label2);
add(textfield2);
add(button1);
add(button2);

this.getContentPane().setBackground(Color.cyan);
this.setModal(true);
this.setLocation(440,280);
this.setSize(260,180);
this.setVisible(true);

}

public void actionPerformed(ActionEvent arg0) {
String inusername,inpassword;
inusername=textfield1.getText();
inpassword=textfield2.getText();
String sqllogin="insert into usertable values ('"+inusername+"','"+inpassword+"')";
String sqlfind="select * from usertable where username='"+inusername+"'";

if(inusername.equals(""))
{
JOptionPane.showMessageDialog(null,"用户名为空,请重新输入","提示", JOptionPane.WARNING_MESSAGE) ;
}
else if(inpassword.equals(""))
{
JOptionPane.showMessageDialog(null,"密码为空,请重新输入","提示", JOptionPane.WARNING_MESSAGE);

}
else{
ConnectionData object=new ConnectionData(); //建立连接
result=object.QueryData(sqlfind);
try {
if(result.next()){
JOptionPane.showMessageDialog(null,"用户名已存在,请重新输入","提示", JOptionPane.WARNING_MESSAGE);
textfield1.setText("");
textfield2.setText("");
}
else{
myResultSet1=object.UpdateData(sqllogin);
if(myResultSet1!=0){
JOptionPane.showMessageDialog(null,"用户注册成功!","提示",JOptionPane.INFORMATION_MESSAGE);
dispose();

}
}
} catch (SQLException e) {
e.printStackTrace();
}
object.closeData(); //断开连接

}
}
}

插入语句是:String sqllogin="insert into usertable values ('"+inusername+"','"+inpassword+"')";
这个例子连接的是ACCESS数据库,希望能帮上你的忙。

热心网友 时间:2022-04-09 09:52

这种问题我也碰见过,当然如果是你sql语句写错了,那就不要怪我们了。那说说我的情况

我要插入数据的表,有关联这张表的外键,当你仅仅插入这个表中的时候,而关联这张表的外键所在的表没有相应数据的话,就会报错。

有什么具体问题就加534867553吧,我现在刚好下班,大约将近一个小时到家。

参考资料:如果您的回答是从其他地方引用,请表明出处

热心网友 时间:2022-04-09 11:27

private static Connection connection = null;
public static synchronized Connection getConnection() {
if (connection == null) {
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

connection = DriverManager.getConnection("jdbc:sqlserver://MYSERVER;databaseName=MYDATABASE",
"USERID", "PASSWORD");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
return connection;
}

这就是一个简单的得到数据库连接代码;

插入数据报错??将错误的信息发在这上面...

有问题就用百度Hi 找我

热心网友 时间:2022-04-09 13:18

连的什么数据库?
ms sql?或是
mysql?

写入可能问题
1 java的代码出错,根本没执行写入的代码
2 数据库写入脏数据等,被回滚数据

建议用try catch 捕捉异常

楼主多半是调试不熟悉

热心网友 时间:2022-04-09 15:26

说清楚点啊

热心网友 时间:2022-04-09 17:51

你的sql语句是怎么写的,帖上来看看.
再仔细检查和数据库的连接,以及你的数据库表.

热心网友 时间:2022-04-09 20:32

错误提示是什么,弄出来看看。
java应用调用数据库超时,数据库自己sql很正常

3、添加缓存机制,把数据库中常用的数据存放到缓存服务器中,以减少对数据库的访问;4、增加数据库资源,对数据库增加硬件资源,提升数据库处理能力。此外,可以通过监控数据库超时情况,了解系统的负载情况,定期对数据库及Java应用程序进行调优和升级,以解决数据库超时问题。

java连接数据库问题

检查一下sql server的connection有没有full.如果是认证的问题.可到sql enterprice manager->指定server->内容->安全性.把验证改为 SQL server 及 windows.点选属性检查一下port是否正确.执行%MSSQL_HOME%\80\Tools\Binn\SVRNETCN.exe 把TCP/IP启用.关掉防火墙.把SQL server update到sp3:http://www...

怎么使用JAVA连接数据库?

1、首先我们先建好数据库,然后建立好程序的目录,因为是适用于初学者的,所以就建立一个简单的java project,如图。2、进行数据库的连接编码,首先要声明这三个必要的属性url,user,password即标识数据的东西,也就是说怎么才能让程序找到你所要连接的数据库的标识。不同的数据库所用的jdbc协议不一样...

java如何连接数据库?

1、首先第一步就是在网上下载一个mysql的数据库驱动jar包,类似mysql-connector-java-5.1.20-bin.jar。新建一个JAVA项目,在项目下面创建一个lib文件夹,将驱动jar文件拷贝到lib文件夹中。2、光是拷贝到这里还不够,需要将该JAR包加入到项目的buildpath变量中。鼠标右边-》buildpath->configurebuildpath...

java连接数据库出现问题

连接被拒绝。SQL server服务器不允许你访问。检查下SQL server服务器的防火墙和ip筛选。看看端口开了没有,是否允许你所在网段访问。

java 程序连接数据库不稳定是怎么回事???

仅仅8个用户的登陆,还不足以让SQL SERVER不稳定。可能是由于服务器上的数据库安装的有问题或者是你的代码有问题导致的。检查一下吧,毕竟,单机环境和网络环境要考虑的东西是不一样的。

JAVA连接数据库问题

con.setTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITTED);//最底级别:只保证不会读到非法数据,上述3个问题有可能发生 con.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED); //默认级别:可以防止脏读 con.setTransactionIsolation(Connection.TRANSACTION_REPEATABLE_READ);//可以防止...

关于java连接数据库的问题

可能存在的问题如下:1、java 驱动包问题,换一个驱动包试试 2、还有一种解决办法你看错误返回代码是多少,根据错误代码解决。

java项目连不上mySQL

JDBC连接数据库 •创建一个以JDBC连接数据库的程序,包含7个步骤:1、加载JDBC驱动程序:在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机),这通过java.lang.Class类的静态方法forName(String className)实现。例如:try{ //加载MySql的驱动类 Class.forName("com.mysql....

JAVA JDBC连接DB2数据库问题

在执行 JDBC 应用程序期间,驱动程序将针对当前连接的 DB2 数据库服务器验证 SQL 语句。访问期间的任何问题都会作为 Java 异常与相应的 SQLSTATE 和 SQLCODE 一起报告给应用程序。SQLJ:SQLJ 是一个用于从 Java 应用程序进行数据访问的标准开发模型。SQLJ API 是在 SQL 1999 规范中定义的。新的通用 ...

java连接数据库的步骤 java连接数据库的代码 javajdbc连接数据库 怎么用java连接数据库 javaweb怎么连接数据库 javaweb连接数据库 java连接数据库详细步骤 java连接sql数据库 java连接mysql数据库
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
猫咬人怎么教育 猫咬人怎么办 幼猫喜欢抓人咬人怎么办 WX是Weather的缩写,那它在航空领域中的应用是什么? 鱼卵出来的鱼怎么养乍 幼鱼的开口料什么最好,吃水草可以么? 广州到济南顺丰快递多久啊 帮我看下顺丰快递今天能送到吗?从广州到济南。。 顺丰从广州发的到济南,现在在潍坊了,今天还有希望到吗,或者明天上午能... QQ,账号密保手机被改? 2023年7月1日到2024年4月17日总多少天 北京宅急送快运股份有限公司电话是多少? 新浪微博为什么会出现可疑登陆 登录提醒:您的微博帐号于03月18日14时25分在Mozilla-Mac OS X上登录了新浪。如 北京中铁快运有限公司怎么样? 车子报警请检查刹车灯是什么意思? 半夜车子无缘无故报警是怎么回事? 人防电气密闭套管安装高度是多少? 临空墙防护密闭封堵板怎么安装 室内落地窗护栏如何安装 安装防护栏有什么作用 防护网是装修前安装好,还是装修后安装好 防护栏的安装与小区物业到底是什么关系啊? 切开的苹果在空气中会氧化变成褐色用盐水和糖水涂在苹果表面能不能减缓,为什么? 求80年代,90年代和21世纪10年代孩子玩的游戏 请问有哪些游戏或者说是玩具是80、90小时候玩的而现在可能渐渐看不到孩子玩的? 哪位80后到90年代末出生的朋友能帮忙收集一下童年的记忆,比如丢手绢,跳格子,玩弹珠…… 泗洪四河乡90年代学生玩什么游戏 使用玉米加工机械完成后怎样清洁 80后男孩玩的游戏有哪些 90年代农村小孩玩的哪些? 北京中铁快运有限公司的北京中铁快运有限公司 北京马来快运货运有限公司怎么样? 微博登录异常需要登陆网页解除异常怎么办 北京百世快运货运代理有限公司怎么样? 北京宅急送快运股份有限公司天津分公司怎么样? 微博最近每次登入都得输入密码 下次自动登入已打钩 能说明是别人在别的电脑上登陆了我的微博 带河的诗句 河的诗句有哪些 北京美洲豹快运有限公司怎么样? macbookair上登陆过微博但是已经退出了怎么电脑还可以接受消息 北京物行天下快运有限公司怎么样? 含有“河”字的古诗词有哪些? 北京中铁快运有限公司赤峰分公司怎么样? 北京中铁快运有限公司昌平分公司怎么样? 梦到和爸爸妈妈还有其他人在外面玩,妈妈把她的钱放我书包里,结果钱被偷了然后爸爸的钱也被偷了。解梦? 写出一句与“河“江”有关的古诗句? 带有江河字的诗句? 有"海""河"的古代名言诗句有哪些?谢谢! 有没有关于保护河流的诗词都行 多一些,但不要太多 梦见我的钱包和现金被偷了,连卡上的钱都被取了。不过现金是放在包里不同的地方。所以被偷了一部分,