2010-10-08 64 views
-3

我有以下XML文件:如何使用XML更新我的SQL数据库?

<?xml version="1.0" encoding="utf-8"?> 
<Patients> 
    <Patient EMail="[email protected]"> 
    <FirstName>LeBron</FirstName> 
    <LastName>James</LastName> 
    </Patient> 
    <Patient EMail="[email protected]"> 
    <FirstName>Kobe</FirstName> 
    <LastName>Bryant</LastName> 
    </Patient> 
    <Patient EMail="[email protected]"> 
    <FirstName>Allen</FirstName> 
    <LastName>Iverson</LastName> 
    </Patient> 
</Patients> 

我想将它存放在我所成功/

做到,那么我增加了一些更多的数据相同的XML文件SQL数据库:

<?xml version="1.0" encoding="utf-8"?> 
<Patients> 
    <Patient EMail="[email protected]"> 
    <FirstName>LeBron</FirstName> 
    <LastName>James</LastName> 
    </Patient> 
    <Patient EMail="[email protected]"> 
    <FirstName>Kobe</FirstName> 
    <LastName>Bryant</LastName> 
    </Patient> 
    <Patient EMail="[email protected]"> 
    <FirstName>Allen</FirstName> 
    <LastName>Iverson</LastName> 
    </Patient> 
    <!-- New data starts here --> 
    <Patient EMail="[email protected]"> 
    <FirstName>tr</FirstName> 
    <LastName>rson</LastName> 
    </Patient> 
    <Patient EMail="[email protected]"> 
    <FirstName>Awerwren</FirstName> 
    <LastName>Iveww</LastName> 
    </Patient> 
</Patients> 

但它不会在运行时更新SQL数据库.....

我在做什么错?

+0

-1这里既没有XML也没有问题。 – Jay 2010-10-08 11:30:19

+3

你将不得不清除这个问题,否则它会被关闭。什么是数据库访问库和平台?你的更新代码是什么样的? – 2010-10-08 11:30:40

+1

我们不能建议你,我们不能建议你,因为没有人会明白你在说什么 – 2010-10-08 11:31:29

回答

1

根据您发布的内容,我猜测Patient表的FirstName和LastName列中可能存在主键或唯一键,并且第二次尝试将数据插入数据库时​​,此约束导致插入失败。

只是一个猜测。发布更多信息,也许我们可以为你缩小一点。

分享和享受。

+0

是主键在表中...解决方案? – DevKk 2010-10-08 11:58:58

+0

我在想同样的事情。如果我们错了,请发布有关您收到的任何SQL错误的更多详细信息,或者堆栈弹出的异常的跟踪。 – 2010-10-08 12:00:15

+1

@Kumar:如果FirstName和LastName列中存在主键,那么您将无法多次插入相同的名称。解决方案是在尝试重新插入数据之前删除数据,或者将代码更改为执行UPSERT或MERGE(取决于您的数据库)而不是INSERT。祝你好运。 – 2010-10-08 12:13:55

0

删除以前的数据库。用新的XML创建一个新的数据库。