Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL Server中具有表的列名的默认约束_Sql_Sql Server_Sql Server 2008 - Fatal编程技术网

SQL Server中具有表的列名的默认约束

SQL Server中具有表的列名的默认约束,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,当我尝试上面的语句时,我得到了以下错误。有什么解决办法吗 Msg 128,15级,状态1,第1行 在此上下文中不允许使用名称“FName”。有效表达式是常量、常量表达式和(在某些上下文中)变量。不允许使用列名 如果不需要编辑,可以使用计算列 CREATE TABLE #temp (FName VARCHAR(10), LName VARCHAR(10), FullName VARCHAR(21) DEFAULT(FName+' '+LName) ); 如果不需要编辑,可以使用计

当我尝试上面的语句时,我得到了以下错误。有什么解决办法吗

Msg 128,15级,状态1,第1行 在此上下文中不允许使用名称“FName”。有效表达式是常量、常量表达式和(在某些上下文中)变量。不允许使用列名


如果不需要编辑,可以使用计算列

CREATE TABLE #temp
(FName    VARCHAR(10),
 LName    VARCHAR(10),
 FullName VARCHAR(21) DEFAULT(FName+' '+LName)
);

如果不需要编辑,可以使用计算列

CREATE TABLE #temp
(FName    VARCHAR(10),
 LName    VARCHAR(10),
 FullName VARCHAR(21) DEFAULT(FName+' '+LName)
);

或者希望
FullName
始终为
FName+''+LName
,然后将其设为计算列。或者您只需要设置初始值,然后使用before insert触发器。感谢您提供的解决方法。或者您希望
FullName
始终为
FName+''+LName
,然后将其设为计算列。或者您只需要设置初始值,然后使用插入前触发器。感谢您提供的解决方法。