📄 batch.po
字号:
"The pseudo-syntax for <literal>UPDATE</literal> and <literal>DELETE</""literal> statements is: <literal>( UPDATE | DELETE ) FROM? EntityName (WHERE ""where_conditions)?</literal>. Some points to note:"msgstr """<literal>UPDATE</literal>와 <literal>DELETE</literal> 문장들에 대한 유사 구문""은 다음과 같다: <literal>( UPDATE | DELETE ) FROM? EntityName (WHERE ""where_conditions)?</literal>. 노트할 몇 가지:"#. Tag: para#: batch.xml:130#, no-c-formatmsgid "In the from-clause, the FROM keyword is optional"msgstr "from-절에서, FROM 키워드는 옵션이다"#. Tag: para#: batch.xml:135#, no-c-formatmsgid """There can only be a single entity named in the from-clause; it can ""optionally be aliased. If the entity name is aliased, then any property ""references must be qualified using that alias; if the entity name is not ""aliased, then it is illegal for any property references to be qualified."msgstr """from-절 내에 한 개의 명명된 엔티티가 오직 존재할 수 있다; 그것은 선택적으로 ""alias될 수 있다. 만일 엔티티 이름이 alias되면, 그때 임의의 프로퍼티 참조들은 ""그 alias를 사용하여 수식되어야 한다; 만일 엔티티 이름이 alias되지 않을 경우, ""임의의 프로퍼티 참조들에 대해 수식되는 것은 규칙에 어긋난다."#. Tag: para#: batch.xml:143#, no-c-formatmsgid """No <link linkend=\"queryhql-joins-forms\">joins</link> (either implicit or ""explicit) can be specified in a bulk HQL query. Sub-queries may be used in ""the where-clause; the subqueries, themselves, may contain joins."msgstr """<xref linkend=\"queryhql-joins-forms\">join들</xref>은 (함축적이든 명시적이""든) 대량 HQL 질의 속에 지정될 수 없다. 서브-질의들이 where-절에 사용될 수 있""다; 서브질의들 그 자신들은 조인들을 포함할 수 있다."#. Tag: para#: batch.xml:150#, no-c-formatmsgid "The where-clause is also optional."msgstr "where-절 또한 옵션이다."#. Tag: para#: batch.xml:156#, no-c-formatmsgid """As an example, to execute an HQL <literal>UPDATE</literal>, use the ""<literal>Query.executeUpdate()</literal> method (the method is named for ""those familiar with JDBC's <literal>PreparedStatement.executeUpdate()</""literal>):"msgstr """하나의 예제로서, 한 개의 HQL <literal>UPDATE</literal>를 실행하기 위해, ""<literal>Query.executeUpdate()</literal> 메소드(이 메소드는 JDBC의 ""<literal>PreparedStatement.executeUpdate()</literal>와 유사하게 명명된다)를 ""사용하라:"#. Tag: programlisting#: batch.xml:162#, no-c-formatmsgid """<![CDATA[Session session = sessionFactory.openSession();\n""Transaction tx = session.beginTransaction();\n""\n""String hqlUpdate = \"update Customer c set c.name = :newName where c.name = :""oldName\";\n""// or String hqlUpdate = \"update Customer set name = :newName where name = :""oldName\";\n""int updatedEntities = s.createQuery( hqlUpdate )\n"" .setString( \"newName\", newName )\n"" .setString( \"oldName\", oldName )\n"" .executeUpdate();\n""tx.commit();\n""session.close();]]>"msgstr ""#. Tag: para#: batch.xml:164#, no-c-formatmsgid """HQL <literal>UPDATE</literal> statements, by default do not effect the <link ""linkend=\"mapping-declaration-version\">version</link> or the <link linkend=""\"mapping-declaration-timestamp\">timestamp</link> property values for the ""affected entities; this is in keeping with the EJB3 specification. However, ""you can force Hibernate to properly reset the <literal>version</literal> or ""<literal>timestamp</literal> property values through the use of a ""<literal>versioned update</literal>. This is achieved by adding the ""<literal>VERSIONED</literal> keyword after the <literal>UPDATE</literal> ""keyword."msgstr """HQL <literal>UPDATE</literal> 문장들은 디폴트로 영향받는 엔티티들에 대한 ""<xref linkend=\"mapping-declaration-version\">version</xref> 또는 <xref ""linkend=\"mapping-declaration-timestamp\">timestamp</xref> 프로퍼티 값들에 영""향을 주지 않는다; 이것은 EJB3 명세서에서 유지되고 있다. 하지만 당신은 하이버""네이트로 하여금 <literal>versioned update</literal>의 사용을 통해 ""<literal>version</literal> 또는 <literal>timestamp</literal> 프로퍼티 값들을 ""적절하게 재설정하도록 강제할 수 있다. 이것은 <literal>UPDATE</literal> 키워""드 뒤에 <literal>VERSIONED</literal> 키워드를 추가시켜서 성취된다."#. Tag: programlisting#: batch.xml:174#, no-c-formatmsgid """<![CDATA[Session session = sessionFactory.openSession();\n""Transaction tx = session.beginTransaction();\n""String hqlVersionedUpdate = \"update versioned Customer set name = :newName ""where name = :oldName\";\n""int updatedEntities = s.createQuery( hqlUpdate )\n"" .setString( \"newName\", newName )\n"" .setString( \"oldName\", oldName )\n"" .executeUpdate();\n""tx.commit();\n""session.close();]]>"msgstr ""#. Tag: para#: batch.xml:176#, no-c-formatmsgid """Note that custom version types (<literal>org.hibernate.usertype.""UserVersionType</literal>) are not allowed in conjunction with a ""<literal>update versioned</literal> statement."msgstr """맞춤형 version 타입들(<literal>org.hibernate.usertype.UserVersionType</""literal>)은 <literal>update versioned</literal> 문장과 함께 사용하는 것이 허""용되지 않음을 노트하라."#. Tag: para#: batch.xml:181#, no-c-formatmsgid """To execute an HQL <literal>DELETE</literal>, use the same <literal>Query.""executeUpdate()</literal> method:"msgstr """HQL <literal>DELETE</literal>를 실행하려면, 같은 메소드 <literal>Query.""executeUpdate()</literal>를 사용하라:"#. Tag: programlisting#: batch.xml:186#, no-c-formatmsgid """<![CDATA[Session session = sessionFactory.openSession();\n""Transaction tx = session.beginTransaction();\n""\n""String hqlDelete = \"delete Customer c where c.name = :oldName\";\n""// or String hqlDelete = \"delete Customer where name = :oldName\";\n""int deletedEntities = s.createQuery( hqlDelete )\n"" .setString( \"oldName\", oldName )\n"" .executeUpdate();\n""tx.commit();\n""session.close();]]>"msgstr ""#. Tag: para#: batch.xml:188#, no-c-formatmsgid """The <literal>int</literal> value returned by the <literal>Query.executeUpdate""()</literal> method indicate the number of entities effected by the ""operation. Consider this may or may not correlate to the number of rows ""effected in the database. An HQL bulk operation might result in multiple ""actual SQL statements being executed, for joined-subclass, for example. The ""returned number indicates the number of actual entities affected by the ""statement. Going back to the example of joined-subclass, a delete against ""one of the subclasses may actually result in deletes against not just the ""table to which that subclass is mapped, but also the \"root\" table and ""potentially joined-subclass tables further down the inheritence hierarchy."msgstr """<literal>Query.executeUpdate()</literal> 메소드에 의해 반환되는 ""<literal>int</literal> 값은 그 오퍼레이션에 의해 영향받은 엔티티들의 개수를 ""나타낸다. 이것이 데이터베이스 내에서 영향받은 행들의 개수와 상관이 있는지 없""는지 여부를 살펴보자. HQL 대량 오퍼레이션은 예를 들어 joined-subclass의 경우""에 실행 중인 여러 개의 실제 SQL 문장들로 귀결될 수 있다. 반환되는 숫자는 그 ""문장에 의해 영향받은 실제 엔티티들의 개수를 나타낸다. joined-subclass 예제로 ""되돌아가면, 서브 클래스들 중 하나에 대한 삭제는 단지 그 서브클래스가 매핑되""어 있는 테이블에 대한 삭제 뿐만 아니라 또한 \"루트\" 테이블과 상속 계층에서 ""더 내려온 잠정적으로 조인된-서브클래스 테이블들에 대한 삭제들로 귀결될 수 있""다."#. Tag: para#: batch.xml:199#, no-c-formatmsgid """The pseudo-syntax for <literal>INSERT</literal> statements is: ""<literal>INSERT INTO EntityName properties_list select_statement</literal>. ""Some points to note:"msgstr """장래의 배포본들에서 전달될 대량 HQL 오퍼레이션들에 대한 몇 가지 제한들이 현""재 존재함을 노트하라; 상세한 것은 JIRA 로드맵을 참조하라. <literal>INSERT</""literal> 문장들을 위한 유사-구문은 다음과 같다: <literal>INSERT INTO ""EntityName properties_list select_statement</literal>. 노트할 몇 가지:"#. Tag: para#: batch.xml:207#, no-c-formatmsgid """Only the INSERT INTO ... SELECT ... form is supported; not the INSERT ""INTO ... VALUES ... form."msgstr """오직 INSERT INTO ... SELECT ... 형식 만일 지원된다; INSERT INTO ... ""VALUES ... 형식은 지원되지 않는다."#. Tag: para#: batch.xml:210#, no-c-formatmsgid """The properties_list is analogous to the <literal>column speficiation</""literal> in the SQL <literal>INSERT</literal> statement. For entities ""involved in mapped inheritence, only properties directly defined on that ""given class-level can be used in the properties_list. Superclass properties ""are not allowed; and subclass properties do not make sense. In other words, ""<literal>INSERT</literal> statements are inherently non-polymorphic."msgstr """properties_list는 SQL <literal>INSERT</literal> 내에서 <literal>column ""speficiation</literal>과 유사하다. 매핑된 상속에 참여하는 엔티티들의 경우, ""그 주어진 클래스-레벨 상에 직접 정의된 프로퍼티들 만이 properties_list에 사용""될 수 있다. 슈퍼클래스 프로퍼티들은 허용되지 않는다; 그리고 서브클래스 프로퍼""티들은 의미가 없다. 달리 말해 <literal>INSERT</literal> 문장들은 본래적으로 ""다형적이지 않다."#. Tag: para#: batch.xml:220#, no-c-formatmsgid """select_statement can be any valid HQL select query, with the caveat that the ""return types must match the types expected by the insert. Currently, this is ""checked during query compilation rather than allowing the check to relegate ""to the database. Note however that this might cause problems between ""Hibernate <literal>Type</literal>s which are <emphasis>equivalent</emphasis> ""as opposed to <emphasis>equal</emphasis>. This might cause issues with ""mismatches between a property defined as a <literal>org.hibernate.type.""DateType</literal> and a property defined as a <literal>org.hibernate.type.""TimestampType</literal>, even though the database might not make a ""distinction or might be able to handle the conversion."msgstr """select_statement는 반환 타입들이 insert에 의해 기대되는 타입들과 일치해야 한""다는 단서 하에 임의의 유효한 HQL select 질의일 수 있다. 현재 이것은 체크를 데""이터베이스로 이관시키는 것을 허용하기 보다는 질의 컴파일 동안에 체크된다. 하""지만 이것은 <emphasis>equal</emphasis>과는 대조적으로 <emphasis>등가인""(equivalent)</emphasis> Hibernate <literal>Type</literal>들 사이에서 문제점들""을 일으킬 수도 있음을 노트하라. 비록 데이터베이스가 구별짓지 않을 수 있거나 ""변환을 처리할 수 있을 지라도, 이것은 <literal>org.hibernate.type.DateType</""literal>로서 정의된 프로퍼티와 <literal>org.hibernate.type.TimestampType</""literal>으로 정의된 프로퍼티 사이에 불일치 쟁점들을 일으킨다."#. Tag: para#: batch.xml:232#, no-c-formatmsgid """For the id property, the insert statement gives you two options. You can ""either explicitly specify the id property in the properties_list (in which ""case its value is taken from the corresponding select expression) or omit it ""from the properties_list (in which case a generated value is used). This ""later option is only available when using id generators that operate in the ""database; attempting to use this option with any \"in memory\" type ""generators will cause an exception during parsing. Note that for the ""purposes of this discussion, in-database generators are considered to be ""<literal>org.hibernate.id.SequenceGenerator</literal> (and its subclasses) ""and any implementors of <literal>org.hibernate.id.""PostInsertIdentifierGenerator</literal>. The most notable exception here is ""<literal>org.hibernate.id.TableHiLoGenerator</literal>, which cannot be used ""because it does not expose a selectable way to get its values."msgstr """id 프로퍼티의 경우, insert 문장은 당신에게 두 개의 옵션을 준다. 당신은 ""properties_list 내에 id 프로퍼티를 명시적으로 지정할 수 있거나(그것의 값이 대""응하는 select 표현식으로부터 얻어진 경우) 또는 properties_list에서 그것을 생""략할 수도 있다 (산출된 값이 사용되는 경우). 이 후자의 옵션은 데이터베이스 내""에서 연산되는 id 연산자들을 사용할 때에만 이용 가능하다; 임의의 \"메모리 내""\" 타입 연산자들과 함께 이 옵션을 사용하려고 시도하는 것은 파싱 동안에 예외상""황을 일으킬 것이다. 이 논의의 목적 상, 데이터베이스 내 산출자(generator)들은 ""<literal>org.hibernate.id.SequenceGenerator</literal> (그리고 그것의 서브클래""스들) 그리고 임의의 <literal>org.hibernate.id.PostInsertIdentifierGenerator</""literal>의 구현자들이라고 간주됨을 노트하라. 여기서 가장 주목할 만한 예외상황""은 그것이 그것의 값들을 얻기 위한 select 가능한 방법을 노출시키지 않기 때문ㅇ""에 사용될 수 없는 <literal>org.hibernate.id.TableHiLoGenerator</literal>이다."#. Tag: para#: batch.xml:247#, no-c-formatmsgid """For properties mapped as either <literal>version</literal> or ""<literal>timestamp</literal>, the insert statement gives you two options. ""You can either specify the property in the properties_list (in which case ""its value is taken from the corresponding select expressions) or omit it ""from the properties_list (in which case the <literal>seed value</literal> ""defined by the <literal>org.hibernate.type.VersionType</literal> is used)."msgstr """<literal>version</literal> 또는 <literal>timestamp</literal>로서 매핑된 프로""퍼티들의 경우에, insert 문장은 당신에게 두 개의 옵션들을 준다. 당신은 ""properties_list 내에 그 프로퍼티를 지정할 수 있거나 (그 것의 값이 대응하는 ""select 표현식으로부터 얻어진 경우) 또는 properties_list에서 그것을 생략할 수 ""있다 (<literal>org.hibernate.type.VersionType</literal>에 의해 정의된 ""<literal>seed value</literal> 값이 사용되는 경우)."#. Tag: para#: batch.xml:257#, no-c-formatmsgid "An example HQL <literal>INSERT</literal> statement execution:"msgstr "예제 HQL <literal>INSERT</literal> 문장 실행:"#. Tag: programlisting#: batch.xml:261#, no-c-formatmsgid """<![CDATA[Session session = sessionFactory.openSession();\n""Transaction tx = session.beginTransaction();\n""\n""String hqlInsert = \"insert into DelinquentAccount (id, name) select c.id, c.""name from Customer c where ...\";\n""int createdEntities = s.createQuery( hqlInsert )\n"" .executeUpdate();\n""tx.commit();\n""session.close();]]>"msgstr ""
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -