Tag: sql

在java中执行多个SQL语句

我想用Java执行查询。 我创建了一个连接。 然后我想执行一个INSERT语句,完成后,连接关闭,但我想通过连接执行一些insert语句,当循环完成然后关闭连接。 我能做什么 ? 我的示例代码是: public NewClass() throws SQLException { try { Class.forName(“oracle.jdbc.driver.OracleDriver”); } catch (ClassNotFoundException e) { System.out.println(“Where is your Oracle JDBC Driver?”); return; } System.out.println(“Oracle JDBC Driver Registered!”); Connection connection = null; try { connection = DriverManager.getConnection( “jdbc:oracle:thin:@localhost:1521:orcl1”, “test”, “oracle”); } catch (SQLException e) { System.out.println(“Connection Failed! Check output console”); return; } […]

JDBC的JDBC示例

我已经下载了JDK 6,我也有sqljdb4.jar,我有database.properties文件,其中包含以下数据 database.driverClassName = com.microsoft.sqlserver.jdbc.SQLServerDriver database.url = JDBC:SQLSERVER://;的databaseName =的UserInfo; integratedSecurity = TRUE; database.username = SA database.password =管理员 BN:我正在我的机器上安装服务器,服务器名称=。 ,我也在使用Windows Authontication 我现在的问题是当我尝试创建连接时出现以下错误 com.microsoft.sqlserver.jdbc.SQLServerException:与主机localhost,端口1433的TCP / IP连接失败。 错误:连接被拒绝:连接。 请validation连接属性并检查主机上是否正在运行SQL Server实例并在端口上接受TCP / IP连接,并且没有防火墙阻止与端口的TCP连接。 at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:130) 我不知道这里究竟是什么问题 如果任何人可以帮助我将不胜感激 提前致谢

hibernate。 PSQLException:int类型的错误值:admin

好吧,我有一个使用JAVA和Hibernate 4.3.1的桌面应用程序。 现在我只有两个实体(用户和角色)。 用户 … @ManyToOne(fetch = FetchType.LAZY) @Fetch(FetchMode.JOIN) @JoinColumn(nullable = false, name = “fk_role”) private Role fk_role; … 角色 … @Column(name = “admin”, nullable = false) @Type(type = “org.hibernate.type.BooleanType”) private boolean admin = false; … 我试过了 @Type(type = “org.hibernate.type.BooleanType”) 这个。 @Type(type = “org.hibernate.type.NumericBooleanType”) 和 @Type(type = “org.hibernate.type.YesNoType”) 和 @Type(type = “org.hibernate.type.TrueFalseType”) 如下所示: http : […]

Java PreparedStatement和ON DUPLICATE KEY UPDATE:如何知道是否插入或更新了行?

有下面的代码,我怎么知道execute()方法是否导致插入或更新?: Connection c = DriverManager.getConnection(connectionString); PreparedStatement st = c.prepareStatement(“INSERT INTO `table`(`field1`) VALUES (?) ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id);”); st.setString(1,”some value”); st.execute(); 提前致谢。

为什么我需要连接来创建PreparedStatements?

出于多种原因 ,我想使用准备好的陈述。 但是,我想创建一个如下所示的方法: /* This opens a connection, executes the query, and closes the connection */ public static void executeNonQuery(String queryString); 换句话说,我希望我的应用程序逻辑只需要制定查询和feed参数,而不是处理连接和语句。 但是,PreparedStatements是从连接对象创建的,所以我当前被迫使用String.format()准备查询字符串 – 但是很丑陋且危险。 有没有办法在不使用String.format()的情况下做我想做的事情?

Spark – 使用数据框语法进行HAVING分组?

在没有sql / hiveContext的Spark中使用groupby-having的语法是什么? 我知道我能做到 DataFrame df = some_df df.registreTempTable(“df”); df1 = sqlContext.sql(“SELECT * FROM df GROUP BY col1 HAVING some stuff”) 但是我怎么用这样的语法来做呢 df = df.select(df.col(“*”)).groupBy(df.col(“col1”)).having(“some stuff”) ? 这个.having()似乎不存在。

jooq-获取单个值

我有一个问题..为什么我重复了我在fetch方法中选择的内容。 Date minDate = getDSLContext() .select(CON_CAL_INSTANCE.DATE.min()) .from(CON_CAL_INSTANCE) .join(CON_CAL_TEMPLATES) .on(CON_CAL_INSTANCE.TEMPLATE_ID.eq(CON_CAL_TEMPLATES.ID)) .where(CON_CAL_TEMPLATES.ENTRY_TYPE.in(“REPT”, “HRPT”)) .fetchOne(CON_CAL_INSTANCE.DATE.min()); 所以我在select子句中提供了CON_CAL_INSTANCE.DATE.min() ,为什么我必须在fetchOne(CON_CAL_INSTANCE.DATE.min())重复它? 或者我不是这样做的吗?

使用HQL进行内部联接

我试图在一列内连接两个表。 从DB方面来说,没有映射,因为它是我不想讨论的东西。 我想使用INNER JOIN执行HQL查询并检索ROLE对象/结果。 到目前为止这是我的hql session.createQuery(“来自ROLE作为角色INNER JOIN INVOLVEMENT作为参与ON role.id = involvement.roleid WHERE involvement.id = X”)。list(); 我看到HQL上没有ON。 我如何明确告诉Hibernate只在这个列上加入。 我也在下面尝试过 从ROLE中选择roleSpec作为角色,将INVOLVEMENT作为参与选择WHERE role.ID = involvement.role_id和involvement.id = 27251352 但我在exception中没有映射到ROLE。

在JDBC中缓存

我想在JDBC中使用缓存。 我怎样才能做到这一点? 是否有任何内置机制或我是否必须使用第三方解决方案? 使用JDBC进行缓存的最佳做法是什么。 谢谢你,杰克 编辑:CachedRowSet怎么样? http://docs.oracle.com/javase/tutorial/jdbc/basics/cachedrowset.html

如何使用JOOQ启动事务和回滚?

是! 我已经阅读了有关的文档 jOOQ永远不会在Connection上提交或回滚(如果CSV导入除外,如果在Import API中明确配置) jOOQ永远不会开始任何交易。 … 但是当我需要一些事务管理时,最好的做法是什么? 我说过我是JOOQ方式的忠实粉丝!