Tag: 数据库

Sqlite数据库更新了一行android

我正在开发一个Android应用程序,我需要根据某个where子句更新表中的列。这是下面的代码, public void updatethekeyofweeklycolumn(String profilename, String keystemp) { SQLiteDatabase db = this.getWritableDatabase(); ContentValues values = new ContentValues(); values.put(Profile_keysofweekly, keystemp); db.update(TABLE_PROFILE_SETTINGS_FOR_WEEKLY, values,Profile_Name_for_weekly +” = “+profilename, null); } 上面的代码在where子句为null时工作正常,但是它设置了一个与whereclause关闭的力。 我的查询错了吗?

使用JNDI进行数据库连接

这可能听起来像一个菜鸟问题,但这是我第一次踏入数据库领域。 从这里我得到了信息 在服务器和数据库之间实现通信的最有效方法是设置数据库连接池。 为每个客户端请求创建新连接可能非常耗时,尤其是对于持续接收大量请求的应用程序。 本教程使用JNDI数据源。 我的应用程序也类似(但我不会使用Tomcat,只是套接字),我的服务器将收到来自多个客户端的请求,但我不明白为什么我应该使用JNDI数据源,为什么服务器不能维护一个打开与数据库的连接,当客户端请求到达时,它将处理请求并将数据提供给客户端。 在最坏的情况下,如果我需要一个JNDI,我怎么能用我的服务器应用程序实现它?

MyBatis:使用动态查询比较String值

我正在使用MyBatis映射一些我需要比较String参数( myString )的查询。 我的Mapper 界面是: public Map findSomething(@Param(“myString”) String myString); 我的XML如下: SELECT column1 as key, column2 as value FROM my_table column3 = 1 myColumn = 2 myColumn = 3 ORDER BY value; 当我执行此语句时,抛出以下错误: ERROR [stderr] Caused by: org.apache.ibatis.exceptions.PersistenceException: ERROR [stderr] ### Error querying database. Cause: org.apache.ibatis.reflection.ReflectionException: There is no getter for property named ‘myString’ in […]

生成随机条形码 – 一个设计问题

我正在修复生成条形码的java代码中的错误(线程问题)。 根据设计,条形码只是一个数字,下一个“未使用”条形码是序列中的下一个。 有990亿可能的数字。 首先,由于安全问题,我不喜欢自动递增的数字。 我想生成随机数。 已使用的条形码存储在数据库表中。 如果条形码正在使用,创建一个随机数并检查表是非常容易的。 但逻辑必须循环,直到找到一个未使用的随机数。 到时候这可能是一项繁重的任务。 我认为具有1000个免费条形码的线程安全缓存可以完成这项工作,但构建或更新缓存可能非常繁重。 对查询设计的任何建议或者可以返回一系列免费随机数的查询? 我正在使用hibernate标准。 谢谢

java.lang.StringIndexOutOfBoundsException:在= sqlite数据库中索引= 0 length = 0

我试图用这段代码打开一个可写的SQLite数据库…… public DataAdapterForServieClass open() throws SQLException { db = DBHelper.getWritableDatabase(); return this; } 但是我在db = DBHelper.getWritableDatabase();上收到以下错误db = DBHelper.getWritableDatabase(); 线… 06-10 11:58:13.995: ERROR/AndroidRuntime(548): FATAL EXCEPTION: main 06-10 11:58:13.995: ERROR/AndroidRuntime(548): java.lang.StringIndexOutOfBoundsException: index=0 length=0 06-10 11:58:13.995: ERROR/AndroidRuntime(548): at android.app.ContextImpl.validateFilePath(ContextImpl.java:1518) 06-10 11:58:13.995: ERROR/AndroidRuntime(548): at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:725) 06-10 11:58:13.995: ERROR/AndroidRuntime(548): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221) 06-10 11:58:13.995: ERROR/AndroidRuntime(548): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:149) 这是我的DBHelper类的代码…… static class DatabaseHelper […]

