我有一个列表,其中有5个条目,标识列(PK)中的第一列,父表中是一个按ID(FK)与此列表相关的列。我在Web应用程序中使用C#来运行带有存储过程的ExecuteScalar,以将项目插入到父表中。
这是在SQL数据库中
列表:
ID INT (PK),
SKILL_SET_NAME VARCHAR
父母表:
ID INT,
SKILL_SET_ID INT (FK)
列表中的项目表:
1, SOMETHING
2, ANOTHER
3, ELSE
将声明插入父母表
INSERT INTO PARENT TABLE
(ID, SKILL_SET_ID)
VALUES
([NUMBER], 1)
实际代码(将ExecuteScalar更改为NonQuery,并且SkillSetID是外键)
public static void SetRIPSSkillSetDetails(int HDR_ID, int SkillSetID, string SkillSetOptional, int SkillSetRating)
{
ArrayList al = new ArrayList();
al.Add(new DictionaryEntry("@HDR_ID", HDR_ID));
al.Add(new DictionaryEntry("@SKILL_SET_ID", SkillSetID));
al.Add(new DictionaryEntry("@SKILL_SET_OPTIONAL", SkillSetOptional));
al.Add(new DictionaryEntry("@SKILL_SET_RATING", SkillSetRating));
Core.RunNonQuery("web", "[IPAM_GLOBAL_INSERT_PARTICIPANT_RATING_DTL]", al);
当代码运行ExecuteScalar时,我得到外键约束错误,请帮助
答案 0 :(得分:0)
存储过程被轰炸了,有人说你可以从VS中逐步执行sql存储过程,我该怎么做?