c = ''
f = c.match(/(?:\s|^)(?:@(?!(?:\d+|\w+?_|_\w+?)(?:\s(\[)|$)))(\w+)(?=\s|$)/i)
学生的结构
CREATE TRIGGER studenttr ON tstudentlog
AFTER INSERT
AS
BEGIN
INSERT INTO TABLE tstudent(sname, marks)
SELECT sname,marks FROM INSERTED
END
当我不将标记列中的数据传递到tstudentlog中时,将其插入记录
我收到一个错误:
无法将值NULL插入表“ tstudent”的“标记”列中;列不允许为空。 INSERT失败。该声明已终止。
我尝试了以下操作,但没有成功
CREATE TABLE tstudent
(
name VARCHAR(20),
marks FLOAT NOT NULL
)
ALTER TABLE tstudent ADD DEFAULT (0) FOR marks
我想传递NULL值tstudent表,并希望通过“保存在tstudent中的默认值”来处理这些情景。
我该如何实现?
答案 0 :(得分:2)
表中的默认值有很多问题, 在insert语句上使用合并会很好吗?
CREATE TRIGGER studenttr ON tstudentlog
AFTER INSERT
AS
BEGIN
INSERT INTO TABLE tstudent(sname, marks)
SELECT sname,coalesce(marks,0) FROM INSERTED
END