草庐IT

logstash-input-jdbc

全部标签

java - JDBC如何映射java.sql.types类中MySQL中不存在的SQL类型?

在java.sql.types类中,有一些类型很容易映射到MySQL类型。例如,java.sql.types类中的VARCHAR映射到MySQL中的VARCHAR。但是,当MySQL中不存在类似类型时,我不确定如何将java.sql.types类中的类型(例如JAVA_OBJECT)映射到MySQL中的类型。在这种情况下,JDBC会做什么? 最佳答案 如果JDBC驱动程序不支持您尝试使用的类型-它会尝试将其映射到支持的最接近的数据类型。如果它不能做到这一点-SQLException被抛出。JDBC只是一个用于处理数据库的接口(int

sql - 数据库不可知的 jdbc 表导入/导出到文件?

是否有可能进行与数据库无关的表转储/水合物?我没有任何复杂的约束。我也会接受特定于数据库的方式,但越纯的jdbc越好(我不想求助于impdp/expdp)。 最佳答案 看看DBUnit.DBUnit支持导出到xml文件,以及从xml文件导入。他们的faq有一些关于如何快速导出/导入的建议,请务必查看。 关于sql-数据库不可知的jdbc表导入/导出到文件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co

java - JDBC-c3p0- hibernate -setAutocommit,有人可以帮我澄清一下吗

我的提问的基本根源来自于这种观察。当我使用Hibernate并进行任何查询时,我在MySQL日志中得到以下内容:SETautocommit=0insertintoSimpleNamedEntity(name,version)values(null,0)commitSETautocommit=1现在,我进行了一些研究(下面的参考文献会添加更多的内容,但看起来似乎不够好:-)),这似乎是一个相当经典的问题。我对各种级别的体系结构(mysql配置,jdbc,连接池,休眠)进行了许多测试,以更好地了解事物的工作方式,结果我变得更加困惑,所以这里有几个问题:有人可以确认自动提交是否对性能产生负面

mysql - 在 Web 应用程序中通过 JDBC 连接到数据库时,何时需要 Class.forName?

根据thistutorial,对于JDBC4.0+驱动程序,不再需要调用Class.forName。对于使用MySQL的独立程序,我成功地遵循了示例中的方法(仅调用DriverManager.getConnection),但是当我尝试从属于在Tomcat7上运行的Web应用程序无法运行;相反,我得到了一个Nosuitabledriverfound异常。mysql-connector-java-5.1.18-bin.jar文件在tomcat\webapps\DatabaseProject\WEB-INF\lib中,我检查了三次,但它没有用,所以我开始尝试。我添加了对Class.forNa

java - JDBC 在同一台服务器上连接两个 MySQL 数据库?

基本上我需要通过jdbc运行以下查询。两个数据库都是MySQL,并且在同一台服务器上。SELECT*FROMDB1.ACCOUNTaJOINDB2.ITEMiONa.AccountID=i.AccountID我的jdbc连接是这样设置的:Class.forName("com.mysql.jdbc.Driver").newInstance();DB1=DriverManager.getConnection("jdbc:mysql://serverloc.com:3300/DB1","username","password");DB2=DriverManager.getConnection

java - MySQL JDBC 插件加载

我在初始化MySQLJDBC连接的代码中看到过很多这种类型的代码。Class.forName("com.mysql.jdbc.Driver");conn=DriverManager.getConnection("jdbc:mysql://10.0.0.2:3306","username","password");现在我的问题是为什么/什么时候需要第一行?通过这个,我已经能够毫无问题地连接到MySQL数据库:conn=DriverManager.getConnection("jdbc:mysql://10.0.0.2:3306","username","password");我正在使用J

MySQL Trigger 语法错误 unexpected end of input

这是我正在使用的查询createtriggertrig1afterinsertonparticipantforeachrowbegininsertintoteam(sap)selectsapfromparticipantorderbyIDdesclimit1,1end;应该在participant表插入新行后,将participant表的sap字段复制到team表的sap字段引擎在“结束”结束时向我显示输入错误的意外结束我已经尝试了很多方法来重新处理查询,但我总是遇到同样的错误我做错了什么?谢谢 最佳答案 您正在使用触发器而不需要在

mysql - ElasticSearch river JDBC MySQL 不删除记录

我正在使用ElasticSearch的JDBC插件来更新我的MySQL数据库。它拾取新的和更改的记录,但不会删除已从MySQL中删除的记录。它们保留在索引中。这是我用来创建河流的代码:curl-XPUT'localhost:9200/_river/account_river/_meta'-d'{"type":"jdbc","jdbc":{"driver":"com.mysql.jdbc.Driver","url":"jdbc:mysql://localhost:3306/test","user":"test_user","password":"test_pass","sql":"SEL

java - MySQL JDBC 驱动程序中的客户端仿真准备语句

我试图了解MySQLJDBC驱动程序中的客户端仿真准备语句是如何工作的。第1部分我在网上看到,对于准备好的语句,关系数据库处理JDBC/SQL查询时涉及四个步骤,它们如下:解析传入的SQL查询编译SQL查询规划/优化数据采集路径执行优化查询/获取并返回数据预执行步骤会编译SQL语句,从而提供预优化。对于服务器端准备好的语句,将对数据库进行额外的往返以预编译SQL语句。问题如果客户端仿真准备语句不往返数据库,它如何执行第3步?还是客户端仿真准备语句的工作方式不同?第2部分我也做了两个实验。实验1-使用一个客户端准备好的语句查询实验2-为多次相同的查询两个实验都显示响应时间等性能有所改善。

javascript - 数据验证和安全 : From user input to browser output – PHP/MySQL/JavaScript

我想了解我必须遵循的步骤,以便在网站上安全地输入和输出数据。到目前为止,这是我的理解:**程序**1)用户输入数据2)此数据使用JavaScript进行验证。如果数据与你的结构不匹配请求,发送错误消息。3)如果JavaScript被禁用或浏览器不支持,数据也会使用PHP进行验证。PHP验证几乎与JavaScript相同。如果数据与请求的结构不匹配,则发送错误消息。4)打开一个与数据库的连接(PDO方式)5)使用准备好的语句(PDO方法)根据您的数据库检查输入数据,并在需要时返回错误消息[例如,如果数据是电子邮件地址,那么我们不能有2个用户相同的电子邮件地址/错误消息:此电子邮件地址已被