是否有任何框架用于处理swing应用程序中的数据库请求?

我相信任何在gui应用程序中处理数据库请求的程序员都遇到了以下部分或全部问题: 您的GUI冻结是因为您从事件调度线程中调用数据库层 如果有多个窗口/面板/ jframe,用户可以在其中启动数据库请求,则性能会下降,因为您无法控制用户创建的线程 用户可能能够锁定应用程序甚至数据库,因为他在第一个操作完成之前多次调用任何操作 我想知道的是:是否有任何框架可以处理在事件调度线程之外处理一组有序的长时间运行操作(包括但不限于数据库调用,即计算)的要求? 注意:我知道SwingWorker 😉

在java Web应用程序中存储数据库字符串连接的位置?

我即将用java开始我的第一个项目 让我告诉我以前如何处理这些事情…… 到目前为止,我一直在使用VB6编写的com + componente来处理asp。 该组件通过com +管理控制台与域用户注册,其中包括lile my_company_domain \ my_app_account 组件从udl文件读取配置,配置为访问具有集成安全性的DB。 我使用server.createobject从asp调用组件,组件使用指定的域帐户运行,因此每个数据库访问都使用此帐户运行… 我喜欢这种方法的有以下几点: 使用集成安全性 – 没有sql用户 无需重新编译任何内容来更改db(编辑udl文件)或域帐户(编辑com +组件配置) 池连接(因为我总是使用相同的连接字符串) 生产人员可以在不将帐户密码留在文本文件上的情况下更改配置 … 那么,在java上实现这样的东西最好的方法是什么? 我已经看到了一些关于Commons-DBCP的东西,是否可以使用集成安全性? 非常感谢… – 添加回应评论 通过集成安全性我的意思是我只需要配置域帐户,就是这样,我不使用sql server帐户,只使用运行VB6 com +组件的帐户。 好吧,也许这不是合适的术语,但我希望你能得到这个想法……

最佳嵌入式SQL DB的写入性能?

有没有人对流行的开源嵌入式SQL数据库进行基准测试/评估以获得性能,特别是写性能? 我对sqlite,Firebird Embedded,Derby和HSQLDB(其他我缺少的?)进行了1:1的比较,但没有全面的比较……另外,我对这些中的任何一个的整体开发人员体验感兴趣(对于Java应用程序)。

如何在Spring中为两个查询使用相同的连接?

我在基于Spring JdbcTemplate的dao中有以下代码 – getJdbcTemplate().update(“Record Insert Query…”); int recordId = getJdbcTemplate().queryForInt(“SELECT last_insert_id()”); 问题是我有时使用连接池中的不同连接来执行update和queryForInt查询。 这导致返回错误的recordId,因为应该从发出插入查询的同一连接调用MySql last_insert_id()。 我考虑过SingleConnectionDataSource但不想使用它,因为它会降低应用程序性能。 我只想要这两个查询的单一连接。 并非所有服务的所有请求。 所以我有两个问题: 我可以管理模板类使用的连接吗? JdbcTemplate是否执行自动事务管理? 如果我手动将事务应用于我的Dao方法,是否意味着每个查询将创建两个事务? 希望你们能够对这个话题有所了解。 更新 – 我尝试了nwinkler的方法并将我的服务层包装在一个事务中。 我很惊讶地发现在一段时间之后会再次弹出相同的错误。 深入研究Spring源代码我发现了这个 – public T execute(PreparedStatementCreator psc, PreparedStatementCallback action) throws DataAccessException { //Lots of code Connection con = DataSourceUtils.getConnection(getDataSource()); //Lots of code } 因此,与我的想法相反,每个事务不一定有一个数据库连接,但每个查询执行一个连接。 这让我回到了我的问题。 我想从同一个连接执行两个查询。 🙁 更新 –

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 : […]