2
|
Daniel Schaffer · 技术社区 · 14 年前 |
1
5
快速回答:
不,您不需要使用其他类型。
不推荐使用的是在SQL Server DDL语句中使用类型名“timestamp”。如果代码正在生成包含类型名的DDL语句
长回答: 我将在这里结合一些引用,以避免重新发明轮子。首先,一些历史 http://www.mssqltips.com/tip.asp?tip=1501 :
请注意,Oracle和Postgres都以符合标准的方式使用时间戳,因此,Microsoft明智地放弃时间戳的非标准用法,以避免使Oracle开发人员在SQL Server上工作变得更加困难。
不管怎样,从
如果你深入研究这些文件 Data Type Synonyms :
换句话说,当SMO得到关于表的元数据时,它只知道rowversion。这意味着具有rowversion类型的列的表将作为
SMoAPI从未赶上过SQL Server使用的新命名。但是由于类型的底层行为没有改变,只有名称,所以您的SMO客户机代码不需要改变。 如果代码显示的是SQL Server数据类型,那么您可以是一个好公民,并将代码更改为显示“rowversion”而不是“timestamp”。但是,否则您的代码根本不需要更改。事实上,大多数SMO客户机( including Visual Studio's table design tool! )甚至都不想更改用户界面来反映新的命名。因为这些UI连接到覆盖下的枚举,所以无论SQL Server如何调用DDL中的类型,SMOAPI客户端都将继续工作。
SMOAPI的未来版本可能还会向枚举添加同义值(例如
|
2
1
我什么也找不到
|