📄 query_sql.po
字号:
#: index.docbook:448msgid """To use stored procedures with Hibernate the procedures/functions have to ""follow some rules. If they do not follow those rules they are not usable ""with Hibernate. If you still want to use these procedures you have to ""execute them via <literal>session.connection()</literal>. The rules are ""different for each database, since database vendors have different stored ""procedure semantics/syntax."msgstr """Para usar procedimientos almacenados con Hibernate los procedimientos tienen ""que seguir algunas reglas. Si no siguen esas reglas no son usables por ""Hibernate. Si aún quisieras usar estos procedimientos tendrías ""que ejecutarlos por medio de <literal>session.connection()</literal>. Las ""reglas son diferentes para cada base de datos, ya que los vendedores de base ""de datos tienen diferentes semánticas/sintáxis de ""procedimientos almacenados."#: index.docbook:455msgid """Stored procedure queries can't be paged with <literal>setFirstResult()/""setMaxResults()</literal>."msgstr """Las consultas de procedimientos almacenados no pueden ser paginadas con ""<literal>setFirstResult()/setMaxResults()</literal>."#: index.docbook:458msgid """Recommended call form is standard SQL92: <literal>{ ? = call functionName""(<parameters>) }</literal> or <literal>{ ? = call procedureName(<""parameters>}</literal>. Native call syntax is not supported."msgstr "Para Oracle se aplican las siguientes reglas:"#: index.docbook:463msgid "For Oracle the following rules apply:"msgstr """El procedimiento debe devolver un conjunto resultado. Esto se hace ""devolviendo un <literal>SYS_REFCURSOR</literal> en Oracle 9 o 10. En Oracle ""necesitas definir un tipo <literal>REF CURSOR</literal>."#: index.docbook:467msgid """A function must return a result set. The first parameter of a procedure must ""be an <literal>OUT</literal> that returns a result set. This is done by ""using a <literal>SYS_REFCURSOR</literal> type in Oracle 9 or 10. In Oracle ""you need to define a <literal>REF CURSOR</literal> type, see Oracle ""literature."msgstr """La forma recomendada es <literal>{ ? = call procName(<parameters>) }</""literal> o <literal>{ ? = call procName }</literal> (esto es más una ""regla de Oracle que una regla de Hibernate)."#: index.docbook:476msgid "For Sybase or MS SQL server the following rules apply:"msgstr "Para Sybase o MS SQL server se aplican las siguientes reglas:"#: index.docbook:480msgid """The procedure must return a result set. Note that since these servers can/""will return multiple result sets and update counts, Hibernate will iterate ""the results and take the first result that is a result set as its return ""value. Everything else will be discarded."msgstr """El procedimiento debe devolver un conjunto resultado. Nota que ya que estos ""servidores pueden y devolverán múltiples conjuntos resultados ""y cuentas de actualización, Hibernate iterará los resultados y ""tomará el primer resultado que sea un conjunto resultado como su ""valor a devolver. Todo lo demás será descartado."#: index.docbook:488msgid """If you can enable <literal>SET NOCOUNT ON</literal> in your procedure it ""will probably be more efficient, but this is not a requirement."msgstr """Si habilitas <literal>SET NOCOUNT ON</literal> en tu procedimiento ""será probablemente más eficiente, pero esto no es un ""requerimiento."#: index.docbook:498msgid "Custom SQL for create, update and delete"msgstr "SQL personalizado para crear, actualizar y borrar"#: index.docbook:500msgid """Hibernate3 can use custom SQL statements for create, update, and delete ""operations. The class and collection persisters in Hibernate already contain ""a set of configuration time generated strings (insertsql, deletesql, ""updatesql etc.). The mapping tags <literal><sql-insert></literal>, ""<literal><sql-delete></literal>, and <literal><sql-update></""literal> override these strings:"msgstr """Hibernate3 puede usar sentencias SQL personalizadas para las operaciones de ""crear, actualizar y borrar. Los persistidores de clases y colecciones en ""Hibernate ya contienen un conjunto de cadenas generadas en tiempo de ""configuración (insertsql, deletesql, updatesql, etc.). Las etiquetas ""de mapeo <literal><sql-insert></literal>, <literal><sql-delete></""literal>, y <literal><sql-update></literal> sobrescriben estas cadenas:"#: index.docbook:508msgid """<![CDATA[<class name=\"Person\">\n"" <id name=\"id\">\n"" <generator class=\"increment\"/>\n"" </id>\n"" <property name=\"name\" not-null=\"true\"/>\n"" <sql-insert>INSERT INTO PERSON (NAME, ID) VALUES ( UPPER(?), ? )</sql-""insert>\n"" <sql-update>UPDATE PERSON SET NAME=UPPER(?) WHERE ID=?</sql-update>\n"" <sql-delete>DELETE FROM PERSON WHERE ID=?</sql-delete>\n""</class>]]>"msgstr """<![CDATA[<class name=\"Person\">\n"" <id name=\"id\">\n"" <generator class=\"increment\"/>\n"" </id>\n"" <property name=\"name\" not-null=\"true\"/>\n"" <sql-insert>INSERT INTO PERSON (NAME, ID) VALUES ( UPPER(?), ? )</sql-""insert>\n"" <sql-update>UPDATE PERSON SET NAME=UPPER(?) WHERE ID=?</sql-update>\n"" <sql-delete>DELETE FROM PERSON WHERE ID=?</sql-delete>\n""</class>]]>"#: index.docbook:510msgid """The SQL is directly executed in your database, so you are free to use any ""dialect you like. This will of course reduce the portability of your mapping ""if you use database specific SQL."msgstr """El SQL se ejecuta directamente en tu base de datos, de modo que eres libre ""de usar cualquier dialecto que quieras. Esto reducirá, por supuesto, ""la portabilidad de tu mapeo si usas SQL específico de la base de ""datos."#: index.docbook:514msgid """Stored procedures are supported if the <literal>callable</literal> attribute ""is set:"msgstr """Los procedimientos almacenados son soportados si está establecido el ""atributo <literal>callable</literal>:"#: index.docbook:517msgid """<![CDATA[<class name=\"Person\">\n"" <id name=\"id\">\n"" <generator class=\"increment\"/>\n"" </id>\n"" <property name=\"name\" not-null=\"true\"/>\n"" <sql-insert callable=\"true\">{call createPerson (?, ?)}</sql-insert>\n"" <sql-delete callable=\"true\">{? = call deletePerson (?)}</sql-delete>\n"" <sql-update callable=\"true\">{? = call updatePerson (?, ?)}</sql-""update>\n""</class>]]>"msgstr """<![CDATA[<class name=\"Person\">\n"" <id name=\"id\">\n"" <generator class=\"increment\"/>\n"" </id>\n"" <property name=\"name\" not-null=\"true\"/>\n"" <sql-insert callable=\"true\">{call createPerson (?, ?)}</sql-insert>\n"" <sql-delete callable=\"true\">{? = call deletePerson (?)}</sql-delete>\n"" <sql-update callable=\"true\">{? = call updatePerson (?, ?)}</sql-""update>\n""</class>]]>"#: index.docbook:519msgid """The order of the positional parameters are currently vital, as they must be ""in the same sequence as Hibernate expects them."msgstr """El orden de los parámetros posicionales son actualmente vitales, ya ""que deben estar en la misma secuencia en que las espera Hibernate."#: index.docbook:522msgid """You can see the expected order by enabling debug logging for the ""<literal>org.hibernate.persister.entity</literal> level. With this level ""enabled Hibernate will print out the static SQL that is used to create, ""update, delete etc. entities. (To see the expected sequence, remember to not ""include your custom SQL in the mapping files as that will override the ""Hibernate generated static sql.)"msgstr """Puedes ver el orden esperado habilitando el registro de depuración ""para el nivel <literal>org.hibernate.persister.entity</literal>. Con este ""nivel habilitado, Hibernate imprimirá el SQL estático que se ""usa para crear, actualizar, borrar, etc. las entidades. (Para ver la ""secuencia esperada, recuerda no incluir tu SQL personalizado en los ficheros ""de mapeo ya que sobrescribirán el sql estático generado por ""Hibernate.)"#: index.docbook:529msgid """The stored procedures are in most cases (read: better do it than not) ""required to return the number of rows inserted/updated/deleted, as Hibernate ""has some runtime checks for the success of the statement. Hibernate always ""registers the first statement parameter as a numeric output parameter for ""the CUD operations:"msgstr """Los procedimientos almacenados son, en la mayoría de los casos ""(léase, mejor hacerlo que no hacerlo), obligados a devolver el ""número de filas insertadas/actualizadas/borradas, ya que Hibernate ""tiene algunas comprobaciones en tiempo de ejecución del éxito ""de la sentencia. Hibernate siempre registra el primer parámetro de la ""sentencia como un parámetro de salida numérico para las ""operaciones CUD:"#: index.docbook:535msgid """<![CDATA[CREATE OR REPLACE FUNCTION updatePerson (uid IN NUMBER, uname IN ""VARCHAR2)\n"" RETURN NUMBER IS\n""BEGIN\n""\n"" update PERSON\n"" set\n"" NAME = uname,\n"" where\n"" ID = uid;\n""\n"" return SQL%ROWCOUNT;\n""\n""END updatePerson;]]>"msgstr """<![CDATA[CREATE OR REPLACE FUNCTION updatePerson (uid IN NUMBER, uname IN ""VARCHAR2)\n"" RETURN NUMBER IS\n""BEGIN\n""\n"" update PERSON\n"" set\n"" NAME = uname,\n"" where\n"" ID = uid;\n""\n"" return SQL%ROWCOUNT;\n""\n""END updatePerson;]]>"#: index.docbook:539msgid "Custom SQL for loading"msgstr "SQL personalizado para carga"#: index.docbook:541msgid "You may also declare your own SQL (or HQL) queries for entity loading:"msgstr """Puedes también declarar tu propias consultas SQL (o HQL) para cargar ""entidades:"#: index.docbook:544msgid """<![CDATA[<sql-query name=\"person\">\n"" <return alias=\"pers\" class=\"Person\" lock-mode=\"upgrade\"/>\n"" SELECT NAME AS {pers.name}, ID AS {pers.id}\n"" FROM PERSON\n"" WHERE ID=?\n"" FOR UPDATE\n""</sql-query>]]>"msgstr """<![CDATA[<sql-query name=\"person\">\n"" <return alias=\"pers\" class=\"Person\" lock-mode=\"upgrade\"/>\n"" SELECT NAME AS {pers.name}, ID AS {pers.id} \n"" FROM PERSON \n"" WHERE ID=? \n"" FOR UPDATE\n""</sql-query>]]>"#: index.docbook:546msgid """This is just a named query declaration, as discussed earlier. You may ""reference this named query in a class mapping:"msgstr """Esto es sólo una declaración de consulta con nombrem como se ""ha discutido anteriormente. Puedes hacer referencia a esta consulta con ""nombre en un mapeo de clase:"#: index.docbook:549msgid """<![CDATA[<class name=\"Person\">\n"" <id name=\"id\">\n"" <generator class=\"increment\"/>\n"" </id>\n"" <property name=\"name\" not-null=\"true\"/>\n"" <loader query-ref=\"person\"/>\n""</class>]]>"msgstr """<![CDATA[<class name=\"Person\">\n"" <id name=\"id\">\n"" <generator class=\"increment\"/>\n"" </id>\n"" <property name=\"name\" not-null=\"true\"/>\n"" <loader query-ref=\"person\"/>\n""</class>]]>"#: index.docbook:551msgid "This even works with stored procedures."msgstr "Esto incluso funciona con procedimientos almacenados."#: index.docbook:553msgid "You may even define a query for collection loading:"msgstr "Puedes incluso definit una consulta para la carga de colecciones:"#: index.docbook:555msgid """<![CDATA[<set name=\"employments\" inverse=\"true\">\n"" <key/>\n"" <one-to-many class=\"Employment\"/>\n"" <loader query-ref=\"employments\"/>\n""</set>]]>"msgstr """<![CDATA[<set name=\"employments\" inverse=\"true\">\n"" <key/>\n"" <one-to-many class=\"Employment\"/>\n"" <loader query-ref=\"employments\"/>\n""</set>]]>"#: index.docbook:557msgid """<![CDATA[<sql-query name=\"employments\">\n"" <load-collection alias=\"emp\" role=\"Person.employments\"/>\n"" SELECT {emp.*}\n"" FROM EMPLOYMENT emp\n"" WHERE EMPLOYER = :id\n"" ORDER BY STARTDATE ASC, EMPLOYEE ASC\n""</sql-query>]]>"msgstr """<![CDATA[<sql-query name=\"employments\">\n"" <load-collection alias=\"emp\" role=\"Person.employments\"/>\n"" SELECT {emp.*}\n"" FROM EMPLOYMENT emp\n"" WHERE EMPLOYER = :id\n"" ORDER BY STARTDATE ASC, EMPLOYEE ASC\n""</sql-query>]]>"#: index.docbook:559msgid """You could even define an entity loader that loads a collection by join ""fetching:"msgstr """Podrías incluso definir un cargador de entidades que cargue una ""colección por recuperación por unión (join fetching):"#: index.docbook:562msgid """<![CDATA[<sql-query name=\"person\">\n"" <return alias=\"pers\" class=\"Person\"/>\n"" <return-join alias=\"emp\" property=\"pers.employments\"/>\n"" SELECT NAME AS {pers.*}, {emp.*}\n"" FROM PERSON pers\n"" LEFT OUTER JOIN EMPLOYMENT emp\n"" ON pers.ID = emp.PERSON_ID\n"" WHERE ID=?\n""</sql-query>]]>"msgstr """<![CDATA[<sql-query name=\"person\">\n"" <return alias=\"pers\" class=\"Person\"/>\n"" <return-join alias=\"emp\" property=\"pers.employments\"/> \n"" SELECT NAME AS {pers.*}, {emp.*}\n"" FROM PERSON pers\n"" LEFT OUTER JOIN EMPLOYMENT emp \n"" ON pers.ID = emp.PERSON_ID\n"" WHERE ID=?\n""</sql-query>]]>"msgid "ROLES_OF_TRANSLATORS"msgstr "<!--TRANS:ROLES_OF_TRANSLATORS-->"msgid "CREDIT_FOR_TRANSLATORS"msgstr "<!--TRANS:CREDIT_FOR_TRANSLATORS-->"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -