我有2个数据库表,我想根据公共列之间的匹配更新第一个表。这是我的代码:
solution = sp.dsolve(equation)
display(solution)
我的代码似乎没有给我预期的结果,有人能告诉我是否有更好的方法来实现我想要实现的目标?
答案 0 :(得分:2)
您可以使用公用表,然后更新。更新匹配列后,您可以按byte[] byteImage;
if (pictureBox1.Image == null || name.Text == string.Empty)
{
byteImage = new byte[0];
MessageBox.Show("قم بالتاكد من ادخال كل البيانات اولاً واختيار الصورة ", "عملية الاضافة", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
MemoryStream ms = new MemoryStream();
pictureBox1.Image.Save(ms, pictureBox1.Image.RawFormat);
byteImage = ms.ToArray();
MessageBox.Show("تمت عملية الاضافة ", "عملية الاضافة", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
Update ... Where IS NULL
答案 1 :(得分:0)
我认为你可以像这样写一个简单的UPDATE(不需要使用CTE)。在这种格式中,您可以注释UPDATE行并使用SELECT查看测试结果:
UPDATE A SET InReleasenotes = CASE WHEN B.functionname IS NULL THEN 'N' ELSE 'Y' END
/* SELECT * */
FROM TestingTool_WeeklyReports A
LEFT JOIN TestDS_DSReleaseNotes B ON A.Datasourcename = B.functionname;
示例数据:
CREATE TABLE TestingTool_WeeklyReports (Datasourcename VARCHAR(20), InReleasenotes VARCHAR(1))
INSERT INTO TestingTool_WeeklyReports VALUES ('AAA',NULL)
INSERT INTO TestingTool_WeeklyReports VALUES ('BBB',NULL)
CREATE TABLE TestDS_DSReleaseNotes (functionname VARCHAR(20))
INSERT INTO TestDS_DSReleaseNotes VALUES ('AAA');
更新后的输出:
Datasourcename InReleasenotes
AAA Y
BBB N