如何从查询生成sql脚本

如何从查询生成sql脚本,sql,Sql,有人知道如何从查询生成SQL脚本吗 比如说, 编写一些表的脚本 执行自定义操作1 为视图编写脚本 执行自定义操作2 等等 听起来您想编写一个游标来执行自定义SQL。这很常见,也很容易做到。您需要做的是指定一些事情,以帮助我们更完整地回答您的问题: 您使用的是哪种类型的SQL server?(MSSQL、Oracle、MySQL) 你用什么语言写的?(java,C++,PL/SQL,TSQL) 您可以编写代码(Java/C++)从查询生成SQL,也可以使用游标在记录集(PL/SQL/TSQL)上进

有人知道如何从查询生成SQL脚本吗

比如说,

  • 编写一些表的脚本
  • 执行自定义操作1
  • 为视图编写脚本
  • 执行自定义操作2
  • 等等

  • 听起来您想编写一个游标来执行自定义SQL。这很常见,也很容易做到。您需要做的是指定一些事情,以帮助我们更完整地回答您的问题:

  • 您使用的是哪种类型的SQL server?(MSSQL、Oracle、MySQL)
  • 你用什么语言写的?(java,C++,PL/SQL,TSQL)

  • 您可以编写代码(Java/C++)从查询生成SQL,也可以使用游标在记录集(PL/SQL/TSQL)上进行迭代。您可以使用结果提供信息,这些信息可以通过exec(某种类型,取决于语言)作为SQL执行。

    。。。但在实现动态SQL之前,请先研究SQL注入。查看参数化查询…

    使用Microsoft Sql Server编写数据库对象脚本的最佳方法是使用。Sql管理对象是一个c#api,但您始终可以使用SqlClient从c#执行t-Sql脚本

    select 'UPDATE '+table_name+ ' SET description=''(new!) ''+description WHERE description_date>''2008-11-01''' 
        from information_schema.tables where table_name like '%Description'
    
    (对于虚拟数据库中名称以“description”结尾的每个表中最近的每一行,此查询将生成在description列的值前面加上“(new!)”的查询)

    系统视图信息\u SCHEMA.TABLES包含有关所有数据库表的数据,表模式中还有信息\u SCHEMA.VIEWS、信息\u CHEMA.COLUMNS和其他系统视图


    希望这会有所帮助。

    参数化查询实现并不总是允许将表名作为参数。如果这些是“create view”语句,我不确定这些语句是否可以像SELECT、INSERT或DELETE语句那样进行参数化。我不确定您到底在问什么。你到底想得到什么?你能举个简单的例子吗?