sql拼接工具

sql拼接工具,主要是在控制台生成sql拼接语句,这样做的好处,在自己的表中一些默认字段不需要导入,有些数据是别人给的,而且也只是部分动态字段,我们不能一个一个的insert进去,也不可能直接导入某张表中,所以,需要借助工具类来生成一个insert所有数据。

这个也是我从另一个博主那边看到的,但是呢忘记保存链接了,若原博主瞅见了,原谅,感谢。
首先我们可能会得到这样一个文件
在这里插入图片描述
字段间的值,都是由英文逗号隔开,
我们把字段的名给去掉,只剩下字段的值,然后保存为uft-8格式,否则中文就会乱码,csv,txt,包括xml之间的转换,百度一下就会有,我就不提供了。
在这里插入图片描述
这边的话用的是messageFormat,可以的话,可以百度一下。打印语句中得到的扫描出来的是一一对应的

@SpringBootTest
public class Test {

    @org.junit.Test
    public void txt() {
        BufferedReader br;
        StringBuffer sb = new StringBuffer("insert into  dome (id,variable,value,set_time) values ");
        try {
            br = new BufferedReader(new InputStreamReader(new FileInputStream("C:\\Users\\EDZ\\Desktop\\sys_config.csv")));
            String str = null;
            String sqlStr = "({0}, ''{1}'', ''{2}'',''{3}'',''测试''),";
            //id
            int id;
            String variable;
            String value;
            String set_time;
            while (br.ready()) {
                //初始化id
                id = 1;
                str = br.readLine().trim();
                //若为空行,跳过操作
                if (str == null || str.length() <= 0) {
                    continue;
                }
                //通过空格分割
                String splitByBlankStrs[] = str.split(",");
                variable = splitByBlankStrs[0];
                value = splitByBlankStrs[1];
                set_time = splitByBlankStrs[2];
                sb.append(MessageFormat.format(sqlStr, id, variable, value, set_time));
                sb.append("\r\n");
                id++;

            }
            System.out.println(sb);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

我这个是测试类,所以加了一个@SpringbootTest,如果不是话,@Test也不用加,直接 psvm 回车
执行之后,我得到的就是如下图:

在这里插入图片描述

在这里插入图片描述

这是粘贴到数据库的样子,然后就可以用了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Flowing bytecode

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值