我试图将一个外键添加到表中,它给我以下错误:
引用表'tbl_Person'中没有主键或候选键与外键'P_ID'中的引用列列表匹配.
我有一个tbl_Person,定义为:
P_ID INT (Primary Key)
f_Name,
l_Name
Run Code Online (Sandbox Code Playgroud)
另一个表是一个注释表,定义如下:
C_ID INT,
Comments,
P_ID (should be the foreign key)
Run Code Online (Sandbox Code Playgroud)
尝试创建一对多关系表,因此当用户添加注释时,它会被引用给他,同时,他可以在不初始化新注释的情况下添加到注释中.希望这有点意义.
例如:Randy Bing输入"我喜欢SQL",他的ID是1,f_Name是Randy,l_Name是Bing,他的评论是"我喜欢Sql".他的评论应该存储一个唯一的ID,并导入他的P_ID.
稍后当Randy想要使用与P_ID匹配的相同C_ID添加注释而不创建新的C_ID.
这是代码:
ALTER TABLE tbl_Comments
ADD CONSTRAINT P_ID
FOREIGN KEY (P_ID)
REFERENCES tbl_Person(P_ID)
Run Code Online (Sandbox Code Playgroud)
我接近正确的轨道吗?
我正在写一个小程序来比较两个List.如果值相同,我将它们添加到列表dup中,如果它们不同,我将它们添加到distinct.我注意到我的一些值被添加了,有些则没有,经过一段时间的调试后,我不确定是什么问题.有人可以放一点光吗?谢谢.
List<int> groupA = new List<int>();
List<int> groupB = new List<int>();
List<int> dups = new List<int>();
List<int> distinct = new List<int>();
groupA.Add(2);
groupA.Add(24);
groupA.Add(5);
groupA.Add(72);
groupA.Add(276);
groupA.Add(42);
groupA.Add(92);
groupA.Add(95);
groupA.Add(266);
groupA.Add(42);
groupA.Add(92);
groupB.Add(5);
groupB.Add(42);
groupB.Add(95);
groupA.Sort();
groupB.Sort();
for (int a = 0; a < groupA.Count; a++)
{
for (int b = 0; b < groupB.Count; b++)
{
groupA[a].CompareTo(groupB[b]);
if (groupA[a] == groupB[b])
{
dups.Add(groupA[a]);
groupA.Remove(groupA[a]);
groupB.Remove(groupB[b]);
}
}
distinct.Add(groupA[a]);
}
Run Code Online (Sandbox Code Playgroud) 任何人都可以为使用C#语言访问Active Directory的初学者提供一些教程吗?谢谢.
要使用WMI返回CPU使用率,是否从Win32_PerfFormattedData_PerfOS_Processor返回PercentProcessorTime?如果没有,我应该看哪一堂课?谢谢.
我有一个由存储过程填充的DataTable,以及包含该集合的数据表Requests(RequestNumber and Tasks(TaskId).当我通过任务到达第一个请求编号时,我将其添加到我的列表中,然后使用其他数据行,我检查列表以查看它们是否存在(if(dr["RequestNumber"].ToString() != acList[i].RequestNumber))如果有,我删除dataRow,如果不是,我将它们添加到列表.
这在顺序中很好用,但是如果数据行和列表偏离一个,则允许添加行.如果值存在于列表中,还有其他方法可以完成查找.
提前致谢.
foreach (DataRow dRow in dt.Rows)
{
DataRow dr = dt.NewRow();
dr["Project"] = dRow["Project"];
dr["RequestNumber"] = dRow["RequestNumber"];
dr["RequestId"] = dRow["RequestId"];
dr["TaskType"] = dRow["TaskType"];
dr["TaskId"] = dRow["TaskId"];
dr["TaskStatus"] = dRow["TaskStatus"];
dr["AssignedTo"] = dRow["AssignedTo"];
dr["DateDue"] = dRow["DateDue"];
if (acList.Count == 0)
{
acList.Add(new AssignedClass
{
Project = dr["Project"].ToString(),
RequestNumber = dr["RequestNumber"].ToString(),
RequestId = dr["RequestId"].ToString(),
TaskType = dr["TaskType"].ToString(),
TaskId = dr["TaskId"].ToString(),
TaskStatus = dr["TaskStatus"].ToString(),
AssignedTo = dr["AssignedTo"].ToString(),
DateDue = dr["DateDue"].ToString()
});
}
else …Run Code Online (Sandbox Code Playgroud) 对于我放入接口的方法,我一直收到"不是接口的成员",请参阅下面的代码:
public interface IDepartmentDataSource
{
IQueryable<Employee> Employees { get; }
IQueryable<Department> Departments { get; }
void Save();
}
Run Code Online (Sandbox Code Playgroud)
然后我实现接口并像这样使用它,
void IDepartmentDataSource.Save()
{
SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)
这是当我收到错误时,我可以看到员工和部门,但不是保存.当我转到定义的元数据时,我也没有看到Void Save(),但它在我的Interface文件中.
有人可以轻松一点,谢谢.
UPDATE ::当我说导航到定义时,这就是我所看到的,即使我删除.dll并重建,我收到同样的东西.
#region Assembly eManager.Domain.dll, v1.0.0.0
// C:\PluralSight\eManager\eManager.Web\bin\eManager.Domain.dll
#endregion
using System.Linq;
namespace eManager.Domain
{
public interface IDepartmentDataSource
{
IQueryable<Department> Departments { get; }
IQueryable<Employee> Employees { get; }
}
}
Run Code Online (Sandbox Code Playgroud) 我试图通过文本框通过aspx页面插入参数.我设置了我的参数,但是evertime I executenonquery,@ Username显示在数据库中而不是实际值.以下是我的代码.任何人都可以有点洞察力吗?
这是完整的代码:
protected void btn_SubmitUserInfo_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection();
conn = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=c:\\Documents and Settings\\xm\\My Documents\\Visual Studio 2010\\Projects\\CreateUser\\CreateUser\\App_Data\\UserInformation.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True; Integrated Security=SSPI");
//Open the connection outside of the try statement
conn.Open();
try
{
//Create a command for the stored procedure and tie it into the connection
SqlCommand cmd = new SqlCommand("InsertUserValues", conn);
//Set the command type so it know to execute the stored proc
cmd.CommandType = CommandType.StoredProcedure;
//Declare Parameters
SqlParameter …Run Code Online (Sandbox Code Playgroud) 我试图验证在Visual Basic中数字是否为小数。msgBox显示的数字有效时得到的结果。无效时,我不会收到msgBox,并且程序崩溃,并显示一条错误消息,提示数字必须小于无穷大。
我尝试添加另一个If Not IsNumeric(txt1.text)然后-但是收到了相同的结果。
我哪里做错了?
If IsNumeric(txt1.text) Then
msgBox("good")
Else
msgBox("not good")
End If
Run Code Online (Sandbox Code Playgroud) 嗨我试图使用jquery将选择输入的值分配给隐藏字段,尽管我一直收到操作符的无效左侧.我尝试使用hiddenProgramIds.ClientId,但只收到错误.有人可以轻松一点.谢谢.
$("#programSelector").on('click', function addProgram() {
$("<%= hiddenProgramIds %>").val() = $('#programSelector').val();
});
<asp:HiddenField ID="hiddenProgramIds" runat="server" Value="" />
Run Code Online (Sandbox Code Playgroud)