用触发器,我当你的id是自增长的,如果不是请自行修改(不是更容一点,update的时候不用max了) CREATE TRIGGER DefaultValue ON table1 INSTEAD OF INSERT AS BEGIN INSERT INTO table1(name) SELECT isnull(num,'') FROM inserted if (SELECT name FROM inserted) is null update table1 set name=convert(varchar,id) where id=(select max(id) from table1) END
如果id不是自增长就这样 CREATE TRIGGER DefaultValue ON table1 INSTEAD OF INSERT AS BEGIN INSERT INTO table1(id,name) SELECT id,isnull(num,convert(varchar,id)) FROM inserted END
CREATE TRIGGER DefaultValue
ON table1
INSTEAD OF INSERT
AS
BEGIN
INSERT INTO table1(name) SELECT isnull(num,'') FROM inserted
if (SELECT name FROM inserted) is null
update table1 set name=convert(varchar,id) where id=(select max(id) from table1)
END
CREATE TRIGGER DefaultValue
ON table1
INSTEAD OF INSERT
AS
BEGIN
INSERT INTO table1(id,name) SELECT id,isnull(num,convert(varchar,id)) FROM inserted
END