002.测验.Java之拼装SQL
这是一个十分简单但不实用的编程练习,拼装SQL。
select一个表,where很多单纯的and条件。
作者:史荣久 日期:2014-11-26 许可:CC BY-SA 3.0
任务说明
实现以下接口,完成练习目标。
package com.moilioncircle.kiss;
public interface Sql {
public Sql select(String... fields);
public Sql from(String table);
public Sql where(String fieldAndOperator, Object value);
public Sql and(String fieldAndOperator, Object value);
public String build();
}
任务目标
(1) 以下6个build()得出的sql,在MySql上执行,都返回1条记录。
Sql sql = new <your-Sql-impl>();
sql.select("id","birthday","homedir","description")
.from("sqltest")
.where("homedir=", "d:\\jonny\\")
.build();
sql.select("count(*)")
.from("sqltest")
.where("id>", Integer.valueOf(1))
.and("birthday=", Date.valueOf("1971-01-01"))
.build();
sql.select("count(*)")
.from("sqltest")
.build();
sql.select("1").build();
sql.select("count(*)")
.from("sqltest")
.where("description=", "jonny's pet")
.build();
sql.select("count(*)")
.from("sqltest")
.where("description=", "ben said \"hi tom!\"")
.build();
(2) 以下3个build(),抛出异常(选择舒服的异常类型)
sql.select("").build();
sql.select(null).build();
sql.select("count(*)")
.where("description=", "jonny's pet")
.build();
测试数据
通过以下SQL创建表和数据。
CREATE TABLE `sqltest` (
`id` INT NOT NULL,
`birthday` DATE NULL,
`homedir` VARCHAR(45) NULL,
`description` VARCHAR(45) NULL,
PRIMARY KEY (`id`));
insert into sqltest(id,birthday,homedir,description) values
(1,'1971-01-01','d:\\jonny\\','jonny''s pet'),
(2,'1971-02-01','d:\\tom','tom is good'),
(3,'1972-03-01','d:\\ben','ben said "hi tom!"');
-----
题图:两脚站在同一根高压电线上,电流基本上不从小鸟身上流过,小鸟是不会被电到的。
原文:
http://www.moilioncircle.com/actions/002.quiz.java-build-sql.html
分享到:
相关推荐
### Java完美按格式化字符串String转sql.Date 在Java编程中,经常需要处理日期与时间相关的数据。特别是在数据库操作时,经常会遇到需要将字符串类型的日期转换为`java.sql.Date`类型的情况。本文将详细介绍如何...
对于"sql.mdb",可能是用于演示或测试SQL查询的样本数据库,而"student.mdb"可能是一个包含学生信息的实际数据库。在Java程序中,我们可以通过建立JDBC连接,执行SQL语句,如SELECT、INSERT、UPDATE或DELETE,来读取...
`sqljdbc4-4.0.jar`是微软为SQL Server提供的一个特定版本的JDBC驱动,用于在Java应用程序中连接到SQL Server数据库。 标题中的"sqljdbc4-4.0.zip"是一个压缩包,包含了`sqljdbc4-4.0.jar`文件,这个文件是Java开发...
标题中的“Caused by: java.sql.SQLException: JZ0SJ: 没有在此数据库中发现元数据存取器信息。 请按 jConnect 文档中所述安装”是一个典型的错误信息,表明在尝试使用Java数据库连接(JDBC)驱动程序访问数据库时...
Oracle数据库是世界上最...总结来说,"oracle 数据库 scott.sql 范例表"提供了一个学习和测试Oracle SQL的实用环境。通过导入"scott.sql"并使用SCOTT用户,初学者能够熟悉数据库管理和SQL语言,进一步提升数据库技能。
public java.sql.Timestamp getTimestamp(java.sql.Timestamp a); public java.sql.Date getSDate(java.sql.Date a); public java.sql.Time getTime(java.sql.Time a); /*自定义类型*/ public UserBean getUser...
JAVA之连接MySQL数据库——测试数据库newtest.sql JAVA之连接MySQL数据库——测试数据库newtest.sql JAVA之连接MySQL数据库——测试数据库newtest.sql
《SQL2JAVA:深入理解O/R Mapping工具》 在当今的软件开发中,尤其是在企业级应用领域,数据库管理和数据操作是至关重要的环节。SQL2JAVA作为一个O/R Mapping(对象关系映射)工具,旨在简化数据库与Java应用程序...
9. **测试与调试**:开发过程中,单元测试和集成测试是必不可少的,JUnit可能是用于Java单元测试的工具,而SQL查询的调试则可能依赖于SQLServer的内置工具。 10. **安全性**:系统可能包含了用户认证和授权机制,...
Java通过JDBC连接Oracle数据库是开发中常见的任务,它允许我们与Oracle数据库进行交互,执行SQL语句,处理结果集等。以下是一个详细的步骤指南,以及相关知识点的介绍。 1. **下载Oracle数据库驱动**: Oracle ...
### Java批量执行SQL知识点解析 在Java开发过程中,经常需要与数据库进行交互,尤其是在处理大量数据时,如何高效地执行SQL语句变得尤为重要。本文将详细介绍如何利用Java进行批量SQL执行,包括其背景、实现原理、...
这是文档《SQL基础知识第二版》的附带源码,方便大家直接在数据库中执行进行相关的测试与练习。
此外,JDK还包括了`jar`工具用于创建和管理Java归档文件,`javadoc`用于生成API文档,以及`jshell`(也称为REPL,Read-Eval-Print Loop)用于快速测试和学习Java语法。 总的来说,Java JDK 11.0.8是Java开发者不可...
《构建简易库存管理系统:Java与SQL的协同应用》 在信息技术日益发达的今天,企业管理的数字化转型成为必然趋势。一个简单但实用的库存管理系统能够极大地提高企业运营效率,降低管理成本。本文将深入探讨如何利用...
基于JAVA和SQL-Server图书管理系统课程设计 本课程设计旨在设计和开发一个基于JAVA和SQL-Server的图书管理系统,旨在解决图书馆中借阅者或工作人员查找特定书目的困难问题。该系统将能够缩短借阅者的等待时间,减轻...
同步更新测试.sql,SDFAS A同步更新测试.sql同步更新测试.sql同步更新测试.sql同步更新测试.sql同步更新测试.sql
"Eclipse连接SQL"的主题涉及了如何在Eclipse集成开发环境中配置和使用Java代码来连接到SQL数据库,这对于数据库课程设计和大型实验项目至关重要。下面将详细阐述这一过程。 首先,Eclipse是一个流行的Java开发IDE,...
本资资打包重新shade com.sini.xls ,官网例子已测试通过 ,前一个版本由于个人原因报错,现已修复 ,如缺少类库需下载 Spire基础资源类库https://download.csdn.net/download/victorkevin/89729498
标题中的“一款基于SQL查询ES的Java工具包”指的是一个Java库,专门设计用于通过SQL语句查询Elasticsearch(ES)数据存储。Elasticsearch是一个流行的开源搜索引擎和分析引擎,广泛应用于日志分析、实时分析等领域。...