目前,我正在开发一个带有后端MySQL的应用程序,但在将来,我需要编写所有业务逻辑才能使用SAS。
因此,请建议我应该使用哪些常见的数据类型来避免基于SQL的引擎和SAS之间的数据类型不匹配问题。例如,SAS只对int/double使用数字,而基于SQL的引擎对它们有不同的数据类型。如果我对SQL中的所有字段使用十进制,它会影响存储过程的执行时间吗?
额外信息:我的数据库将在每个表中有数百万行。
发布于 2013-08-03 13:46:15
您应该看看SQL-92。,它有点过时了,并且有一些更新的标准(例如SQL:1999),但是AFAIK大多数关系数据库管理系统应该至少使用其中的子集。
至少这些应该是可以的:
对于每个数据类型,您必须检查它分配的内存。这肯定会影响执行的性能,而不仅仅是对Server。例如,如果使用INT,联接非常快,如果使用数字,联接速度可能足够快,但我不推荐VARCHAR (字符变化)。在您的情况下,如果您使用十进制,它肯定会影响性能,但问题是:您会注意到吗?
我认为您应该专注于查询优化,尽可能接近SQL92,并尽可能地解决最终的问题。
https://stackoverflow.com/questions/18033277
复制相似问题