mysql - 什么是动态 SQL?

标签 mysql sql stored-procedures dynamic-sql

我刚问了一个 SQL 相关的问题,第一个回答是:“这是一种情况,动态 SQL 是要走的路。

因为我以前从未听说过动态 SQL,所以我立即在这个网站和网络上搜索它是什么。维基百科没有此标题的条目。第一个谷歌结果都指向用户论坛,人们在这些论坛或多或少地提出相关问题。

但是,我没有找到“动态 SQL”的明确定义。它是供应商特定的吗?我使用 MySQL,但在 MySQL 手册中没有找到引用资料(只有问题,大部分未回答,在 MySQL 用户论坛中)。

另一方面,我发现许多对存储过程的引用。尽管我从未使用过任何存储过程,但我对什么是存储过程有了更好的了解。这两个概念有什么关系?它们是同一件事还是一个使用另一个?

基本上,需要对动态 SQL 概念的新手进行简单介绍。

P.S.:如果您愿意,可以尝试回答我之前提出的问题:SQL: How can we make a table1 JOIN table2 ON a table given in a field in table1?

最佳答案

动态 SQL 只是动态构建查询的地方 - 对于某些供应商,您可以在一个存储过程中构建动态查询的文本,然后执行生成的 SQL。在其他情况下,该术语仅指客户端代码做出的决定(这至少是供应商中立的)

关于mysql - 什么是动态 SQL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4165020/

相关文章:

php - mysqli_real_escape_string 是否进行客户端-服务器往返?

php - 优化 MySQL 中的 ORDER BY LIMIT 查询

mysql - 匹配的行和更改的行之间的差异

mysql - 在 7000 条记录上 13 秒后完成左连接 - mysql

mysql - 设置变量结果,来自查询

php - 如何检查连接表中是否存在行 - MySQL

mysql - 错误 : Unknown character set: 'utf8_unicode_ci'

SQL选择startdate是今天的日期

sql - Inner Join 是否存在性能问题?

c# - 存储过程不返回列问题