日期:2014-05-18 浏览次数:20407 次
不懂,帮顶,学习,蹭分.
------解决方案--------------------
应该也是timestamp
------解决方案--------------------
看情况,貌似不用插入,只需作为增量标记
------解决方案--------------------
错了,用datetime 类型
用convert 或者cast 转换一下
------解决方案--------------------
--> 测试数据: #tb if object_id('tempdb.dbo.#tb') is not null drop table #tb go create table #tb (id varchar(1),a timestamp) insert into #tb (id) select '1' union all select 'a' /* select *,dt=cast(a as datetime) from #tb id a dt ---- ------------------ ---------------------------- 1 0x00000000000007F3 1900-01-01 00:00:06.783 a 0x00000000000007F4 1900-01-01 00:00:06.787 (2 行受影响) */ create table ##(id varchar(1),b datetime) insert ## select top 1 * from #tb order by a desc select * from ## /* id b ---- ----------------------- a 1900-01-01 00:00:06.787 (1 行受影响) */
------解决方案--------------------
由于时间戳Timestamp是二进制类型,所以你的记录表中可以定义为binary(8)或varbinary(8)类型。
在SSIS中,变量可以定义为Byte类型。参数传递的时候还有一个类型叫DBTimestamp。
------解决方案--------------------
学习学习!......
------解决方案--------------------
兄弟,你可以给它convert想什么类型,不都OK
------解决方案--------------------
在源系统中增加一个时间戳字段,只是为了方便提取,什么类型无所谓,如datetime或date类型都可以。
------解决方案--------------------