【问题标题】:DB2 Database + verificationDB2 数据库 + 验证
【发布时间】:2013-04-04 15:43:22
【问题描述】:

所以我是数据库新手,我正在努力学习。我有一个我熟悉的 DB2 数据库。我被分配了一个任务,我需要编写一个在数据库上进行搜索的方法。搜索将采用两个参数,用户名和用户 ID 号。如果用户和用户 ID 号不匹配,或者如果其中一个或另一个结果为空,则需要抛出错误。如果它有效,那么它将继续吐出有关用户的信息。

有人告诉我使用 findall() 函数或类似的函数。我在网上看,我发现的是处理喜欢或喜欢的例子,我不确定这样的事情在我的情况下会如何工作。什么是我将如何开始做这件事的一个体面的例子?

感谢任何帮助。如果我有任何进展,我会回帖。

注意:我使用的是 groovy/grails。域,控制器,查看设置。

【问题讨论】:

  • 更新:有人告诉我也要研究休眠查询。

标签: database search grails db2


【解决方案1】:

这是学校的家庭作业吗?

findall() 通常是正则表达式中的一种方法,我认为在这里不相关。如果你有一个 SQL 数据库,这意味着你有一个使用 SQL 作为查询语言的 RDBMS。您需要了解 SELECT 命令,当您第一次查看手册时,这可能会让人望而生畏,但对于您的情况来说,它实际上很简单。你需要这样的东西:

SELECT userfield1, userfield2,..
FROM   myusertable
WHERE  myusertable.username = 'uname' AND myusertable.userid = userid

uname 和 userid 是您的搜索参数。请注意,出于安全原因,此 SQL 查询应使用 PREPARED 语句完成。

当您使用您的数据库库运行此查询时,您会得到一组您必须分析的结果。如果为空,则未找到用户。

编辑:更新考虑到休眠的使用

Hibernate 使用类似于 SQL 的 HQL,并且确实具有 findAll 方法。见http://grails.org/doc/latest/ref/Domain%20Classes/findAll.html

【讨论】:

  • 不,这是我实习期间的任务。有人告诉我使用类似于 findall() 的东西。
  • 术语不是“sql db”,而是“relational db”。 SQL 是常用来与数据库系统交互的语言。 DB2 绝对是一个关系数据库管理系统 (RDBMS),因此,正如您所说,它是 sql db。微软有一个名为“MS SQL Server”的RDBMS,人们有时称它为“sql db”。
  • 感谢您的快速回复。就像我说的那样,我正在努力学习。我想我对术语的理解比我预期的要天真。看来我还有很多东西要学。
  • 确实,您似乎有一些阅读要做:) 但原理与我在回答中的 WHERE 子句中向您展示的原理相同。你的任务很简单,但你需要获得一些背景知识。祝你好运,当你遇到困难时回到 SO。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多