静态和动态sql之间有哪些区别

小编给大家分享一下静态和动态sql之间有哪些区别,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

静态或嵌入式 SQL是应用程序中的SQL语句,它们在运行时不会更改,因此可以硬编码到应用程序中。动态 SQL是在运行时构造的SQL语句。例如,应用程序可以允许用户输入他们自己的查询。

静态和动态sql之间有哪些区别

动态 SQL是一种编程技术,使您能够在运行时动态构建SQL语句。您可以使用动态SQL创建更多通用,灵活的应用程序,因为编译时可能不知道SQL语句的全文。

下面提到的是Static 或 Embedded以及Dynamic 或 Interactive SQL 之间的基本区别

静态(嵌入式)SQL 动态(交互式)SQL
在Static SQL中,嵌入式SQL语句中预先确定了如何访问数据库。 在Dynamic SQL中,将在运行时确定如何访问数据库。
它更加迅速和有效。 它不那么迅捷和有效。
SQL语句在编译时编译。 SQL语句在运行时编译。
解析,验证,优化和应用计划的生成在编译时完成。 解析,验证,优化和应用程序计划的生成在运行时完成。
它通常用于数据均匀分布的情况。 它通常用于数据分布不均匀的情况。
不使用EXECUTE IMMEDIATE,EXECUTE和PREPARE语句。 使用EXECUTE IMMEDIATE,EXECUTE和PREPARE语句。
它灵活性较差。 它更灵活。

动态SQL的局限性:
我们不能动态地使用某些SQL语句。
与Static SQL相比,这些语句的性能很差。

静态SQL的局限性:
它们在运行时不会更改,因此会被硬编码到应用程序中。

以上是静态和动态sql之间有哪些区别的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!