﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-我爱佳娃-随笔分类-DB相关</title><link>http://www.blogjava.net/alwayscy/category/20546.html</link><description /><language>zh-cn</language><lastBuildDate>Fri, 04 Sep 2009 01:32:59 GMT</lastBuildDate><pubDate>Fri, 04 Sep 2009 01:32:59 GMT</pubDate><ttl>60</ttl><item><title>mysqldump备份还原MYSQL数据库</title><link>http://www.blogjava.net/alwayscy/archive/2009/03/29/262738.html</link><dc:creator>我爱佳娃</dc:creator><author>我爱佳娃</author><pubDate>Sun, 29 Mar 2009 09:02:00 GMT</pubDate><guid>http://www.blogjava.net/alwayscy/archive/2009/03/29/262738.html</guid><wfw:comment>http://www.blogjava.net/alwayscy/comments/262738.html</wfw:comment><comments>http://www.blogjava.net/alwayscy/archive/2009/03/29/262738.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/alwayscy/comments/commentRss/262738.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/alwayscy/services/trackbacks/262738.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: mysqldump 是采用SQL级别的备份机制，它将数据表导成 SQL 脚本文件，在不同的 MySQL 版本之间升级时相对比较合适，这也是最常用的备份方法。&nbsp;&nbsp;<a href='http://www.blogjava.net/alwayscy/archive/2009/03/29/262738.html'>阅读全文</a><img src ="http://www.blogjava.net/alwayscy/aggbug/262738.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/alwayscy/" target="_blank">我爱佳娃</a> 2009-03-29 17:02 <a href="http://www.blogjava.net/alwayscy/archive/2009/03/29/262738.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>MYSQL更改ROOT用户密码以及设置权限</title><link>http://www.blogjava.net/alwayscy/archive/2009/02/12/254387.html</link><dc:creator>我爱佳娃</dc:creator><author>我爱佳娃</author><pubDate>Thu, 12 Feb 2009 06:31:00 GMT</pubDate><guid>http://www.blogjava.net/alwayscy/archive/2009/02/12/254387.html</guid><wfw:comment>http://www.blogjava.net/alwayscy/comments/254387.html</wfw:comment><comments>http://www.blogjava.net/alwayscy/archive/2009/02/12/254387.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/alwayscy/comments/commentRss/254387.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/alwayscy/services/trackbacks/254387.html</trackback:ping><description><![CDATA[update user set password = password ('xxxx') where user = "root";<br />
grant all privileges on *.* to root@'%' identified by 'xxxx';<br />
<br />
其它参数的例子：<br />
grant select,insert,update,delete,create,drop on vtdc.employee to joe@10.163.225.87 identified by '123';
<p>　　给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限，并设定口令为123。</p>
<p><br />
</p>
<p>要重启一次MYSQL才能使本地用户密码生效：</p>
<p>/usr/local/mysql/support-files/mysql.server restart</p>
<br />
<img src ="http://www.blogjava.net/alwayscy/aggbug/254387.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/alwayscy/" target="_blank">我爱佳娃</a> 2009-02-12 14:31 <a href="http://www.blogjava.net/alwayscy/archive/2009/02/12/254387.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ManyToMany关系中，使用非主键联合的方法</title><link>http://www.blogjava.net/alwayscy/archive/2008/10/27/236920.html</link><dc:creator>我爱佳娃</dc:creator><author>我爱佳娃</author><pubDate>Mon, 27 Oct 2008 09:30:00 GMT</pubDate><guid>http://www.blogjava.net/alwayscy/archive/2008/10/27/236920.html</guid><wfw:comment>http://www.blogjava.net/alwayscy/comments/236920.html</wfw:comment><comments>http://www.blogjava.net/alwayscy/archive/2008/10/27/236920.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/alwayscy/comments/commentRss/236920.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/alwayscy/services/trackbacks/236920.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 当ManyToMany或者ManyToOne定义时，JoinTable中referencedColumnName指向的是非主键(non PK columns)，将 报ClassCastException。这里有个简单解决办法。&nbsp;&nbsp;<a href='http://www.blogjava.net/alwayscy/archive/2008/10/27/236920.html'>阅读全文</a><img src ="http://www.blogjava.net/alwayscy/aggbug/236920.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/alwayscy/" target="_blank">我爱佳娃</a> 2008-10-27 17:30 <a href="http://www.blogjava.net/alwayscy/archive/2008/10/27/236920.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>PD11小技巧</title><link>http://www.blogjava.net/alwayscy/archive/2008/02/03/179167.html</link><dc:creator>我爱佳娃</dc:creator><author>我爱佳娃</author><pubDate>Sun, 03 Feb 2008 07:06:00 GMT</pubDate><guid>http://www.blogjava.net/alwayscy/archive/2008/02/03/179167.html</guid><wfw:comment>http://www.blogjava.net/alwayscy/comments/179167.html</wfw:comment><comments>http://www.blogjava.net/alwayscy/archive/2008/02/03/179167.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/alwayscy/comments/commentRss/179167.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/alwayscy/services/trackbacks/179167.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.blogjava.net/alwayscy/archive/2008/02/03/179167.html'>阅读全文</a><img src ="http://www.blogjava.net/alwayscy/aggbug/179167.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/alwayscy/" target="_blank">我爱佳娃</a> 2008-02-03 15:06 <a href="http://www.blogjava.net/alwayscy/archive/2008/02/03/179167.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>POSTGRESQL数据库在Windows下以管理员用户安装和简单命令</title><link>http://www.blogjava.net/alwayscy/archive/2007/08/12/136174.html</link><dc:creator>我爱佳娃</dc:creator><author>我爱佳娃</author><pubDate>Sun, 12 Aug 2007 07:56:00 GMT</pubDate><guid>http://www.blogjava.net/alwayscy/archive/2007/08/12/136174.html</guid><wfw:comment>http://www.blogjava.net/alwayscy/comments/136174.html</wfw:comment><comments>http://www.blogjava.net/alwayscy/archive/2007/08/12/136174.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/alwayscy/comments/commentRss/136174.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/alwayscy/services/trackbacks/136174.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 最近因为用HYPERIC产品，装了一下Postgres数据库，下面简说下在WINDOWS下安装的情况。&nbsp;下载那个直接解压版，解压在"$PG"目录下创建一个rootpass.txt文件，内容为数据库的超级用户密码。可以填个&#8220;p&#8221;，方便后面登陆。准备工作到此结束，下面的步骤以管理员身份执行。移动DLL文件[8.1.5及以上版本不需要这一步骤]：cd...&nbsp;&nbsp;<a href='http://www.blogjava.net/alwayscy/archive/2007/08/12/136174.html'>阅读全文</a><img src ="http://www.blogjava.net/alwayscy/aggbug/136174.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/alwayscy/" target="_blank">我爱佳娃</a> 2007-08-12 15:56 <a href="http://www.blogjava.net/alwayscy/archive/2007/08/12/136174.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Join用法，HQL的方法，Hibernate中的fetch</title><link>http://www.blogjava.net/alwayscy/archive/2007/07/26/132577.html</link><dc:creator>我爱佳娃</dc:creator><author>我爱佳娃</author><pubDate>Thu, 26 Jul 2007 08:44:00 GMT</pubDate><guid>http://www.blogjava.net/alwayscy/archive/2007/07/26/132577.html</guid><wfw:comment>http://www.blogjava.net/alwayscy/comments/132577.html</wfw:comment><comments>http://www.blogjava.net/alwayscy/archive/2007/07/26/132577.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/alwayscy/comments/commentRss/132577.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/alwayscy/services/trackbacks/132577.html</trackback:ping><description><![CDATA[<p>以下文字摘自：<a href="http://www.williamlong.info/info/archives/50.html">JOIN</a>,&nbsp; <a href="http://www.phpweblog.net/zwws/archive/2007/02/23/946.html">JOIN2</a>, <a href="http://www.hibernate.org/hib_docs/reference/en/html/queryhql.html">HQL</a>, <a href="http://www.blogjava.net/alex/archive/2006/12/01/84808.html">Fetch</a></p> <p>Join用法:</p> <p>主要有Inner Join 及 Outer Join:</p> <p>&nbsp;</p> <p>最常用的（默认是Inner）：</p> <p>Select &lt;要选择的字段&gt; From &lt;主要资料表&gt;</p> <p>　　&lt;Join 方式&gt; &lt;次要资料表&gt; [On &lt;Join 规则&gt;] <p>Inner Join 的主要精神就是 exclusive , 叫它做排他性吧! 就是讲 Join 规则不相符的资料就会被排除掉, 譬如讲在 Product 中有一项产品的供货商代码 (SupplierId), 没有出现在 Suppliers 资料表中, 那么这笔记录便会被排除掉 <p>&nbsp; <p>Outer Join: <p>Select &lt;要查询的字段&gt; From &lt;Left 资料表&gt; <p>　　&lt;Left | Right&gt; [Outer] Join &lt;Right 资料表&gt; On &lt;Join 规则&gt; <p>&nbsp; <p>语法中的 Outer 是可以省略的, 例如你可以用 Left Join 或是 Right Join, 在本质上, Outer Join 是 inclusive, 叫它做包容性吧! 不同于 Inner Join 的排他性, 因此在 Left Outer Join 的查询结果会包含所有 Left 资料表的资料, 颠倒过来讲, Right Outer Join 的查询就会包含所有 Right 资料表的资料 <p>&nbsp; <p>另外，还有全外联： <p><b>FULL JOIN </b><b>或 FULL OUTER JOIN  <p></b> <p>完整外部联接返回左表和右表中的所有行。当某行在另一个表中没有匹配行时，则另一个表的选择列表列包含空值。如果表之间有匹配行，则整个结果集行包含基表的数据值。 <p>&nbsp; <p>以及， <p><a>交叉联接 </a> <p>交叉联接返回左表中的所有行，左表中的每一行与右表中的所有行组合。交叉联接也称作笛卡尔积。 <p>没有 WHERE 子句的交叉联接将产生联接所涉及的表的笛卡尔积。第一个表的行数乘以第二个表的行数等于笛卡尔积结果集的大小。也就是说在没有 WHERE 子句的情况下，若表 A 有 3 行记录，表 B 有 6 行记录 : ： <p>SELECT A.*,B.* FROM 表A CROSS JOIN 表B <p>那以上语句会返回 18 行记录。 <p>&nbsp; <p>&nbsp; <p>Fetch: <p>在我们查询Parent对象的时候，默认只有Parent的内容，并不包含childs的信息，如果在Parent.hbm.xml里设置lazy="false"的话才同时取出关联的所有childs内容.<br>问题是我既想要hibernate默认的性能又想要临时的灵活性该怎么办？&nbsp; 这就是fetch的功能。我们可以把fetch与lazy="true"的关系类比为事务当中的编程式事务与声明式事务,不太准确，但是大概是这个意思。<br>总值，fetch就是在代码这一层给你一个主动抓取得机会. <p>Parent&nbsp;parent&nbsp;=&nbsp;(Parent)hibernateTemplate.execute(new&nbsp;HibernateCallback()&nbsp;{<br>public&nbsp;Object&nbsp;doInHibernate(Session&nbsp;session)&nbsp;throws&nbsp;HibernateException,&nbsp;SQLException&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Query&nbsp;q&nbsp;=&nbsp;session.createQuery(<br>"from&nbsp;Parent&nbsp;as&nbsp;parent&nbsp;"+<br>"&nbsp;left&nbsp;outer&nbsp;join&nbsp;fetch&nbsp;parent.childs&nbsp;" +<br>"&nbsp;where&nbsp;parent.id&nbsp;=&nbsp;:id"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;q.setParameter("id",new&nbsp;Long(15));<br>return&nbsp;(Parent)q.uniqueResult();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;});<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Assert.assertTrue(parent.getChilds().size()&nbsp;&gt; 0); <p>你可以在lazy="true"的情况下把fetch去掉，就会报异常. 当然，如果lazy="false"就不需要fetch了 <p>&nbsp; <p>&nbsp; <p>HQL一些特色方法： <p><tt>in</tt> and <tt>between</tt> may be used as follows: <pre>from DomesticCat cat where cat.name between 'A' and 'B'</pre><pre>from DomesticCat cat where cat.name in ( 'Foo', 'Bar', 'Baz' )</pre>
<p>and the negated forms may be written <pre>from DomesticCat cat where cat.name not between 'A' and 'B'</pre><pre>from DomesticCat cat where cat.name not in ( 'Foo', 'Bar', 'Baz' )</pre>
<p>Likewise, <tt>is null</tt> and <tt>is not null</tt> may be used to test for null values. 
<p>Booleans may be easily used in expressions by declaring HQL query substitutions in Hibernate configuration: <pre>&lt;property name="hibernate.query.substitutions"&gt;true 1, false 0&lt;/property&gt;</pre>
<p>This will replace the keywords <tt>true</tt> and <tt>false</tt> with the literals <tt>1</tt> and <tt>0</tt> in the translated SQL from this HQL: <pre>from Cat cat where cat.alive = true</pre>
<p>You may test the size of a collection with the special property <tt>size</tt>, or the special <tt>size()</tt> function. <pre>from Cat cat where cat.kittens.size &gt; 0</pre><pre>from Cat cat where size(cat.kittens) &gt; 0</pre>
<p>For indexed collections, you may refer to the minimum and maximum indices using <tt>minindex</tt> and <tt>maxindex</tt> functions. Similarly, you may refer to the minimum and maximum elements of a collection of basic type using the <tt>minelement</tt> and <tt>maxelement</tt> functions. <pre>from Calendar cal where maxelement(cal.holidays) &gt; current_date</pre><pre>from Order order where maxindex(order.items) &gt; 100</pre><pre>from Order order where minelement(order.items) &gt; 10000</pre>
<p>The SQL functions <tt>any, some, all, exists, in</tt> are supported when passed the element or index set of a collection (<tt>elements</tt> and <tt>indices</tt> functions) or the result of a subquery (see below). <pre>select mother from Cat as mother, Cat as kit
where kit in elements(foo.kittens)</pre><pre>select p from NameList list, Person p
where p.name = some elements(list.names)</pre><pre>from Cat cat where exists elements(cat.kittens)</pre><pre>from Player p where 3 &gt; all elements(p.scores)</pre><pre>from Show show where 'fizard' in indices(show.acts)</pre>
<p>Note that these constructs - <tt>size</tt>, <tt>elements</tt>, <tt>indices</tt>, <tt>minindex</tt>, <tt>maxindex</tt>, <tt>minelement</tt>, <tt>maxelement</tt> - may only be used in the where clause in Hibernate3. 
<p>Elements of indexed collections (arrays, lists, maps) may be referred to by index (in a where clause only): <pre>from Order order where order.items[0].id = 1234</pre><pre>select person from Person person, Calendar calendar
where calendar.holidays['national day'] = person.birthDay
    and person.nationality.calendar = calendar</pre><pre>select item from Item item, Order order
where order.items[ order.deliveredItemIndices[0] ] = item and order.id = 11</pre><pre>select item from Item item, Order order
where order.items[ maxindex(order.items) ] = item and order.id = 11</pre>
<p>The expression inside <tt>[]</tt> may even be an arithmetic expression. <pre>select item from Item item, Order order
where order.items[ size(order.items) - 1 ] = item</pre>
<p>HQL also provides the built-in <tt>index()</tt> function, for elements of a one-to-many association or collection of values. <pre>select item, index(item) from Order order 
    join order.items item
where index(item) &lt; 5</pre>
<p>Scalar SQL functions supported by the underlying database may be used <pre>from DomesticCat cat where upper(cat.name) like 'FRI%'</pre><img src ="http://www.blogjava.net/alwayscy/aggbug/132577.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/alwayscy/" target="_blank">我爱佳娃</a> 2007-07-26 16:44 <a href="http://www.blogjava.net/alwayscy/archive/2007/07/26/132577.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>