鱼C论坛

 找回密码
 立即注册
查看: 2892|回复: 2

[已解决]Java数据库连接

[复制链接]
发表于 2017-4-30 16:35:01 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
新手上路,请多关照。

在学习java连接数据库这一部分,在表中添加数据时,总是报错,说表不存在。是代码的问题还是Mysql的问题呢?求大神指点。

代码如下:
import java.awt.Dimension;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.Toolkit;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

import javax.swing.JButton;
import javax.swing.JPanel;

public class Mysql_demo {

        public static void main(String[] args) {
                frame1 A = new frame1();
                A.visibie_frame1();

        }

}

class frame1 extends Frame {
        String url = "jdbc:mysql://localhost:3306/test";// 数据库的url,指明连接到哪一个数据库(此处为test)
        String user = "root";// 数据库用户名
        String passWord = "123456";// 数据库密码

        JPanel A1 = new JPanel();
        JPanel A2 = new JPanel();

        JButton B1 = new JButton("连接数据库");
        JButton B2 = new JButton("增加数据");

        /**
         *
         */
        private static final long serialVersionUID = 1L;

        public void visibie_frame1() {
                setSize(number.b2, number.b1);
                setTitle("数据库小样");
                setResizable(true);
                setVisible(true);
                Toolkit c1 = getToolkit();
                Dimension c2 = c1.getScreenSize();
                int c3 = c2.width;
                int c4 = c2.height;
                setLocation((c3 - number.b1) / 2, (c4 - number.b2) / 2);

                setLayout(new GridLayout(5, 1));
                add(A1);
                add(A2);
                A2.add(B2);
                A1.add(B1);

                addWindowListener(new WindowAdapter() {
                        public void windowClosing(WindowEvent e) {
                                System.exit(0);
                        }
                });

                B1.addMouseListener(new MouseAdapter() {

                        @Override
                        public void mouseClicked(MouseEvent e) {

                                try {
                                        Class.forName("com.mysql.jdbc.Driver");// 加载数据库驱动,不同的数据库驱动语句不同
                                        Connection con1 = DriverManager.getConnection(url, user,
                                                        passWord);// 连接数据库
                                        if (con1 != null) {
                                                System.out.println("数据库连接成功");

                                        }
                                        con1.close();// 关闭数据库连接
                                } catch (ClassNotFoundException | SQLException e1) {
                                        // TODO Auto-generated catch block
                                        e1.printStackTrace();
                                }

                        }

                });

                B2.addMouseListener(new MouseAdapter() {

                        @Override
                        public void mouseClicked(MouseEvent e) {
                                try {
                                        Class.forName("com.mysql.jdbc.Driver");// 加载数据库驱动,不同的数据库驱动语句不同
                                        Connection con2 = DriverManager.getConnection(url, user,
                                                        passWord);// 数据库连接
                                        java.sql.Statement sta2 = con2.createStatement();// 载体,用来向数据库发送增删改除的语句(相当于小车)
                                        // Statement为一个借口,使用方法进行实例化
                                        sta2.execute("insert into tb_student values('tom',123457,'n')");
                                        // 插入语句(套路化):insert into tb_表名 数据(内容,若有一项为空则为null)
                                        con2.close();

                                } catch (ClassNotFoundException e1) {
                                        // TODO Auto-generated catch block
                                        e1.printStackTrace();
                                } catch (SQLException e1) {
                                        // TODO Auto-generated catch block
                                        e1.printStackTrace();
                                }

                        }

                });
        }
}

class number {
        final static int b1 = 400;
        final static int b2 = 400;
}
// try catch语句异常处理语句,用于抛出异常

Mysql

Mysql

错误

错误
最佳答案
2017-4-30 17:52:18
我一直在用 SQL Server 2008,没用过 MySQL

MySQLSyntaxErrorException:MySQL 语法错误异常,表 'tb_student' 不存在

错误应该在 MySQL 上,MySQL 语句

你试下把 tb_student 改为 student
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-4-30 17:52:18 | 显示全部楼层    本楼为最佳答案   
我一直在用 SQL Server 2008,没用过 MySQL

MySQLSyntaxErrorException:MySQL 语法错误异常,表 'tb_student' 不存在

错误应该在 MySQL 上,MySQL 语句

你试下把 tb_student 改为 student
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-30 19:16:37 | 显示全部楼层
零度非安全 发表于 2017-4-30 17:52
我一直在用 SQL Server 2008,没用过 MySQL

MySQLSyntaxErrorException:MySQL 语法错误异常,表 'tb_st ...

感谢大神!可以了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-24 00:07

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表