sqlserver中datetime类型字段设置默认值的方法:一、在企业管理器中选中要修改的表格,点击鼠标右键,弹出菜单点击“设计表”2、选中要设置的字段,在默认值中绑定默认值默认值为当前时间:getdate()默认值为指定时间:'20160101',该格式各数据库版本有细微差异,示例在SQL2000环境测试:
站在用户的角度思考问题,与客户深入沟通,找到武定网站设计与武定网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站设计、成都网站制作、外贸网站建设、企业官网、英文网站、手机端网站、网站推广、域名注册、虚拟空间、企业邮箱。业务覆盖武定地区。
修改表,添加默认值的语句如下:
alter
table
表名
add
constraint
df_time_19000101
default
'1900-1-1'
for
列名
注意把“表名”、“列名”替换成实际的名字。
另外df_time_19000101
是一个约束名,建议你把它命名为
df_表名_列名
的形式,这样可以避免其它表中存在相同的约束名。
另外“若输入时间为空”这个条件,直接通过给列赋予NULL值得话,就不能利用到默认值。所以注意在插入数据的时候或者不给定时间列的值使用默认值,或者必须给定值。
exec sp_configure 'allow up',1
reconfigure with override
go
update sysobjects set crdate='你要修改的日期' where name='表名' and xtype='u'
go
exec sp_configure 'allow up',0
reconfigure
UPDATE 表名
SET [制单日期] = '2012-08-06 11:22:12'
where [库房编号] = '036'
1、创建测试表,
create table test_date_add(id number, start_time date, end_time date);
2、插入测试数据
insert into test_date_add values(1,to_date('2013-05-27 20:27:54', 'yyyy-mm-dd hh24:mi:ss'),to_date('2013-05-30 23:58:58', 'yyyy-mm-dd hh24:mi:ss'));
insert into test_date_add values(2,to_date('2013-05-27 15:12:36', 'yyyy-mm-dd hh24:mi:ss'), to_date('2013-05-30 19:18:44', 'yyyy-mm-dd hh24:mi:ss'));
commit;
3、查询表中全量数据,select t.*, rowid from test_date_add t;
4、编写sql,日期时间起止都加5个小时, select t.*, start_time+5/24 s1, end_time+5/24 e1 from test_date_add t;
你的代码得到的运行 sql 为
update tblname set moddate = 2009-2-2 where autoid =2
可知 2009-2-2 会被认为是一个计算表示式计算结果为 2005
可知 moddate 被设置为了 2005 (数字类型) 2007转换为日期型后(1900年1月1日 + 2005 天就成了1905年6月29日)
你需要的正确的 sql 为
update tblname set moddate = '2009-2-2' where autoid =2
所以如 sq_zhuyi 那样,加入单引号就可以了