‫欢迎回来｡
‫在本视频中, 我们将使用链接来更新和删除数据｡
‫首先, 让我们更新数据｡
‫我们在这里创建一个新的方法, public void update, 我把它命名为update 20.
‫我想更新Tony的名字, 因为我想叫他Antonio或者Tony只是他名字的一个简短版本｡
‫所以我就用全名｡
‫首先, 我需要得到Tony对象, 你可以直接用这里的student类, 把它们叫做Tony.
‫即将数据上下文中的点号置为学生点号的第一位或默认值｡
‫它的作用是返回序列的第一个元素, 或者返回不包含任何元素的序列的默认值｡
‫这很好, 因为如果我们试图访问不存在的东西, 那么什么都不会起作用, 或者它不会起作用,
‫我们会得到错误和东西｡
‫所以在这里我只想说ste等于大号名等于Tony｡
‫我们当然也可以用equals, 但这是另一种方法, 对吧？
‫现在我们有了托尼, 我们现在能做的就是, 我想把托尼的名字改成安东尼奥和托尼.
‫现在我需要提交更改, 否则什么都不会发生｡
‫因此数据上下文不提交更改｡
‫现在我可以在数据网格上显示它｡
‫所以题源将是数据上下文点学生｡
‫所以我想看看所有的学生, 现在我会看到托尼不再是托尼了｡
‫他是安东尼奥｡
‫在运行代码之前, 我们当然需要调用这个方法｡
‫所以让我们在这里评论一下, 让我们更新一下我们的老朋友, 托尼｡
‫更新托尼｡
‫现在让我们运行代码｡
‫我们有我们所有的学生和卡拉还有安东尼奥.
‫所以我们改了托尼的名字｡
‫这很酷, 因为我们可以简单地得到整个对象, 并调整我们想要的组件｡
‫因此, 调整我们想要的所有属性, 然后我们可以提交更改, 就这样｡
‫所以这比说, 好的, 得到ID是某某的对象, 用户是某某的对象,
‫然后改变或更新X和Y, Z要容易得多｡
‫所以SQL比这样做要复杂得多｡
‫所以这是一个非常简单又酷的方法｡
‫所以你可以试着告诉其他学生｡
‫现在你可以更新讲座, 你可以更新大学和类似的东西, 用一种非常简单的方式｡
‫就像你在这里看到的, 现在我们删除一些用户, 因为我对这个James用户不满意,
‫不是因为他不是变性人, 而是因为他没有任何对象或任何讲座｡
‫而且他的名字是詹姆斯而不是詹姆斯｡
‫所以我犯了个错误, 所以我想完全删除这个对象｡
‫也许他刚离开大学所以不再是部队的一部分了｡
‫因此, 我想使用删除功能来执行此操作｡
‫那就删掉简｡
‫所以我要跟注了我得先找到简｡
‫所以学生James会在数据上下文中认为学生们第一个或者默认的, 这里它会作为t开始, 名字等于Jane｡
‫现在有一个数据上下文dot students方法, 正如您所看到的, 有很多｡
‫好吧, 我知道了
‫我想使用的方法是在提交时删除｡
‫它只会删除这个Jane对象, 我需要继续执行提交更改的上下文｡
‫像这样提交更改｡
‫现在如果我运行它｡
‫我可能会遇到错误｡
‫所以我会给你们看｡
‫让我们再给学生们演示一遍｡
‫让我们回到顶部更新Tony的地方｡
‫现在是健身房, 精英健身房｡
‫我们开始吧｡
‫它的工作, 所以我们是卡拉, 安东尼奥和莉莉｡
‫他们还在大学里, 詹姆斯已经不在了｡
‫所以在这个例子中, 在我的例子中, 它起作用了｡
‫但如果在此处删除时遇到错误, 您需要做的是重建连接｡
‫所以我会真实的告诉你们怎么做｡
‫所以如果它不适合你, 如果你遇到了错误, 那么你需要添加这三行代码,
‫而不是运行这行代码｡
‫因此, 首先, 您需要使用正确的连接字符串再次设置连接字符串｡
‫所以在我的例子中, 它不是学生管理器, 但在这个例子中它是到SQL的链接｡
‫所以这里的链接是完全一样的, 我在这里使用它｡
‫所以这只是一个bug修复或变通方案｡
‫好吧, 我会的
‫因此, 如果您遇到此错误, 这就是您可以解决它的方法｡
‫然后创建一个指向SQL数据､ 班级数据的链接, 连接名为DB的上下文, 然后可以将DB
‫students设置为项目源｡
‫好吧, 我会的
‫如果你遇到这个错误｡
‫但在我的情况下, 幸运的是它工作得很好, 所以我只是要保持它是｡
‫所以我们有这个删除博弈｡
‫好吧, 我会的
‫现在, 我们来总结一下我们所做的工作, 因为我们做了很多事情,
‫甚至有一些事情我还没有提到, 这也是非常重要的｡
‫你可能已经注意到, 每当你做这样的事情, 可能会有大量的错误｡
‫因此, 无论何时使用数据库等, 都可能会有很多错误｡
‫所以每当你提交或类似的东西, 事情只是可能会出错｡
‫那就试着接住｡
‫在这种情况下, 你要尝试捕捉, 因为否则, 嗯, 你可能会崩溃整个程序, 对吗？
‫这不是关于这个或这个的全部想法｡
‫所以你试着抓住任何你有潜在错误的地方, 这里有很多｡
‫因此, 请继续并尝试修复所有潜在的错误, 使您的程序永远不会崩溃｡
‫假设我们有一个错误的名字或者我们有｡
‫是的, 我们正在尝试访问一些不存在的东西｡
‫或者我们试图把某个东西放在某个地方, 而我们把它放在的地方, 它并不存在｡
‫所以这些事情你必须非常小心｡
‫现在让我们总结一下｡
‫让我们来看看我们有哪些不同的方法｡
‫所以我们有了这个插入大学, 这通常是我们,
‫首先, 摆脱所有的大学, 因为每次我们执行这个方法, 我们创建了这两个新的大学｡
‫所以我们每次都把它们加在上面｡
‫所以我们先把它全部删除, 然后再一步一步地添加它们｡
‫好吧, 我会的
‫现在这个execute命令只是执行一些SQL命令｡
‫所以这是从大学里删掉的｡
‫所以它删除了大学的所有内容｡
‫所以从我们旁边的university表中, 我们创建了一个特定类的对象, 这个类是从哪里来的,
‫因为我们自己还没有创建一个类条目呢？
‫它来自这个到SQL数据类的链接, 这很神奇, 因为它允许我们把表拖到这里,
‫然后我们可以把这些表作为类使用｡
‫这些属性只是类的属性, 我们可以访问和调整｡
‫因此, 我们可以创建对象, 并相应地调整它们, 甚至存储它们,
‫以便将它们存储在特定的数据上下文或表中｡
‫因此, 我们有这个数据上下文, 它是到SQL数据类的链接,
‫数据上下文也是通过我们的连接字符串连接的, 它是到数据库的连接｡
‫所以我们这里的连接, 数据连接｡
‫接下来, 我们了解了如何提交这些更改｡
‫我们添加一些内容, 然后将其添加到或insert on submit中, 然后提交｡
‫如果你想添加一些东西, 并且想在我们的数据网格上显示它, 这是一个非常基本的方法｡
‫对象, 它只是Zemo中的一个数据网格｡
‫然后, 我们可以继续并将此项目源设置为我们希望看到的数据上下文｡
‫所以在我们的例子中, 我们希望看到所有的大学, 这就是我们在这里得到的｡
‫学生也是如此｡
‫如您所见, 因为我们一次添加了多个对象, 所以我们只需要创建一个列表, 然后使用insert all并提交,
‫而不是insert on submit｡
‫我们创建了所有这些学生, Carla, Tony, Lily, Jane, 所有这些学生都带有附加信息,
‫比如性别, 比如大学ID等等｡
‫学生也有｡
‫所以你有名字, 性别和大学身份证｡
‫所以我们只是使用这些, 并为每一个学生增加价值｡
‫所以我们创造了新的物体｡
‫所以这是一个新的物体, 那是一个新的物体, 以此类推｡
‫因此, 我们有了包含所有学生对象的学生列表, 我们可以在看到任何效果之前再次提交这些更改｡
‫所以如果你不运行这条线路, 什么也不会发生｡
‫然后, 我们想让学生们看到同样的东西, 在课堂上｡
‫现在, 我们在学生和讲座之间建立了联系｡
‫所以我们现在有数学和历史课｡
‫我们刚才做的是, 好吧, 我们来创建一个新的学生讲座,
‫我们只给予卡拉的整个对象和数学的整个对象｡
‫最酷的是, 这个学生讲座知道自己需要什么样的信息｡
‫所以它把卡拉的ID和数学的概念, 然后在学生的课堂上创造出来｡
‫所以它已经被正确地教授了｡
‫因此, 我们不需要手动执行此操作, 但当然我们可以像这里看到的那样执行此操作｡
‫这就是我们所做的｡
‫或者, 这是一个, 让我们说, 没有那么好或没有那么漂亮, 简言之, 但这是完全好的｡
‫这里我用了学生号而不是学生ID,
‫当然我可以用学生号和Toni的ID, 这是一种非常精确的方法｡
‫但正如你所看到的, 它也能正常工作,
‫因为它只接受Toni的ID, 即使我们只给予出整个Toni对象, 我们也会在提交时插入它｡
‫所以我们插入了这些学生, 并提交了这些更改｡
‫然后学生们就可以上托尼大学了｡
‫我们刚退房｡
‫托妮在哪所大学｡
‫所以我们检查了一下｡
‫我们创造了这个托尼的学生, 我们创造了这个托尼的大学大学, 这是托尼大学｡
‫所以这也是非常好的｡
‫然后我们看到了如何让他的讲座, 如何让所有的学生从耶鲁｡
‫接下来是更有趣的事情, 我们必须连接表｡
‫这就是我们把大学和变性人结合起来的地方｡
‫所以我们不得不把学生和大学结合起来｡
‫更先进的是我们把讲座和大学结合起来｡
‫这是一份联合声明, 我得说, 这是相当复杂的, 因为我们走了很长的路, 从讲座到学生,
‫再到学生, 再到学生, 如此等等.
‫所以我们要把这些不同的表连接起来｡
‫然后, 我们了解了如何更新数据和删除数据｡
‫好极了｡
‫所以我想说这段视频已经足够长了｡
‫不是这个视频本身, 但这里的整个示例确实链接到了一个SQL示例, 但我希望您能沿着看｡
‫现在你知道了如何使用link to SQL, 你会看到它有多强大, 总的来说,
‫link是多么强大, 因为它总是同样的东西, 对吧？
‫这是相同类型的代码和相同的方法, 本例中的数据源是SQL｡
‫在另一种情况下, 它是一个XML, 而在我们的情况下, 它只是一个数组或列表｡
‫因此, 当涉及到处理数据和正确显示数据时, 链接是非常强大的｡
‫好极了｡
‫所以我希望你们喜欢这节课, 下节课再见｡