resultset

Axapta: Get data from Database by SQL

百般思念 提交于 2020-03-05 08:48:43
You can copy it to a job: LoginProperty loginProperty = new LoginProperty(); ODBCConnection con; Statement stmt; str sqlString, result; ResultSet resultSet; ; loginProperty.setServer('servername'); loginProperty.setDatabase('DB name'); loginProperty.setUsername('username'); loginProperty.setPassword('pwd'); con = new ODBCConnection(loginProperty); sqlString = "select * from Address" ; stmt = Con.createStatement(); resultSet = Stmt.executeQuery(sqlString); resultSet.next(); result = resultSet.getString(1); if (result) { info(result); } else { info( "No record! " ); } 来源: https://www.cnblogs.com

JDBC

守給你的承諾、 提交于 2020-03-04 15:35:18
jdbc import java . sql . * ; /** * JDBC: * JDBC是sun公司提出的一组规范,主要由接口组成 作用:访问数据库 * Java有13种规范 * 接触过有 JDBC servlet jsp xml javamail jms * Statement和PreparedStatement的联系与区别: * PreparedStatement是Statement的子接口,作用于Statement的作用一样,都是用来发送sql语句 * 特点:PreparedStatement可以发送参数化sql语句 * 区别:PreparedStatement可以防止sql注入 * SQL注入: * 一些非法分子或者黑客利用一些特殊的字符串拼接的方式,注入到系统原有的sql语句中,改变原有的Sql逻辑 * JDBC能否执行DDL: * 可以执行 * JDBC中的事务控制: * JDBC中事务是执行完成后默认自动提交 * ResultSet: * ResultSet保存了查询到的结果逻辑上是一张二维表的结构保存,在ResultSet上有一个游标,游标的初始位置 * 在第一行数据的前一行(表头),每次调用一次.next(),游标就会向下移动,移动的方法返回值是blooean类 * 型,返回为true时,说明游标行有数据,返回为false时

java简单jdbc查询操作

家住魔仙堡 提交于 2020-03-02 20:32:42
所采用的mysql的数据库驱动版本:5.0.8 mysql-connector-java-5.0.8-bin.jar 程序结构图: 表结构: 创表sql: Create Table CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(200) DEFAULT NULL, `password` varchar(32) DEFAULT NULL, `sex` char(1) DEFAULT NULL, `birthday` date DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8 package com.itheima.mydatis.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.Date; public class JdbcTest { // 定义sql

Java Web----Java Web的数据库操作(一)

≡放荡痞女 提交于 2020-03-02 06:26:11
Java Web的数据库操作 一、JDBC技术 1、JDBC简介 JDBC是Java程序与数据库系统通信的标准API,它定义在JDK的API中,通过JDBC技术,Java程序可以非常方便地与各种数据库交互,JDBC在Java程序与数据库系统之间假期了一座桥梁。 JDBC由一组用Java语言编写的类和接口组成,它对数据库的操作提供了基本方法,但由于数据库种类跟多且多有不同,所以对数据库的细节操作由数据库厂商进行实现,且厂商需要提供数据库的驱动程序,下图为Java程序与数据库相交互的示意图: 2、JDBC连接数据库的过程 l 下载驱动包 在JDK中,不包含数据库的驱动程序,使用JDBC操作数据库需要实现下载数据库厂商提供的驱动包,并导入到开发环境中。 l 注册数据库驱动 连接数据库前,需要将数据库厂商提供的数据库驱动注册到JDBC的驱动管理器中,一般是通过将数据库驱动类加载到JVM来实现的,例如连接MYSQL数据库: Class.forName(“com.mysql.jdbc.Driver”); l 构建数据库连接URL URL由数据库厂商制定,不同数据库它的URL有所区别,但都符合一个基本的格式,即“JDBC协议+IP地址或域名+端口+数据库名称”,例如MYSQL数据库为”jdbc:mysql://localhost:8080/test”。 前两步中不同数据库有所差别

图片服务器——实现阶段(数据库实现)

丶灬走出姿态 提交于 2020-03-01 22:44:59
一、封装数据库操作 创建DBUtil类,创建一个单例类辅助创建连接,其中URL为数据库连接字符串,用户名,密码都是固定的。 private static final String URL = "jdbc:mysql://127.0.0.1:3306/image_server? characterEncoding=utf8&useSSL=true" private static final String USERNAME = "root"; private static final String PASSWORD = "1002"; 这个类主要包含三个方法 // 这是一个获取单例的方法 public static DataSource getDataSource() { } // 获取链接 public static Connection getConnection() { } // 关闭链接 public static void close(Connection conn, PreparedStatement statement, ResultSet resultSet) {} 类的实现代码 public class DBUtil { private static final String URL = "jdbc:mysql://127.0.0.1:3306/image

通过libzdb连接数据库

谁都会走 提交于 2020-03-01 13:38:40
一.引用博客一些用法介绍: Libzdb挺强大, 支持 MySQL Oracle SQLite PostgreSQL,支持C和C++ Object C,不能在Window下用(看源码是因为基于Linux线程机制编写实现)。 遗憾的是找个资料太费劲,只能到Libzdb官网: 点此进入 ,今正看着上面英文文档,突然网站就登不进去了,才发现国内论坛其实搜不出什么资料。 本文主要介绍Libzdb函数使用,帮理解英文文档有困难的朋友做下翻译。 库结构如下 : 首先下载libzdb的源码安装包,解压,在目录下执行./configure make make install 安装。。以我自己为例,装完后再/usr/local/lib下有对应库文件。 1 线程池根据URL对象创建,URL对象通过char* 形式的URL生成,url中已经包含数据库类型,数据库名 用户密码等参数。形如: database://[user:password@][host][:port]/database[?propertyName1][=propertyValue1] MYSQL访问: mysql://localhost:3306/test?user=root&password=swordfish mysql://root:swordfish @localhost :3306/test ORACLE访问: oracle:

03-dbutils源码之BeanProcessor、RowProcessor、BasicRo...

99封情书 提交于 2020-03-01 12:58:53
在dbutils中, BeanProcessor 是一个很重要的类:将列和bean对象的属性进行匹配,将列的值赋予bean的对象。这个是使用了反射来进行的。 来看下类的outline: 从上图可以看出,有“创建对象”、“调用setter”、“获得类的属性描述符”等方法,还有一个最重要的方法mapColumnsToProperties(ResultSetMetaData,PropertyDescriptor),这个方法是将结果集和类的属性进行一个匹配。toBean是将一行记录转换成一个bean对象。toBeanList就是将多行记录变成bean对象的List集合。 下面看一下它的具体实现。 /* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License

【源码阅读】dbutil包中的BeanProcessor类

孤者浪人 提交于 2020-03-01 12:07:45
BeanProcessor通过名字就可以知道,该类是用来处理Bean类(JavaBean)的,它的作用是将数据库中的记录转化为对应的Bean对象。 下面先看一下该类的类图: 该类有三个成员变量:我们重点来看两个Map类型的变量: 1、primitiveDefaults:该变量的主要作用是保存Java基本数据类型的Class与其默认值的对应关系,然后当SQL语句get方法返回NULL值的时候就用从该Map中获取相应的默认值,下面的静态代码块用来初始化该Map: static { primitiveDefaults.put(Integer.TYPE, Integer.valueOf(0)); primitiveDefaults.put(Short.TYPE, Short.valueOf((short) 0)); primitiveDefaults.put(Byte.TYPE, Byte.valueOf((byte) 0)); primitiveDefaults.put(Float.TYPE, Float.valueOf(0f)); primitiveDefaults.put(Double.TYPE, Double.valueOf(0d)); primitiveDefaults.put(Long.TYPE, Long.valueOf(0L)); primitiveDefaults.put

流实现低内存下读取大量数据和处理并存储大文件

眉间皱痕 提交于 2020-03-01 05:45:06
昨天看到有朋友A在问,“我的程序一旦导出稍微大点的Excel一定会OOM,你们的应用导出多少数据量都没有问题,如何做到的?”。这里涉及到两个问题:读取和写入的内存占用。其实业务很简单:从数据库中读取数据,然后生成Excel。那么我们以解决A的业务问题入手,从而来解决这一类的问题。 读取: A使用JDBC从数据库中读取数据,当返回结果较多且内存不足以容纳结果时可能导致OOM,这时候只需要增加虚拟机的heap内存即可解决当下问题,但这种方法并不能解决根本问题。在java.sql.Statement中有两个方法: //设置该Statement生成的所有java.sql.ResultSet可容纳结果的最大行数. void setMaxRows(int max) throws SQLException; //设置Statement生成的所有java.sql.ResultSet在获取更多行时应从数据库获取的行数 void setFetchSize(int rows) throws SQLException; 可以使用setMaxRows限定结果集数量来控制数据量也是一个不错的办法,但是需要业务上妥协不能使用完整的数据,不太合适。第二个方法,setFetchSize按照一次获取rows条记录放在客户端,客户端处理完成后再去取rows条记录到客户端来,直至数据取完

executeQuery、executeUpdate 、execute 之间的区别

元气小坏坏 提交于 2020-02-29 14:11:11
Statement 接口提供了三种执行 SQL 语句的方法:executeQuery、executeUpdate 和 execute。 executeQuery(String sql) ResultSet executeQuery(String sql) throws SQLException; 该方法 只能 用来执行SELECT查询,并且返回ResultSet。即使查询不到记录返回的ResultSet也不会为null。如果传入的sql语句不是SELECT语句,将抛出异常。因此该方法使用最多。 executeUpdate(String sql) int executeUpdate(String sql) throws SQLException; 该方法用于执行 INSERT、UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句,例如 CREATE TABLE 和 DROP TABLE。 INSERT、UPDATE 或 DELETE 语句的效果是修改表中零行或多行中的一列或多列。executeUpdate 的返回值是一个整数(int),指示受影响的行数(即更新计数) 对于 CREATE TABLE 或 DROP TABLE 等不操作行的语句,executeUpdate 的返回值总为零。 execute(String sql) boolean execute