java代码写入数据库注意事项


ORACLE数据库:

1,在数据库可视化工具中可以加 ;结束,但在java代码中不可以有 ;否者报错    ORA-00911

2,在对数据库操作完成后需要调用prepareStatement的方法(execute()或executeQuery()或executeUpdate()

3,数据库中的字符串使用的是 ‘’  单引号,而不是  "" 双引号

4,如果存入数据库的字符串中有  ‘’  单引号,可以在java中的String中将单引号替换为两个单引号

5,oracle中定位到表明一般加入模式名(模式名.表名)

6,关于数据库的删除操作  ,在delete和from中间没有 *

DELETE FROM 表名称 WHERE 列名称 = 值


7,oracle的批量插入方法:insert后面总是容易丢掉into

INSERT INTO T(N1,N2) 

SELECT 1,1 FROM DUAL UNION ALL 

SELECT 2,2 FROM DUAL .....

表名(值1,值2....)

select  值1,值2....  from dual union all

.........

select  值1,值2....  from dual 

在最后一组值后面没有union all(关于oracle中dual是什么自行百度)

8,关于(execute()或executeQuery()或executeUpdate())区别

根据你的语句和对于返回值的需求来使用

布尔execute()   :适用于任何语句
执行的SQL语句PreparedStatement对象,它可以是任何类型的SQL语句。

ResultSet executeQuery()   :  :适用于查询语句
执行SQL查询在这个PreparedStatement对象并返回查询生成的结果集对象。

int executeUpdate() :  :适用于修改(增删改)语句
执行的SQL语句PreparedStatement对象,它必须是一个SQL INSERT、UPDATE或DELETE语句,不返回任何结果或一个SQL语句,如一个DDL语句。


9,对于oracle数据库中插入超过4000字节的varchar类型会报错,因为超出了varchar类型的最大容量

这时就需要使用CLOB类型,CLOB类型不允许指定大小,最大容量20G。

使用方法:声明以及实例化:(Connection conn)

CLOB clob   = CLOB.createTemporary(conn, false,oracle.sql.CLOB.DURATION_SESSION);  

其他声明方法查看API:http://docs.oracle.com/cd/E11882_01/appdev.112/e13995/oracle/sql/CLOB.html

给clob赋值:

in t  setString(long pos, java.lang.String str)
JDBC 3.0给定的Java写道StringCLOB值,这Clob对象指定的位置pos

使用时和其他参数一样,加入到PreparedStatement中,方法不止一种,查询等操作后续碰到再加上,



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你好,关于Java读取csv写入数据库代码,可以参考下面的示例: ```java import java.io.BufferedReader; import java.io.FileReader; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; public class CSVtoDatabase { public static void main(String[] args) { String csvFile = "path/to/csv/file.csv"; // csv文件路径 String jdbcUrl = "jdbc:mysql://localhost:3306/mydatabase"; // 数据库连接 String user = "myusername"; // 数据库用户名 String password = "mypassword"; // 数据库密码 String sql = "INSERT INTO mytable (col1, col2, col3) values (?, ?, ?)"; // 插入数据的SQL语句 try (Connection conn = DriverManager.getConnection(jdbcUrl, user, password); PreparedStatement statement = conn.prepareStatement(sql); BufferedReader br = new BufferedReader(new FileReader(csvFile))) { String line; while ((line = br.readLine()) != null) { String[] data = line.split(","); // 按逗号分隔csv文件中的数据 statement.setString(1, data[0]); // 设置SQL语句中的参数 statement.setString(2, data[1]); statement.setString(3, data[2]); statement.executeUpdate(); // 执行SQL语句 } } catch (SQLException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } } ``` 这段代码会读取指定路径的csv文件,按逗号分隔每一行的数据,并将其写入到指定的数据库表中。你需要替换代码中的相关参数,如csv文件路径、数据库连接、用户名、密码、插入数据的SQL语句等。 希望这能帮助到你!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值