java中 总是提示找不到mysql数据库的表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中 总是提示找不到mysql数据库的表相关的知识,希望对你有一定的参考价值。

这个表肯定是有的,但是控制台总是提示
Table 'db_database11.tb_books' doesn't exist
请大侠帮忙看看,这是怎么回事啊?

<body>
<jsp:useBean id="book" class="com.mqh.javabean.Book" ></jsp:useBean>
<jsp:setProperty property="*" name="book"/>

<%
try
Class.forName("com.mysql.jdbc.Driver");
String url="jdbc:mysql://localhost:3306/db_database11";
String username="root";
String password="";
Connection conn=DriverManager.getConnection(url,username,password);
String sql="insert into tb_books(name,price,bookCount,author)values(?,?,?,?)";
PreparedStatement ps=conn.prepareStatement(sql);
ps.setString(1,book.getName());
ps.setDouble(2,book.getPrice());
ps.setInt(3,book.getBookCount());
ps.setString(4,book.getAuthor());
out.print(sql);
int row=ps.executeUpdate();
if(row>0)

out.println("成功添加了"+row+"条数据!");


ps.close();
conn.close();

catch(Exception e)
out.println("图书信息添加失败!");
e.printStackTrace();


%>
<br/>
<a href="shou.jsp" >返回</a>

</body>

参考技术A Class.forName("org.gjt.mm.mysql.Driver").newInstance();
Connection con=java.sql.DriverManager.getConnection("jdbc:mysql://127.0.0.1/db_database11","root","");
Statement stmt=con.createStatement();

String sql="insert into tb_books(name,price,bookCount,author) values(?,?,?,?)";
PreparedStatement ps=con.prepareStatement(sql);

ps.setString(1,book.getName());
ps.setDouble(2,book.getPrice());
ps.setInt(3,book.getBookCount());
ps.setString(4,book.getAuthor());

int row=ps.executeUpdate();
if(row>0)

out.println("成功添加了"+row+"条数据!");


ps.close();
con.close();追问

换成这个也不行的!!

追答

我用上面的代码是没有错误的。
先测试是否能连接到MYSQL,然后再测试下面的预处理语句。

参考技术B 你把localhost改为本机ip试试,,追问

还是不行,提示错误
Communications link failure
Last packet sent to the server was 0 ms ago.

追答

我也不太清楚,我也刚学,,看看联网Intenet权限是不是加了 等等,,

mac 下 使用 java运行 class 文件 总是提示 “错误: 找不到或无法加载主类”的解决方法

发现问题

切换到mac平台后,突然想写点程序运行在mac下,想到mac自带java,会方便好多。不过在这过程中遇到了麻烦:

  总是提示 “错误: 找不到或无法加载主类

工程结构

查了好久,终于找到原型所在,发现网上很多资料都写的都不太多,自己记录一下。先看看工程的位置和目录。

我的eclipse 工作空间位置是: /Users/zhangyunfei/workspace_java

我的工程名字叫:hellodemo

我的main class 的package name (包名)为: hellodemo.zhangyf , 完整类名是: hellodemo.zhangyf.MainClass

那么工程的 主路径就是: /Users/zhangyunfei/workspace_java/hellodemo,结构如下:

  hellodemo

      bin

        hellodemo

          zhangyf

            MainClass.class

      src

        hellodemo

          zhangyf

            MainClass.java

            

其中bin  是eclipse自动生成的 输出文件,eclipse会将java文件编辑成 *.class文件。这个 *.class文件才是可以运行的。

 

相对路径执行方式

cd /Users/zhangyunfei/workspace_java/hellodemo
java -cp bin hellodemo.zhangyf.MainClass

  注释: 这里先进入 项目的跟路径 ,然后使用相对路径 bin 来执行。

绝对路径执行方式

在我的这个项目结构下,执行这个class的 命令是,你可以在 bash(命令提示窗口)中输入下面的指令来执行它:

java -cp /Users/zhangyunfei/workspace_java/hellodemo/bin hellodemo.zhangyf.MainClass

 

其中 java 是执行java class的执行指令,-cp 表示 class path,即class的路径,后面跟着实际的路径,注意,是 “class 所在的跟路径”,即 bin 目录所在的路径。再后面要跟上 class的全名称。

 

 

感谢

参考:http://bbs.csdn.net/topics/390813742

以上是关于java中 总是提示找不到mysql数据库的表的主要内容,如果未能解决你的问题,请参考以下文章

转终于知道为什么我的mysql总是卸载的不干净以及老是找不到my.ini文件

java集合的一个程序,总是提示找不到符号,找不到原因在哪?求大神帮助!

关于财富测试后台数据库表大小写敏感报错,提示找不到表

mac 下 使用 java运行 class 文件 总是提示 “错误: 找不到或无法加载主类”的解决方法

Java做数据库连接池的时候加载oracle的JDBC驱动时总是提示找不到驱动类

linux中mysql表名默认区分大小写导致表找不到的问题