我经常有一项任务有点像这样:将大量用户插入具有类似属性的users表中。并不总是这么简单,但总的来说,字符串列表 - >相应的sql语句列表。使用脚本工具自动创建sql语句
我通常的解决办法是用这个用户名在Excel列表中使用公式生成插入语句
=concatenate("insert into users values(username .......'",A1,"'.....
,然后我向下填充公式以获取所有插入行的负载。
这种方法很有效,但有时候这个陈述很长,有时包括几个不同的步骤,并且把它们全部填入excel公式中,让所有包装报价变得正确是一件痛苦的事情。
我想知道是否有更好的方法。我真正想要的是能够有一个模板文件模板TXT:
insert into users
([username],
[company] ...
)
values('<template tag1>...
,然后使用一些神奇的命令行工具,简单地能够像
command_line> make_big_file_using_template template.txt /values [username1 username2]
/output: bigfile.txt
输入一些东西,这给我是一个很大的文件,每个用户名值重复使用模板,标签由用户名替换。
那么这样的命令是否存在,或者我对命令行工具的期望值是否过高?任何免费的Windows工具都可以。我可以在不太多的时间内完成一个c#程序来完成这个任务,但我觉得现在必须有一个易于使用的工具。
'template.txt'来自哪里fr OM?数据库?你使用的是什么RDBMS?许多都有可以读取表单文本文件的“INSERT”命令。 –
我写过了。问题与数据库类型无关,事实上,这是我有时用于生成其他(非sql)类型代码的问题。 –
为什么要用这种方式生成SQL,而不是只有一个存储过程作用于您导入的数据? – Sorpigal