如何使用 Nhibernate 插入其他列等于 someValue 的列
How to insert into column where otherColumn Equal someValue using Nhibernate
首先,请原谅我对 Hibernate 的了解不足(我是一个 sql 粉丝),我做了很多研究,但我在下面找不到如何正确地做到这一点
我想做什么:我有一个名为 ClassCodes 的 table,我想在他的原始代码旁边插入每个等价代码
所以我的 2 列是 Originalcode 和 Equivalencecodes(假设 Originalcode 已经填满)
这是我希望得到帮助的函数
public void addEquivalenceCodes(string Code, string EquivalenceCode)
try
{
using (ISession session = OpenSession())
{
using (ITransaction transaction =session.BeginTransaction())
{
//**Here is what I don't know how to write properly in hibernate
String hql = "INSERT INTO ClassCodes(CodeEquiv)" + "VALUES ("+EquivalenceCode+") WHERE Originalcode = "+Code+";
Query query = session.createQuery(hql);
transaction.Commit();
}
}
}
catch (Exception e) { Console.WriteLine(e); }
}
这是我的地图,添加更多视觉帮助
<class name="ClassCodes, table="[T0101_ClassCode]" lazy="false">
<id name="Id" column="[Id]">
<generator class="native" />
</id>
<property name="OriginalCode" column="[OriginalCode]" />
<property name="EquivalanceCode" column="[EquivalanceCode]" />
etc...
我感谢我能得到的所有指南、提示和解释!
这不是插入,而是更新。
using (var session = new Configuration().Configure().BuildSessionFactory().OpenSession())
{
ClassCodes classcodes=session.Get<ClassCodes>(Originalcode);
classcodes.EquivalanceCode="EquivalanceCode value";
using (ITransaction transaction = session.BeginTransaction())
{
session.SaveOrUpdate(classcodes);
transaction.Commit();
}
}
首先,请原谅我对 Hibernate 的了解不足(我是一个 sql 粉丝),我做了很多研究,但我在下面找不到如何正确地做到这一点
我想做什么:我有一个名为 ClassCodes 的 table,我想在他的原始代码旁边插入每个等价代码
所以我的 2 列是 Originalcode 和 Equivalencecodes(假设 Originalcode 已经填满)
这是我希望得到帮助的函数
public void addEquivalenceCodes(string Code, string EquivalenceCode)
try
{
using (ISession session = OpenSession())
{
using (ITransaction transaction =session.BeginTransaction())
{
//**Here is what I don't know how to write properly in hibernate
String hql = "INSERT INTO ClassCodes(CodeEquiv)" + "VALUES ("+EquivalenceCode+") WHERE Originalcode = "+Code+";
Query query = session.createQuery(hql);
transaction.Commit();
}
}
}
catch (Exception e) { Console.WriteLine(e); }
}
这是我的地图,添加更多视觉帮助
<class name="ClassCodes, table="[T0101_ClassCode]" lazy="false">
<id name="Id" column="[Id]">
<generator class="native" />
</id>
<property name="OriginalCode" column="[OriginalCode]" />
<property name="EquivalanceCode" column="[EquivalanceCode]" />
etc...
我感谢我能得到的所有指南、提示和解释!
这不是插入,而是更新。
using (var session = new Configuration().Configure().BuildSessionFactory().OpenSession())
{
ClassCodes classcodes=session.Get<ClassCodes>(Originalcode);
classcodes.EquivalanceCode="EquivalanceCode value";
using (ITransaction transaction = session.BeginTransaction())
{
session.SaveOrUpdate(classcodes);
transaction.Commit();
}
}