你的意思是将查出来的结果插入新的数据库?
我感觉不行
但是既然能写出查询的sql
那就很简单
关联了几个表就重新再写几个查询
查询基本不用变,只需要改变你的select的字段
每个新的查询对应这个表的所有字段就完事了
查询的结果生成insert语句就完事了
你说呢?
是想生成
'insert into tb(col1,col2) values('1',2)'
这种
@清海扬波:
insert into tb(col1,col2) select xxx
这样写不行么?直接将结果插入到数据库就完事了
@刘宏玺: 我是要sqlserver生成sql字符串,然后在access执行。
@清海扬波: 导出为csv后直接在导入进access就完事了嘛!
再不济也可以使用excel写个公式生成insert脚本执行嘛
不要光在SqlServer的角度上面小问题噻
您好!能清晰无歧义地表达您的需求吗?请问将查询的结果生成insert语句是什么意思?
select出来的数据明确 标识 说明 表 来源即可。
然后你以单次insert或者分多次insert就随意了。
你的意思是,从不同的表中select出数据,然后生成插入到不同table的insert语句,? 姐姐,你可以拆分结果集,自己来组装
手动拼一个,类似
SELECT 'INSERT [dbo].[T_Name](name) VALUES(''' + CONVERT(VARCHAR(12), name) + ''')' FROM [dbo].[T_Name]
是这样的,字段个数也是灵活的,怎么写
@清海扬波: 那写个存储过程喽
@jello chen: 查询和表不一样,表可以查询出来有哪些列,然后拼接,但是数据集本来就是连接查询的结果集,就不知道怎么弄了。
@清海扬波: 查询的结果集也是通过执行sql语句得到的,你可以通过传入表名或者子查询语句和查询列到存储过程或者函数来像上面那样动态拼一个
是想select into 么?
不是,类似于sqlserver自带的生成数据库的数据插入脚本。
@清海扬波: 那你自己手动拼一个呗
sql处理不了,借助程序解决了。