Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.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中出现错误1774_Sql_Sql Server_Foreign Keys_Sql Server 2008 R2_Fact Table - Fatal编程技术网

SQL Server中出现错误1774

SQL Server中出现错误1774,sql,sql-server,foreign-keys,sql-server-2008-r2,fact-table,Sql,Sql Server,Foreign Keys,Sql Server 2008 R2,Fact Table,我试图在数据库中创建一个事实表,因此需要插入大量外键。尝试插入特定外键时出现以下错误: 外键的引用列列表中的列数 “'%1!'”与被引用数据库中的主键不匹配 表''%1!'' 我不明白为什么会出现此错误,因为fkey具有相同的数据类型 谢谢 您需要将引用表中的所有主键列作为外键添加到目标表中。您需要将引用表中的所有主键列作为外键添加到目标表中。这说明原始列的数据类型与所创建表中的列的数据类型不同,但是:nvarchar(30)在一个表中允许为空,而在另一个表中不允许为空或类似的情况?您可以将创建

我试图在数据库中创建一个事实表,因此需要插入大量外键。尝试插入特定外键时出现以下错误:

外键的引用列列表中的列数 “'%1!'”与被引用数据库中的主键不匹配 表''%1!''

我不明白为什么会出现此错误,因为fkey具有相同的数据类型


谢谢

您需要将引用表中的所有主键列作为外键添加到目标表中。

您需要将引用表中的所有主键列作为外键添加到目标表中。

这说明原始列的数据类型与所创建表中的列的数据类型不同,但是:nvarchar(30)在一个表中允许为空,而在另一个表中不允许为空或类似的情况?您可以将创建脚本粘贴到其中并报告链接。它告诉我,原始列的数据类型与创建表中的列的数据类型不同,而它的数据类型是:nvarchar(30)在一个表中是否允许NULL,而在另一个表或类似的表中不允许NULL?您可以将创建脚本粘贴到其中并报告链接。它清楚地表明:您的FK似乎包含的列太少或太多-这不是数据类型问题-这是列数错误的简单问题。任何FK都必须引用整个PK-如果PK中有五列,那么您的FK也必须是五列。请明确说明:您的FK似乎包含的列太少或太多-这不是数据类型问题-这只是列数错误的简单问题。任何FK都必须引用整个PK-如果PK中有五列,则FK也必须是五列