读书人

得到的值为什么会不一样呢

发布时间: 2012-03-09 16:54:58 作者: rapoo

求救,得到的值为什么会不一样呢?
我有一段程序,主要是得到的时间值为什么不一样呢,具体的程序代码见下:
declare @log_userid varchar(4)
declare @log_username varchar(20)
declare @log_hostip varchar(128)
declare @log_hostname varchar(256)

declare @log_time datetime
select @log_time=getdate() from ss_get_datetime

select @log_time

set @log_userid='0003'
set @log_username='test'
set @log_hostip='192.168.1.109'
set @log_hostname='testhost'

declare @tablename varchar(128)
set @tablename='##loguser'+@log_userid
exec('create Table '+@tablename+'(loguserid varchar(4),logusername varchar(20),loghostip varchar(128),loghostname varchar(256),logtime datetime)')
exec('insert into '+@tablename+'(loguserid,logusername,loghostip,loghostname,logtime) values('+''''+@log_userid+''''+','+''''+@log_username+''''+','+''''+@log_hostip+''''+','+''''+@log_hostname+''''+','+''''+@log_time+''''+')')
exec('select * from '+@tablename)




注意看两个日期时间型数据,为什么后面一个没有秒数呢?

请高手帮忙解决,谢谢

[解决办法]
第二个没有格式化 第一个格式化了的
[解决办法]
试试
exec('insert into '+@tablename+'(loguserid,logusername,loghostip,loghostname,logtime) values('+''''+@log_userid+''''+','+''''+@log_username+''''+','+''''+@log_hostip+''''+','+''''+@log_hostname+''''+','+''''+convert(varchar(23),@log_time,120)+''''+')')
[解决办法]

SQL code
exec('insert into '+@tablename+'(loguserid,logusername,loghostip,loghostname,logtime) values('+''''+@log_userid+''''+','+''''+@log_username+''''+','+''''+@log_hostip+''''+','+''''+@log_hostname+''''+','+''''+convert(varchar(19),@log_time,120)+''''+')') 

读书人网 >SQL Server

热点推荐