﻿<?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-当幸福来敲门</title><link>http://www.blogjava.net/lucky/</link><description>平凡的世界</description><language>zh-cn</language><lastBuildDate>Sun, 23 Nov 2008 00:29:52 GMT</lastBuildDate><pubDate>Sun, 23 Nov 2008 00:29:52 GMT</pubDate><ttl>60</ttl><item><title>在局域网中怎样登陆别的电脑的默认共享，对方已经将guest用户禁用了？</title><link>http://www.blogjava.net/lucky/archive/2008/11/19/241274.html</link><dc:creator>Lucky</dc:creator><author>Lucky</author><pubDate>Wed, 19 Nov 2008 00:53:00 GMT</pubDate><guid>http://www.blogjava.net/lucky/archive/2008/11/19/241274.html</guid><wfw:comment>http://www.blogjava.net/lucky/comments/241274.html</wfw:comment><comments>http://www.blogjava.net/lucky/archive/2008/11/19/241274.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lucky/comments/commentRss/241274.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lucky/services/trackbacks/241274.html</trackback:ping><description><![CDATA[<h3 class="post-title entry-title">
<a href="http://xplucky.blogspot.com/2007/06/guest.html"><br />
</a>
</h3>
笔者的很多朋友都曾遇到过这样的问题：在安装了Windows
XP的计算机上，即使网络连接和共享设置正确(如IP地址属于同一子网，启用了TCP/IP上的NetBIOS，防火墙软件没有禁止文件共享需要的
135、137、138、139等端口)，使用其他系统(包括Windows
9X/Me/2000/XP等)的用户仍然无法访问该计算机。我们应该怎样解决这一问题呢?<br />
<br />
默
认情况下，Windows XP的本地安全设置要求进行网络访问的用户全部采用来宾方式。同时，在Windows
XP安全策略的用户权利指派中又禁止Guest用户通过网络访问系统。这样两条相互矛盾的安全策略导致了网内其他用户无法通过网络访问使用Windows
XP的计算机。你可采用以下方法解决。<br />
<br />
方法一 解除对Guest账号的限制<br />
<br />
点击&#8220;开始&#8594;运行&#8221;，在&#8220;运行&#8221;对话框中输入
&#8220;GPEDIT.MSC&#8221;，打开组策略编辑器，依次选择&#8220;计算机配置&#8594;Windows设置&#8594;安全设置&#8594;本地策略&#8594;用户权利指派&#8221;，双击&#8220;拒绝从网络访问这
台计算机&#8221;策略，删除里面的&#8220;GUEST&#8221;账号。这样其他用户就能够用Guest账号通过网络访问使用 Windows XP系统的计算机了。<br />
<br />
方法二 更改网络访问模式<br />
<br />
打开组策略编辑器，依次选择&#8220;计算机配置&#8594;Windows设置&#8594;安全设置&#8594;本地策略&#8594;安全选项&#8221;，双击&#8220;网络访问：本地账号的共享和安全模式&#8221;策略，将默认设置&#8220;仅来宾—本地用户以来宾身份验证&#8221;，更改为&#8220;经典：本地用户以自己的身份验证&#8221;。<br />
<br />
现在，当其他用户通过网络访问使用Windows XP的计算机时，就可以用自己的&#8220;身份&#8221;进行登录了(前提是Windows XP中已有这个账号并且口令是正确的)。<br />
<br />
当该策略改变后，文件的共享方式也有所变化，在启用&#8220;经典：本地用户以自己的身份验证&#8221;方式后，我们可以对同时访问共享文件的用户数量进行限制，并能针对不同用户设置不同的访问权限。<br />
<br />
不
过我们可能还会遇到另外一个问题，当用户的口令为空时，访问还是会被拒绝。原来在&#8220;安全选项&#8221;中有一个&#8220;账户：使用空白密码的本地账户只允许进行控制台登
录&#8221;策略默认是启用的，根据Windows XP安全策略中拒绝优先的原则，密码为空的用户通过网络访问使用Windows
XP的计算机时便会被禁止。我们只要将这个策略停用即可解决问题。
<img src ="http://www.blogjava.net/lucky/aggbug/241274.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lucky/" target="_blank">Lucky</a> 2008-11-19 08:53 <a href="http://www.blogjava.net/lucky/archive/2008/11/19/241274.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>MatrixOne的Eclipse插件MxEclipse</title><link>http://www.blogjava.net/lucky/archive/2008/11/18/241159.html</link><dc:creator>Lucky</dc:creator><author>Lucky</author><pubDate>Tue, 18 Nov 2008 08:00:00 GMT</pubDate><guid>http://www.blogjava.net/lucky/archive/2008/11/18/241159.html</guid><wfw:comment>http://www.blogjava.net/lucky/comments/241159.html</wfw:comment><comments>http://www.blogjava.net/lucky/archive/2008/11/18/241159.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lucky/comments/commentRss/241159.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lucky/services/trackbacks/241159.html</trackback:ping><description><![CDATA[有了这个插件以后写JPO的时候就可以方便一点了。<br />
<a href="http://sourceforge.net/projects/mxeclipse/">MXEclipse</a><br />
<img alt="" src="http://www.blogjava.net/images/blogjava_net/lucky/mxeclipse.jpg" height="480" width="640" /><br />
<img src ="http://www.blogjava.net/lucky/aggbug/241159.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lucky/" target="_blank">Lucky</a> 2008-11-18 16:00 <a href="http://www.blogjava.net/lucky/archive/2008/11/18/241159.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>批处理文件中的注释</title><link>http://www.blogjava.net/lucky/archive/2008/11/13/240200.html</link><dc:creator>Lucky</dc:creator><author>Lucky</author><pubDate>Thu, 13 Nov 2008 00:44:00 GMT</pubDate><guid>http://www.blogjava.net/lucky/archive/2008/11/13/240200.html</guid><wfw:comment>http://www.blogjava.net/lucky/comments/240200.html</wfw:comment><comments>http://www.blogjava.net/lucky/archive/2008/11/13/240200.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lucky/comments/commentRss/240200.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lucky/services/trackbacks/240200.html</trackback:ping><description><![CDATA[批处理文件中可以使用双冒号"::"注释.<br />
eg:<br />
set PATH=%CD%\java\bin;%PATH%<br />
net start PgSQL<br />
::net start Resin<br />
<br />
<br />
<img src ="http://www.blogjava.net/lucky/aggbug/240200.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lucky/" target="_blank">Lucky</a> 2008-11-13 08:44 <a href="http://www.blogjava.net/lucky/archive/2008/11/13/240200.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>EclipseでResinを使うためのプラグイン</title><link>http://www.blogjava.net/lucky/archive/2008/11/12/240181.html</link><dc:creator>Lucky</dc:creator><author>Lucky</author><pubDate>Wed, 12 Nov 2008 14:40:00 GMT</pubDate><guid>http://www.blogjava.net/lucky/archive/2008/11/12/240181.html</guid><wfw:comment>http://www.blogjava.net/lucky/comments/240181.html</wfw:comment><comments>http://www.blogjava.net/lucky/archive/2008/11/12/240181.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lucky/comments/commentRss/240181.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lucky/services/trackbacks/240181.html</trackback:ping><description><![CDATA[<p>プラグインを提供します。</p>
<h3><a name="p1"><span class="sanchor">&nbsp;</span>Resin Launcher</a></h3>
<p>WTPでResinを使うためのプラグインです。</p>
<div><img src="http://amateras.sourceforge.jp/cgi-bin/fswiki/wiki.cgi?action=ATTACH&amp;page=WTP+Extensions&amp;file=wtp%5Fresin%2Epng"  alt="" /></div>
<p>以下のリンクからnet.java.amateras.wtp.resin_x.x.x.jarをダウンロードし、Eclipseのpluginsディレクトリにコピーしてください。</p>
<ul>
    <li>1.0.2 (for WTP 1.0/Resin 3.0.14 or 3.0.15) - <a href="https://sourceforge.jp/projects/amateras/files/?release_id=17833#17833">https://sourceforge.jp/projects/amateras/files/?release_id=17833#17833</a></li>
    <li>1.0,3 (for WTP 1.5/Resin 3.0.21) - <a href="https://sourceforge.jp/projects/amateras/files/?release_id=22598#22598">https://sourceforge.jp/projects/amateras/files/?release_id=22598#22598</a></li>
</ul>
<img src ="http://www.blogjava.net/lucky/aggbug/240181.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lucky/" target="_blank">Lucky</a> 2008-11-12 22:40 <a href="http://www.blogjava.net/lucky/archive/2008/11/12/240181.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>subversion安装</title><link>http://www.blogjava.net/lucky/archive/2008/11/12/240068.html</link><dc:creator>Lucky</dc:creator><author>Lucky</author><pubDate>Wed, 12 Nov 2008 05:16:00 GMT</pubDate><guid>http://www.blogjava.net/lucky/archive/2008/11/12/240068.html</guid><wfw:comment>http://www.blogjava.net/lucky/comments/240068.html</wfw:comment><comments>http://www.blogjava.net/lucky/archive/2008/11/12/240068.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lucky/comments/commentRss/240068.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lucky/services/trackbacks/240068.html</trackback:ping><description><![CDATA[1. 从CollabNet下载subversion的Windows版<br />
http://downloads.open.collab.net/collabnet-subversion.html<br />
2. 使用svnserve模式安装，指定仓库位置： d:\svn_repository<br />
3. run-&gt;cmd打开命令行窗口<br />
4. 创建一个subversion的仓库<br />
cd <br />
svnadmin create <br />
E.g.<br />
cd d:\svn_repository<br />
svnadmin create repository<br />
5. 修改密码<br />
编辑svnserve.conf文件<br />
E.g.  d:\svn_repository\repository\conf\svnserve.conf, <br />
找到下面的信息<br />
### The password-db option controls the location of the password<br />
### database file.  Unless you specify a path starting with a /,<br />
### the file's location is relative to the conf directory.<br />
### Uncomment the line below to use the default password file.<br />
#password-db = passwd<br />
去掉password-db前的#号<br />
password-db = passwd<br />
6. 增加用户名和密码<br />
编辑svnserve.conf同一目录下的'passwd'文件，在下面信息的后面追加用户名和密码:<br />
### This file is an example password file for svnserve.<br />
### Its format is similar to that of svnserve.conf. As shown in the<br />
### example below it contains one section labelled [users].<br />
### The name and password for each user follow, one account per line.<br />
<br />
[users]<br />
#harry = harryssecret<br />
#sally = sallyssecret<br />
例如：<br />
lucky = &#215;&#215;&#215;&#215;<br />
7. 打开Windows防火墙的屏蔽.<br />
参考文件<br />
http://www.microsoft.com/windowsxp/using/security/internet/sp2_wfexceptions.mspx<br />
在例外中添加subversion使用的svnserve.exe，或者增加例外的端口：3690.<br />
8. 运行svnserve<br />
可以使用windows的服务或者使用命令行<br />
net start svnserve      <br />
9. 对匿名用户指定读权限，修改conf/svnserve.conf文件<br />
anon-access = write<br />
10. Checkout仓库<br />
svn co svn://localhost/<br />
E.g. svn co svn://localhost/repository<br />
11. 权限设置<br />
编辑svnserve.conf同一目录下的'authz'文件，在下面信息的后面追加用户名和密码:<br />
[groups]<br />
dev = lucky,jiang,yu<br />
<br />
[repository:/]<br />
lucky= rw<br />
* = r<br />
<br />
[repository:/ECOMockup]<br />
@dev= rw<br />
* = r<br />
上面的设置表示 在根目录 只有lucky有读写的权力，其他人都是只读。 在根目录下的/ECOMockup工程dev小组有读写的权力 其他的就是只读。
<img src ="http://www.blogjava.net/lucky/aggbug/240068.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lucky/" target="_blank">Lucky</a> 2008-11-12 13:16 <a href="http://www.blogjava.net/lucky/archive/2008/11/12/240068.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>创建表空间</title><link>http://www.blogjava.net/lucky/archive/2008/11/12/240067.html</link><dc:creator>Lucky</dc:creator><author>Lucky</author><pubDate>Wed, 12 Nov 2008 05:15:00 GMT</pubDate><guid>http://www.blogjava.net/lucky/archive/2008/11/12/240067.html</guid><wfw:comment>http://www.blogjava.net/lucky/comments/240067.html</wfw:comment><comments>http://www.blogjava.net/lucky/archive/2008/11/12/240067.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lucky/comments/commentRss/240067.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lucky/services/trackbacks/240067.html</trackback:ping><description><![CDATA[CREATE TABLESPACE "CSISTSLIDX" <br />
LOGGING <br />
DATAFILE 'C:\oracle\oradata\OR92\CSISTSLIDX.ora' SIZE 10M REUSE <br />
AUTOEXTEND <br />
ON NEXT  128K MAXSIZE UNLIMITED DEFAULT <br />
STORAGE ( INITIAL 128K NEXT 128K MINEXTENTS 1 MAXEXTENTS <br />
UNLIMITED PCTINCREASE 0 );<br />
<br />
<br />
<br />
CREATE USER "CSIS"  PROFILE "DEFAULT" IDENTIFIED BY "CSIS" <br />
DEFAULT <br />
TABLESPACE "CSIS" TEMPORARY <br />
TABLESPACE "TEMP" ACCOUNT UNLOCK;<br />
GRANT UNLIMITED TABLESPACE TO "CSIS";<br />
GRANT SELECT ON "SYS"."V_$SESSION" TO "CSIS";<br />
GRANT "CONNECT" TO "CSIS";<br />
GRANT "RESOURCE" TO "CSIS";
<img src ="http://www.blogjava.net/lucky/aggbug/240067.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lucky/" target="_blank">Lucky</a> 2008-11-12 13:15 <a href="http://www.blogjava.net/lucky/archive/2008/11/12/240067.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle DDL</title><link>http://www.blogjava.net/lucky/archive/2008/11/12/240066.html</link><dc:creator>Lucky</dc:creator><author>Lucky</author><pubDate>Wed, 12 Nov 2008 05:14:00 GMT</pubDate><guid>http://www.blogjava.net/lucky/archive/2008/11/12/240066.html</guid><wfw:comment>http://www.blogjava.net/lucky/comments/240066.html</wfw:comment><comments>http://www.blogjava.net/lucky/archive/2008/11/12/240066.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lucky/comments/commentRss/240066.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lucky/services/trackbacks/240066.html</trackback:ping><description><![CDATA[<h3 class="post-title entry-title">
<a href="http://xplucky.blogspot.com/2007/10/oracle-ddl.html"><br />
</a>
</h3>
-- ================================================================================<br />
--   oracle SQL DDL Script File<br />
-- ================================================================================<br />
<br />
<br />
-- ===============================================================================<br />
-- <br />
--   Generated by:      tedia2sql -- v1.2.13b2<br />
--                      See http://tedia2sql.tigris.org/AUTHORS.html for tedia2sql author information<br />
-- <br />
--   Target Database:   oracle<br />
--   Generated at:      Sat Dec 18 19:48:40 2004<br />
--   Input Files:       TestERD.dia<br />
-- <br />
-- ================================================================================<br />
<br />
<br />
<br />
-- Generated SQL Constraints Drop statements<br />
-- --------------------------------------------------------------------<br />
--     Target Database:   oracle<br />
--     SQL Generator:     tedia2sql -- v1.2.13b2<br />
--     Generated at:      Sat Dec 18 19:48:32 2004<br />
--     Input Files:       TestERD.dia<br />
<br />
drop index idx_iimd5;<br />
drop index idx_iiid;<br />
drop index idx_siiid;<br />
drop index idx_siips;<br />
drop index idx_iclidnm;<br />
drop index idx_uinm;<br />
drop index idx_uiid;<br />
drop index idx_uauiid;<br />
drop index idx_uiruid;<br />
drop index idx_acid;<br />
drop index idx_usmd5;<br />
alter table subImageInfo drop constraint fk_iisii ;<br />
alter table imageCategoryList drop constraint fk_iiicl ;<br />
alter table imageAttribute drop constraint fk_iiia ;<br />
alter table userImageRating drop constraint fk_uiuir ;<br />
alter table userAttribute drop constraint fk_uiua ;<br />
alter table userSession drop constraint fk_uius ;<br />
alter table imageAttribute drop constraint fk_iaac ;<br />
alter table userAttribute drop constraint fk_acua ;<br />
<br />
<br />
-- Generated Permissions Drops<br />
-- --------------------------------------------------------------------<br />
--     Target Database:   oracle<br />
--     SQL Generator:     tedia2sql -- v1.2.13b2<br />
--     Generated at:      Sat Dec 18 19:48:32 2004<br />
--     Input Files:       TestERD.dia<br />
<br />
revoke all on imageInfo from fmorg ;<br />
revoke select on imageInfo from public ;<br />
revoke all on subImageInfo from fmorg ;<br />
revoke all on imageCategoryList from fmorg ;<br />
revoke select on categoryNames from public ;<br />
revoke all on categoryNames from fmorg ;<br />
revoke all on imageAttribute from fmorg ;<br />
revoke all on userInfo from fmorg ;<br />
revoke all on userAttribute from fmorg ;<br />
revoke all on userImageRating from fmorg ;<br />
revoke all on attributeCategory from fmorg ;<br />
revoke all on userSession from fmorg ;<br />
revoke select on extremes from public ;<br />
revoke all on extremes from fmorg ;<br />
<br />
<br />
-- Special statements for oracle,postgres,db2:pre databases<br />
-- statements to do BEFORE creating<br />
-- the tables (schema)<br />
drop sequence imageInfo_id;<br />
create sequence imageInfo_id;<br />
<br />
<br />
-- Generated SQL View Drop Statements<br />
-- --------------------------------------------------------------------<br />
--     Target Database:   oracle<br />
--     SQL Generator:     tedia2sql -- v1.2.13b2<br />
--     Generated at:      Sat Dec 18 19:48:32 2004<br />
--     Input Files:       TestERD.dia<br />
<br />
drop view ratings_view cascade constraints ;<br />
drop view whorated_view cascade constraints ;<br />
drop view users_view cascade constraints ;<br />
<br />
<br />
-- Generated SQL Schema Drop statements<br />
-- --------------------------------------------------------------------<br />
--     Target Database:   oracle<br />
--     SQL Generator:     tedia2sql -- v1.2.13b2<br />
--     Generated at:      Sat Dec 18 19:48:32 2004<br />
--     Input Files:       TestERD.dia<br />
<br />
drop table imageInfo cascade constraints ;<br />
drop table subImageInfo cascade constraints ;<br />
drop table imageCategoryList cascade constraints ;<br />
drop table categoryNames cascade constraints ;<br />
drop table imageAttribute cascade constraints ;<br />
drop table userInfo cascade constraints ;<br />
drop table userAttribute cascade constraints ;<br />
drop table userImageRating cascade constraints ;<br />
drop table attributeCategory cascade constraints ;<br />
drop table userSession cascade constraints ;<br />
drop table extremes cascade constraints ;<br />
<br />
<br />
-- Generated SQL Schema<br />
-- --------------------------------------------------------------------<br />
--     Target Database:   oracle<br />
--     SQL Generator:     tedia2sql -- v1.2.13b2<br />
--     Generated at:      Sat Dec 18 19:48:32 2004<br />
--     Input Files:       TestERD.dia<br />
<br />
<br />
-- imageInfo<br />
create table imageInfo (<br />
id                        numeric (18) not null,<br />
insertionDate             date default now() not null,<br />
md5sum                    char (32) not null,<br />
binaryType                varchar (16) default 'jpg' null,<br />
name                      varchar (64) not null,<br />
locationList              varchar (128) default '//imgserver.org',<br />
description               varchar (128) null,<br />
constraint pk_ImageInfo primary key (id)<br />
) ;<br />
<br />
-- subImageInfo<br />
create table subImageInfo (<br />
imageInfo_id              numeric (18) not null,<br />
pixSize                   integer not null,<br />
constraint pk_SubImageInfo primary key (imageInfo_id,pixSize)<br />
) ;<br />
<br />
-- imageCategoryList<br />
create table imageCategoryList (<br />
imageInfo_id              numeric (18) not null,<br />
name                      varchar (32) not null,<br />
constraint pk_ImageCategoryList primary key (imageInfo_id,name)<br />
) ;<br />
<br />
-- categoryNames<br />
create table categoryNames (<br />
name                      varchar (32) not null,<br />
constraint pk_CategoryNames primary key (name)<br />
) ;<br />
<br />
-- imageAttribute<br />
create table imageAttribute (<br />
imageInfo_id              numeric (18) not null,<br />
attributeCategory_id      numeric (18) not null,<br />
numValue                  numeric (8),<br />
category                  numeric (4),<br />
constraint pk_ImageAttribute primary key (imageInfo_id,attributeCategory_id)<br />
) ;<br />
<br />
-- userInfo<br />
create table userInfo (<br />
id                        numeric (18) not null,<br />
insertionDate             date,<br />
md5sum                    char (32),<br />
birthDate                 date,<br />
gender                    char (1),<br />
name                      varchar (32),<br />
email                     varchar (96),<br />
currentCategory           varchar (32),<br />
lastDebitDate             date,<br />
acctBalance               numeric (10,2),<br />
active                    integer,<br />
constraint pk_UserInfo primary key (id)<br />
) ;<br />
<br />
-- userAttribute<br />
create table userAttribute (<br />
userInfo_id               numeric (18) not null,<br />
attributeCategory_id      numeric (18) not null,<br />
numValue                  numeric (5,4),<br />
constraint pk_UserAttribute primary key (userInfo_id,attributeCategory_id)<br />
) ;<br />
<br />
-- userImageRating<br />
create table userImageRating (<br />
userInfo_id               numeric (18) not null,<br />
imageInfo_id              numeric (15) not null,<br />
rating                    integer,<br />
constraint pk_UserImageRating primary key (userInfo_id,imageInfo_id)<br />
) ;<br />
<br />
-- attributeCategory<br />
create table attributeCategory (<br />
id                        numeric (18) not null,<br />
attributeDesc             varchar (128),<br />
constraint pk_AttributeCategory primary key (id)<br />
) ;<br />
<br />
-- userSession<br />
create table userSession (<br />
userInfo_id               numeric (18) not null,<br />
md5sum                    char (32) not null,<br />
insertionDate             date,<br />
expireDate                date,<br />
ipAddress                 varchar (24),<br />
constraint pk_UserSession primary key (userInfo_id,md5sum)<br />
) ;<br />
<br />
-- extremes<br />
create table extremes (<br />
name                      varchar (32) not null,<br />
colName                   varchar (64),<br />
minVal                    numeric (15),<br />
maxVal                    numeric (15),<br />
constraint pk_Extremes primary key (name)<br />
) ;<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
-- Generated SQL Views<br />
-- --------------------------------------------------------------------<br />
--     Target Database:   oracle<br />
--     SQL Generator:     tedia2sql -- v1.2.13b2<br />
--     Generated at:      Sat Dec 18 19:48:32 2004<br />
--     Input Files:       TestERD.dia<br />
<br />
<br />
-- ratings_view<br />
create view ratings_view as<br />
select b.name, c.md5sum, a.rating<br />
from userImageRating a,<br />
userImageRating z,<br />
userInfo b,<br />
imageInfo c<br />
where (((a.userInfo_id = b.id)<br />
and (a.imageInfo_id = c.id)<br />
and (a.userInfo_id = z.userInfo_id))<br />
and (a.userInfo_id &lt;&gt; z.userInfo_id))<br />
order by c.md5sum,b.name,a.rating<br />
;<br />
<br />
-- whorated_view<br />
create view whorated_view as<br />
select a.name, count (*) as numRatings<br />
from userInfo a,<br />
userImageRating b<br />
where (a.id = b.userInfo_id)<br />
group by a.name<br />
;<br />
<br />
-- users_view<br />
create view users_view as<br />
select id, birthDate, name ||'&lt;'|| email ||'&gt;' as whoIsThis, currentCategory, acctBalance, active<br />
from userInfo<br />
order by userInfo.name<br />
;<br />
<br />
<br />
-- Special statements for oracle,postgres,db2:post databases<br />
-- statements to do AFTER creating<br />
-- the tables (schema)<br />
--drop trigger . . . .<br />
--create trigger . . . .<br />
<br />
<br />
-- Generated Permissions<br />
-- --------------------------------------------------------------------<br />
--     Target Database:   oracle<br />
--     SQL Generator:     tedia2sql -- v1.2.13b2<br />
--     Generated at:      Sat Dec 18 19:48:32 2004<br />
--     Input Files:       TestERD.dia<br />
<br />
grant all on imageInfo to fmorg ;<br />
grant select on imageInfo to public ;<br />
grant all on subImageInfo to fmorg ;<br />
grant all on imageCategoryList to fmorg ;<br />
grant select on categoryNames to public ;<br />
grant all on categoryNames to fmorg ;<br />
grant all on imageAttribute to fmorg ;<br />
grant all on userInfo to fmorg ;<br />
grant all on userAttribute to fmorg ;<br />
grant all on userImageRating to fmorg ;<br />
grant all on attributeCategory to fmorg ;<br />
grant all on userSession to fmorg ;<br />
grant select on extremes to public ;<br />
grant all on extremes to fmorg ;<br />
<br />
<br />
-- Generated SQL Insert statements<br />
-- --------------------------------------------------------------------<br />
--     Target Database:   oracle<br />
--     SQL Generator:     tedia2sql -- v1.2.13b2<br />
--     Generated at:      Sat Dec 18 19:48:32 2004<br />
--     Input Files:       TestERD.dia<br />
<br />
<br />
-- inserts for categoryNames<br />
insert into categoryNames values ( 'Buildings' ) ;<br />
insert into categoryNames values ( 'Landscapes' ) ;<br />
insert into categoryNames values ( 'Nudes' ) ;<br />
insert into categoryNames values ( 'Life Studies' ) ;<br />
insert into categoryNames values ( 'Portraits' ) ;<br />
insert into categoryNames values ( 'Abstracts' ) ;<br />
<br />
-- inserts for attributeCategory<br />
insert into attributeCategory values ( 1,'Blurriness' ) ;<br />
insert into attributeCategory values ( 2,'Contrastiness' ) ;<br />
insert into attributeCategory values ( 3,'Saturation' ) ;<br />
insert into attributeCategory values ( 4,'Size' ) ;<br />
insert into attributeCategory values ( 5,'Relevence' ) ;<br />
<br />
<br />
-- Generated SQL Constraints<br />
-- --------------------------------------------------------------------<br />
--     Target Database:   oracle<br />
--     SQL Generator:     tedia2sql -- v1.2.13b2<br />
--     Generated at:      Sat Dec 18 19:48:32 2004<br />
--     Input Files:       TestERD.dia<br />
<br />
create unique index idx_iimd5 on imageInfo  (md5sum) ;<br />
create index idx_iiid on imageInfo  (id) ;<br />
create index idx_siiid on subImageInfo  (imageInfo_id) ;<br />
create index idx_siips on subImageInfo  (pixSize) ;<br />
create index idx_iclidnm on imageCategoryList  (imageInfo_id,name) ;<br />
create unique index idx_uinm on userInfo  (name,md5sum) ;<br />
create index idx_uiid on userInfo  (id) ;<br />
create index idx_uauiid on userAttribute  (userInfo_id) ;<br />
create index idx_uiruid on userImageRating  (userInfo_id) ;<br />
create index idx_acid on attributeCategory  (id) ;<br />
create index idx_usmd5 on userSession  (md5sum) ;<br />
alter table subImageInfo add constraint fk_iisii<br />
foreign key (imageInfo_id)<br />
references imageInfo (id)  ;<br />
alter table imageCategoryList add constraint fk_iiicl<br />
foreign key (imageinfo_id)<br />
references imageInfo (id)  ;<br />
alter table imageAttribute add constraint fk_iiia<br />
foreign key (imageInfo_id)<br />
references imageInfo (id)  ;<br />
alter table userImageRating add constraint fk_uiuir<br />
foreign key (userInfo_id)<br />
references userInfo (id) on delete cascade ;<br />
alter table userAttribute add constraint fk_uiua<br />
foreign key (userInfo_id)<br />
references userInfo (id) on delete cascade ;<br />
alter table userSession add constraint fk_uius<br />
foreign key (userInfo_id)<br />
references userInfo (id) on delete cascade ;<br />
alter table imageAttribute add constraint fk_iaac<br />
foreign key (attributeCategory_id)<br />
references attributeCategory (id)  ;<br />
alter table userAttribute add constraint fk_acua<br />
foreign key (attributeCategory_id)<br />
references attributeCategory (id)  ;<br />
<br />
-- oracle requires a special 'quit' command<br />
quit
<img src ="http://www.blogjava.net/lucky/aggbug/240066.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lucky/" target="_blank">Lucky</a> 2008-11-12 13:14 <a href="http://www.blogjava.net/lucky/archive/2008/11/12/240066.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SQL*PLUS命令的使用大全(转)</title><link>http://www.blogjava.net/lucky/archive/2008/11/12/240064.html</link><dc:creator>Lucky</dc:creator><author>Lucky</author><pubDate>Wed, 12 Nov 2008 05:12:00 GMT</pubDate><guid>http://www.blogjava.net/lucky/archive/2008/11/12/240064.html</guid><wfw:comment>http://www.blogjava.net/lucky/comments/240064.html</wfw:comment><comments>http://www.blogjava.net/lucky/archive/2008/11/12/240064.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lucky/comments/commentRss/240064.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lucky/services/trackbacks/240064.html</trackback:ping><description><![CDATA[<h3 class="post-title entry-title">
<a href="http://xplucky.blogspot.com/2007/10/sqlplus.html"><br />
</a>
</h3>
在中国ORACLE用户讨论组（http://www.cnoug.org）中发现了这篇文章，很不错，转过来，与大家共享，也方便自己查看。<br />
<br />
oracle的sql*plus是与oracle进行交互的客户端工具。在sql*plus中，可以运行sql*plus命令与sql*plus语句。 <br />
我们通常所说的DML、DDL、DCL语句都是sql*plus语句，它们执行完后，都可以保存在一个被称为sql
buffer的内存区域中，并且只能保存一条最近执行的sql语句，我们可以对保存在sql buffer中的sql
语句进行修改，然后再次执行，sql*plus一般都与数据库打交道。 <br />
除了sql*plus语句，在sql*plus中执行的其它语句我们称之为sql*plus命令。它们执行完后，不保存在sql buffer的内存区域中，它们一般用来对输出的结果进行格式化显示，以便于制作报表。 <br />
下面就介绍一下一些常用的sql*plus命令： <br />
<br />
1. 执行一个SQL脚本文件 <br />
SQL&gt;start file_name <br />
SQL&gt;@ file_name <br />
我们可以将多条sql语句保存在一个文本文件中，这样当要执行这个文件中的所有的sql语句时，用上面的任一命令即可，这类似于dos中的批处理。 <br />
<br />
@与@@的区别是什么？<br />
@等于start命令，用来运行一个sql脚本文件。<br />
@命令调用当前目录下的，或指定全路径，或可以通过SQLPATH环境变量搜寻到的脚本文件。该命令使用是一般要指定要执行的文件的全路径，否则从缺省路径(可用SQLPATH变量指定)下读取指定的文件。<br />
@@用在sql脚本文件中，用来说明用@@执行的sql脚本文件与@@所在的文件在同一目录下，而不用指定要执行sql脚本文件的全路径，也不是从SQLPATH环境变量指定的路径中寻找sql脚本文件，该命令一般用在脚本文件中。<br />
如：在c:\temp目录下有文件start.sql和nest_start.sql，start.sql脚本文件的内容为：<br />
@@nest_start.sql     - - 相当于@ c:\temp\nest_start.sql<br />
则我们在sql*plus中，这样执行：<br />
SQL&gt; @ c:\temp\start.sql <br />
<br />
<br />
2. 对当前的输入进行编辑 <br />
SQL&gt;edit <br />
<br />
3. 重新运行上一次运行的sql语句 <br />
SQL&gt;/ <br />
<br />
4. 将显示的内容输出到指定文件 <br />
SQL&gt; SPOOL file_name <br />
在屏幕上的所有内容都包含在该文件中，包括你输入的sql语句。 <br />
<br />
5. 关闭spool输出 <br />
SQL&gt; SPOOL OFF <br />
只有关闭spool输出，才会在输出文件中看到输出的内容。 <br />
<br />
6．显示一个表的结构 <br />
SQL&gt; desc table_name <br />
<br />
7. COL命令： <br />
主要格式化列的显示形式。 <br />
该命令有许多选项，具体如下： <br />
COL[UMN] [{ column|expr} [ option ...]] <br />
Option选项可以是如下的子句: <br />
ALI[AS] alias <br />
CLE[AR] <br />
FOLD_A[FTER] <br />
FOLD_B[EFORE] <br />
FOR[MAT] format <br />
HEA[DING] text <br />
JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]} <br />
LIKE { expr|alias} <br />
NEWL[INE] <br />
NEW_V[ALUE] variable <br />
NOPRI[NT]|PRI[NT] <br />
NUL[L] text <br />
OLD_V[ALUE] variable <br />
ON|OFF <br />
WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED] <br />
<br />
1). 改变缺省的列标题 <br />
COLUMN column_name HEADING column_heading <br />
For example: <br />
Sql&gt;select * from dept; <br />
DEPTNO DNAME                        LOC <br />
---------- ---------------------------- --------- <br />
10 ACCOUNTING                   NEW YORK <br />
sql&gt;col  LOC heading location <br />
sql&gt;select * from dept; <br />
DEPTNO DNAME                        location <br />
--------- ---------------------------- ----------- <br />
10 ACCOUNTING                   NEW YORK <br />
<br />
2). 将列名ENAME改为新列名EMPLOYEE NAME并将新列名放在两行上： <br />
Sql&gt;select * from emp <br />
Department  name           Salary <br />
---------- ---------- ---------- <br />
10 aaa                11         <br />
SQL&gt; COLUMN ENAME HEADING &#8217;Employee|Name&#8217; <br />
Sql&gt;select * from emp <br />
Employee <br />
Department  name           Salary <br />
---------- ---------- ----------  <br />
10 aaa                11 <br />
note: the col heading turn into two lines from one line. <br />
<br />
3). 改变列的显示长度： <br />
FOR[MAT] format <br />
Sql&gt;select empno,ename,job from emp; <br />
EMPNO ENAME      JOB        <br />
---------- ----------     --------- <br />
7369 SMITH      CLERK      <br />
7499 ALLEN      SALESMAN   <br />
7521 WARD       SALESMAN   <br />
Sql&gt; col ename format a40 <br />
EMPNO ENAME                                    JOB <br />
----------   ----------------------------------------         --------- <br />
7369 SMITH                                    CLERK <br />
7499 ALLEN                                    SALESMAN <br />
7521 WARD                                    SALESMAN <br />
<br />
4). 设置列标题的对齐方式 <br />
JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]} <br />
SQL&gt; col ename justify center <br />
SQL&gt; / <br />
EMPNO           ENAME                   JOB <br />
----------   ----------------------------------------       --------- <br />
7369 SMITH                                    CLERK <br />
7499 ALLEN                                    SALESMAN <br />
7521 WARD                                     SALESMAN <br />
对于NUMBER型的列，列标题缺省在右边，其它类型的列标题缺省在左边 <br />
<br />
5). 不让一个列显示在屏幕上 <br />
NOPRI[NT]|PRI[NT] <br />
SQL&gt; col job noprint <br />
SQL&gt; / <br />
EMPNO           ENAME <br />
----------     ---------------------------------------- <br />
7369 SMITH <br />
7499 ALLEN <br />
7521 WARD <br />
<br />
6). 格式化NUMBER类型列的显示： <br />
SQL&gt; COLUMN SAL FORMAT $99,990 <br />
SQL&gt; / <br />
Employee <br />
Department Name        Salary    Commission <br />
---------- ---------- --------- ---------- <br />
30          ALLEN        $1,600    300 <br />
<br />
7). 显示列值时，如果列值为NULL值，用text值代替NULL值 <br />
COMM NUL[L] text <br />
SQL&gt;COL COMM NUL[L] text <br />
<br />
8). 设置一个列的回绕方式 <br />
WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED] <br />
COL1 <br />
-------------------- <br />
HOW ARE YOU? <br />
<br />
SQL&gt;COL COL1 FORMAT A5 <br />
SQL&gt;COL COL1 WRAPPED <br />
COL1 <br />
----- <br />
HOW A <br />
RE YO <br />
U? <br />
<br />
SQL&gt; COL COL1 WORD_WRAPPED <br />
COL1 <br />
----- <br />
HOW <br />
ARE <br />
YOU? <br />
<br />
SQL&gt; COL COL1 WORD_WRAPPED <br />
COL1 <br />
----- <br />
HOW A <br />
<br />
9). 显示列的当前的显示属性值 <br />
SQL&gt; COLUMN column_name <br />
<br />
10). 将所有列的显示属性设为缺省值 <br />
SQL&gt; CLEAR COLUMNS <br />
<br />
8. 屏蔽掉一个列中显示的相同的值 <br />
BREAK ON break_column <br />
SQL&gt; BREAK ON DEPTNO <br />
SQL&gt; Select DEPTNO, ENAME, SAL <br />
FROM EMP <br />
Where SAL &lt; 2500 <br />
orDER BY DEPTNO; <br />
DEPTNO      ENAME         SAL <br />
---------- ----------- --------- <br />
10           CLARK        2450 <br />
MILLER      1300 <br />
20            SMITH       800 <br />
ADAMS       1100 <br />
<br />
9. 在上面屏蔽掉一个列中显示的相同的值的显示中，每当列值变化时在值变化之前插入n个空行。 <br />
BREAK ON break_column SKIP n <br />
<br />
SQL&gt; BREAK ON DEPTNO SKIP 1 <br />
SQL&gt; / <br />
DEPTNO ENAME SAL <br />
---------- ----------- --------- <br />
10 CLARK 2450 <br />
MILLER 1300 <br />
<br />
20 SMITH 800 <br />
ADAMS 1100 <br />
<br />
10. 显示对BREAK的设置 <br />
SQL&gt; BREAK <br />
<br />
11. 删除6、7的设置 <br />
SQL&gt; CLEAR BREAKS <br />
<br />
12. Set 命令： <br />
该命令包含许多子命令： <br />
SET system_variable value <br />
system_variable value 可以是如下的子句之一： <br />
APPI[NFO]{ON|OFF|text} <br />
ARRAY[SIZE] {15|n} <br />
AUTO[COMMIT]{ON|OFF|IMM[EDIATE]|n} <br />
AUTOP[RINT] {ON|OFF} <br />
AUTORECOVERY [ON|OFF] <br />
AUTOT[RACE] {ON|OFF|TRACE[ONLY]} [EXP[LAIN]] [STAT[ISTICS]] <br />
BLO[CKTERMINATOR] {.|c} <br />
CMDS[EP] {;|c|ON|OFF} <br />
COLSEP {_|text} <br />
COM[PATIBILITY]{V7|V8|NATIVE} <br />
CON[CAT] {.|c|ON|OFF} <br />
COPYC[OMMIT] {0|n} <br />
COPYTYPECHECK {ON|OFF} <br />
DEF[INE] {&amp;|c|ON|OFF} <br />
DESCRIBE [DEPTH {1|n|ALL}][LINENUM {ON|OFF}][INDENT {ON|OFF}] <br />
ECHO {ON|OFF} <br />
EDITF[ILE] file_name[.ext] <br />
EMB[EDDED] {ON|OFF} <br />
ESC[APE] {\|c|ON|OFF} <br />
FEED[BACK] {6|n|ON|OFF} <br />
FLAGGER {OFF|ENTRY |INTERMED[IATE]|FULL} <br />
FLU[SH] {ON|OFF} <br />
HEA[DING] {ON|OFF} <br />
HEADS[EP] {||c|ON|OFF} <br />
INSTANCE [instance_path|LOCAL] <br />
LIN[ESIZE] {80|n} <br />
LOBOF[FSET] {n|1} <br />
LOGSOURCE [pathname] <br />
LONG {80|n} <br />
LONGC[HUNKSIZE] {80|n} <br />
MARK[UP] HTML [ON|OFF] [HEAD text] [BODY text] [ENTMAP {ON|OFF}] [SPOOL <br />
{ON|OFF}] [PRE[FORMAT] {ON|OFF}] <br />
NEWP[AGE] {1|n|NONE} <br />
NULL text <br />
NUMF[ORMAT] format <br />
NUM[WIDTH] {10|n} <br />
PAGES[IZE] {24|n} <br />
PAU[SE] {ON|OFF|text} <br />
RECSEP {WR[APPED]|EA[CH]|OFF} <br />
RECSEPCHAR {_|c} <br />
SERVEROUT[PUT] {ON|OFF} [SIZE n] [FOR[MAT] {WRA[PPED]|WOR[D_ <br />
WRAPPED]|TRU[NCATED]}] <br />
SHIFT[INOUT] {VIS[IBLE]|INV[ISIBLE]} <br />
SHOW[MODE] {ON|OFF} <br />
SQLBL[ANKLINES] {ON|OFF} <br />
SQLC[ASE] {MIX[ED]|LO[WER]|UP[PER]} <br />
SQLCO[NTINUE] {&gt; |text} <br />
SQLN[UMBER] {ON|OFF} <br />
SQLPRE[FIX] {#|c} <br />
SQLP[ROMPT] {SQL&gt;|text} <br />
SQLT[ERMINATOR] {;|c|ON|OFF} <br />
SUF[FIX] {SQL|text} <br />
TAB {ON|OFF} <br />
TERM[OUT] {ON|OFF} <br />
TI[ME] {ON|OFF} <br />
TIMI[NG] {ON|OFF} <br />
TRIM[OUT] {ON|OFF} <br />
TRIMS[POOL] {ON|OFF} <br />
UND[ERLINE] {-|c|ON|OFF} <br />
VER[IFY] {ON|OFF} <br />
WRA[P] {ON|OFF} <br />
<br />
1). 设置当前session是否对修改的数据进行自动提交 <br />
SQL&gt;SET AUTO[COMMIT] {ON|OFF|IMM[EDIATE]| n} <br />
<br />
2)．在用start命令执行一个sql脚本时，是否显示脚本中正在执行的SQL语句 <br />
SQL&gt; SET ECHO {ON|OFF} <br />
<br />
3).是否显示当前sql语句查询或修改的行数 <br />
SQL&gt; SET FEED[BACK] {6|n|ON|OFF} <br />
默认只有结果大于6行时才显示结果的行数。如果set feedback 1 ，则不管查询到多少行都返回。当为off 时，一律不显示查询的行数 <br />
<br />
4).是否显示列标题 <br />
SQL&gt; SET HEA[DING] {ON|OFF} <br />
当set heading off 时，在每页的上面不显示列标题，而是以空白行代替 <br />
<br />
5).设置一行可以容纳的字符数 <br />
SQL&gt; SET LIN[ESIZE] {80|n} <br />
如果一行的输出内容大于设置的一行可容纳的字符数，则折行显示。 <br />
<br />
6).设置页与页之间的分隔 <br />
SQL&gt; SET NEWP[AGE] {1|n|NONE} <br />
当set newpage 0 时，会在每页的开头有一个小的黑方框。 <br />
当set newpage n 时，会在页和页之间隔着n个空行。 <br />
当set newpage none 时，会在页和页之间没有任何间隔。 <br />
<br />
7).显示时，用text值代替NULL值 <br />
SQL&gt; SET NULL text <br />
<br />
8).设置一页有多少行数 <br />
SQL&gt; SET PAGES[IZE] {24|n} <br />
如果设为0，则所有的输出内容为一页并且不显示列标题 <br />
<br />
9).是否显示用DBMS_OUTPUT.PUT_LINE包进行输出的信息。 <br />
SQL&gt; SET SERVEROUT[PUT] {ON|OFF}  <br />
在编写存储过程时，我们有时会用dbms_output.put_line将必要的信息输出，以便对存储过程进行调试，只有将serveroutput变量设为on后，信息才能显示在屏幕上。 <br />
<br />
10).当SQL语句的长度大于LINESIZE时，是否在显示时截取SQL语句。 <br />
SQL&gt; SET WRA[P] {ON|OFF} <br />
当输出的行的长度大于设置的行的长度时（用set linesize n命令设置），当set wrap on时，输出行的多于的字符会另起一行显示，否则，会将输出行的多于字符切除，不予显示。 <br />
<br />
11).是否在屏幕上显示输出的内容，主要用与SPOOL结合使用。 <br />
SQL&gt; SET TERM[OUT] {ON|OFF} <br />
在用spool命令将一个大表中的内容输出到一个文件中时，将内容输出在屏幕上会耗费大量的时间，设置set termspool off后，则输出的内容只会保存在输出文件中，不会显示在屏幕上，极大的提高了spool的速度。 <br />
<br />
12).将SPOOL输出中每行后面多余的空格去掉 <br />
SQL&gt; SET TRIMS[OUT] {ON|OFF}  <br />
<br />
13)显示每个sql语句花费的执行时间 <br />
set TIMING  {ON|OFF} <br />
<br />
14). 遇到空行时不认为语句已经结束，从后续行接着读入。<br />
SET SQLBLANKLINES ON<br />
Sql*plus中, 不允许sql语句中间有空行, 这在从其它地方拷贝脚本到sql*plus中执行时很麻烦. 比如下面的脚本:<br />
select deptno, empno, ename<br />
from emp<br />
<br />
where empno = '7788';<br />
如果拷贝到sql*plus中执行, 就会出现错误。这个命令可以解决该问题<br />
<br />
15).设置DBMS_OUTPUT的输出<br />
SET SERVEROUTPUT ON BUFFER 20000<br />
用dbms_output.put_line('strin_content');可以在存储过程中输出信息，对存储过程进行调试<br />
如果想让dbms_output.put_line('     abc');的输出显示为：<br />
SQL&gt;     abc，而不是SQL&gt;abc，则在SET SERVEROUTPUT ON后加format wrapped参数。<br />
<br />
16). 输出的数据为html格式<br />
set markup html<br />
在8.1.7版本(也许是816? 不太确定)以后, sql*plus中有一个set markup html的命令, 可以将sql*plus的输出以html格式展现.<br />
注意其中的spool on, 当在屏幕上输出的时候, 我们看不出与不加spool on有什么区别, 但是当我们使用spool filename 输出到文件的时候, 会看到spool文件中出现了等tag.<br />
<br />
<br />
14．修改sql buffer中的当前行中，第一个出现的字符串 <br />
C[HANGE] /old_value/new_value <br />
SQL&gt; l <br />
1* select * from dept <br />
SQL&gt; c/dept/emp <br />
1* select * from emp <br />
<br />
15．编辑sql buffer中的sql语句 <br />
EDI[T] <br />
<br />
16．显示sql buffer中的sql语句，list n显示sql buffer中的第n行，并使第n行成为当前行 <br />
L[IST] [n] <br />
<br />
17．在sql buffer的当前行下面加一行或多行 <br />
I[NPUT] <br />
<br />
18．将指定的文本加到sql buffer的当前行后面 <br />
A[PPEND] <br />
SQL&gt; select deptno, <br />
2  dname <br />
3  from dept; <br />
DEPTNO DNAME <br />
---------- -------------- <br />
10 ACCOUNTING <br />
20 RESEARCH <br />
30 SALES <br />
40 OPERATIONS <br />
<br />
SQL&gt; L 2 <br />
2* dname <br />
SQL&gt; a ,loc <br />
2* dname,loc <br />
SQL&gt; L <br />
1  select deptno, <br />
2  dname,loc <br />
3* from dept <br />
SQL&gt; / <br />
<br />
DEPTNO DNAME          LOC <br />
---------- -------------- ------------- <br />
10 ACCOUNTING     NEW YORK <br />
20 RESEARCH       DALLAS <br />
30 SALES          CHICAGO <br />
40 OPERATIONS     BOSTON <br />
<br />
19．将sql buffer中的sql语句保存到一个文件中 <br />
SAVE file_name <br />
<br />
20．将一个文件中的sql语句导入到sql buffer中 <br />
GET file_name <br />
<br />
21．再次执行刚才已经执行的sql语句 <br />
RUN <br />
or <br />
/ <br />
<br />
22．执行一个存储过程 <br />
EXECUTE procedure_name <br />
<br />
23．在sql*plus中连接到指定的数据库 <br />
CONNECT user_name/passwd@db_alias <br />
<br />
24．设置每个报表的顶部标题 <br />
TTITLE <br />
<br />
25．设置每个报表的尾部标题 <br />
BTITLE <br />
<br />
26．写一个注释 <br />
REMARK [text] <br />
<br />
27．将指定的信息或一个空行输出到屏幕上 <br />
PROMPT [text] <br />
<br />
28．将执行的过程暂停，等待用户响应后继续执行 <br />
PAUSE [text] <br />
<br />
Sql&gt;PAUSE Adjust paper and press RETURN to continue. <br />
<br />
29．将一个数据库中的一些数据拷贝到另外一个数据库（如将一个表的数据拷贝到另一个数据库） <br />
COPY {FROM database | TO database | FROM database TO database} <br />
{APPEND|Create|Insert|REPLACE} destination_table <br />
[(column, column, column, ...)] USING query <br />
<br />
sql&gt;COPY FROM SCOTT/TIGER@HQ TO JOHN/CHROME@WEST  <br />
create emp_temp <br />
USING Select * FROM EMP <br />
<br />
30．不退出sql*plus，在sql*plus中执行一个操作系统命令： <br />
HOST <br />
<br />
Sql&gt; host hostname <br />
该命令在windows下可能被支持。 <br />
<br />
31．在sql*plus中，切换到操作系统命令提示符下，运行操作系统命令后，可以再次切换回sql*plus： <br />
! <br />
<br />
sql&gt;! <br />
$hostname <br />
$exit <br />
sql&gt; <br />
<br />
该命令在windows下不被支持。 <br />
<br />
32．显示sql*plus命令的帮助 <br />
HELP <br />
如何安装帮助文件： <br />
Sql&gt;@ ?\sqlplus\admin\help\hlpbld.sql ?\sqlplus\admin\help\helpus.sql <br />
Sql&gt;help index <br />
<br />
33．显示sql*plus系统变量的值或sql*plus环境变量的值 <br />
Syntax <br />
SHO[W] option <br />
where option represents one of the following terms or clauses: <br />
system_variable <br />
ALL <br />
BTI[TLE] <br />
ERR[ORS] [{FUNCTION|PROCEDURE|PACKAGE|PACKAGE BODY| <br />
TRIGGER|VIEW|TYPE|TYPE BODY} [schema.]name] <br />
LNO <br />
PARAMETERS [parameter_name] <br />
PNO <br />
REL[EASE] <br />
REPF[OOTER] <br />
REPH[EADER] <br />
SGA <br />
SPOO[L] <br />
SQLCODE <br />
TTI[TLE] <br />
USER <br />
<br />
1) . 显示当前环境变量的值： <br />
Show all <br />
<br />
2) . 显示当前在创建函数、存储过程、触发器、包等对象的错误信息 <br />
Show error <br />
当创建一个函数、存储过程等出错时，变可以用该命令查看在那个地方出错及相应的出错信息，进行修改后再次进行编译。 <br />
<br />
3) . 显示初始化参数的值： <br />
show PARAMETERS [parameter_name] <br />
<br />
4) . 显示数据库的版本： <br />
show REL[EASE] <br />
<br />
5) . 显示SGA的大小 <br />
show SGA <br />
<br />
6). 显示当前的用户名 <br />
show user<br />
<br />
34.查询一个用户下的对象<br />
SQL&gt;select * from tab;<br />
SQL&gt;select * from user_objects;<br />
<br />
35.查询一个用户下的所有的表<br />
SQL&gt;select * from user_tables;<br />
<br />
36.查询一个用户下的所有的索引<br />
SQL&gt;select * from user_indexes;<br />
<br />
<br />
37. 定义一个用户变量<br />
方法有两个：<br />
a. define<br />
b. COL[UMN] [{column|expr} NEW_V[ALUE] variable [NOPRI[NT]|PRI[NT]]<br />
OLD_V[ALUE] variable  [NOPRI[NT]|PRI[NT]]<br />
<br />
下面对每种方式给予解释：<br />
a. Syntax<br />
DEF[INE] [variable]|[variable = text]<br />
定义一个用户变量并且可以分配给它一个CHAR值。<br />
<br />
assign the value MANAGER to the variable POS, type:<br />
SQL&gt; DEFINE POS = MANAGER<br />
<br />
assign the CHAR value 20 to the variable DEPTNO, type:<br />
SQL&gt; DEFINE DEPTNO = 20<br />
<br />
list the definition of DEPTNO, enter<br />
SQL&gt; DEFINE DEPTNO<br />
―――――――――――――――<br />
DEFINE DEPTNO = &#8221;20&#8221; (CHAR)<br />
<br />
定义了用户变量POS后，就可以在sql*plus中用&amp;POS或&amp;&amp;POS来引用该变量的值，sql*plus不会再提示你给变量输入值。<br />
<br />
b. COL[UMN] [{column|expr} NEW_V[ALUE] variable [NOPRI[NT]|PRI[NT]]<br />
NEW_V[ALUE] variable<br />
指定一个变量容纳查询出的列值。<br />
例:column col_name new_value var_name noprint<br />
select col_name from table_name where &#8230;&#8230;..<br />
将下面查询出的col_name列的值赋给var_name变量.<br />
<br />
一个综合的例子:<br />
得到一个列值的两次查询之差(此例为10秒之内共提交了多少事务):<br />
column redo_writes new_value commit_count<br />
<br />
select sum(stat.value) redo_writes<br />
from v$sesstat stat, v$statname sn<br />
where stat.statistic# = sn.statistic#<br />
and sn.name = 'user commits';<br />
<br />
-- 等待一会儿(此处为10秒);<br />
execute dbms_lock.sleep(10);<br />
<br />
set veri off<br />
select sum(stat.value) - &amp;commit_count commits_added<br />
from v$sesstat stat, v$statname sn<br />
where stat.statistic# = sn.statistic#<br />
and sn.name = 'user commits';<br />
<br />
<br />
38. 定义一个绑定变量<br />
VAR[IABLE] [variable [NUMBER|CHAR|CHAR (n)|NCHAR|NCHAR (n) |VARCHAR2 (n)|NVARCHAR2 (n)|CLOB|NCLOB|REFCURSOR]]<br />
定义一个绑定变量，该变量可以在pl/sql中引用。<br />
可以用print命令显示该绑定变量的信息。<br />
如：<br />
column inst_num  heading "Inst Num"  new_value inst_num  format 99999;<br />
column inst_name heading "Instance"  new_value inst_name format a12;<br />
column db_name   heading "DB Name"   new_value db_name   format a12;<br />
column dbid      heading "DB Id"     new_value dbid      format 9999999999 just c;<br />
<br />
prompt<br />
prompt Current Instance<br />
prompt ~~~~~~~~~~~~~~~~<br />
<br />
select d.dbid            dbid<br />
, d.name            db_name<br />
, i.instance_number inst_num<br />
, i.instance_name   inst_name<br />
from v$database d,<br />
v$instance i;<br />
<br />
variable dbid       number;<br />
variable inst_num   number;<br />
begin<br />
:dbid      :=  &amp;dbid;<br />
:inst_num  :=  &amp;inst_num;<br />
end;<br />
/<br />
说明：<br />
在sql*plus中，该绑定变量可以作为一个存储过程的参数，也可以在匿名PL/SQL块中直接引用。为了显示用VARIABLE命令创建的绑定变量的值，可以用print命令<br />
<br />
注意：<br />
绑定变量不同于变量：<br />
1．        定义方法不同<br />
2．        引用方法不同<br />
绑定变量：:variable_name<br />
变量：&amp;variable_name or &amp;&amp;variable_name<br />
3.在sql*plus中，可以定义同名的绑定变量与用户变量，但是引用的方法不同。<br />
<br />
39. &amp;与&amp;&amp;的区别<br />
&amp;用来创建一个临时变量，每当遇到这个临时变量时，都会提示你输入一个值。<br />
&amp;&amp;用来创建一个持久变量，就像用用define命令或带new_vlaue字句的column命令创建的持久变量一样。当用&amp;&amp;命令引用这个变量时，不会每次遇到该变量就提示用户键入值，而只是在第一次遇到时提示一次。<br />
<br />
如，将下面三行语句存为一个脚本文件，运行该脚本文件，会提示三次，让输入deptnoval的值：<br />
select count(*) from emp where deptno = &amp;deptnoval;<br />
select count(*) from emp where deptno = &amp;deptnoval;<br />
select count(*) from emp where deptno = &amp;deptnoval;<br />
<br />
将下面三行语句存为一个脚本文件，运行该脚本文件，则只会提示一次，让输入deptnoval的值：<br />
select count(*) from emp where deptno = &amp;&amp;deptnoval;<br />
select count(*) from emp where deptno = &amp;&amp;deptnoval;<br />
select count(*) from emp where deptno = &amp;&amp;deptnoval;<br />
<br />
40．在输入sql语句的过程中临时先运行一个sql*plus命令(摘自www.itpub.com)<br />
#<br />
有没有过这样的经历? 在sql*plus中敲了很长的命令后, 突然发现想不起某个列的名字了, 如果取消当前的命令,待查询后再重敲, 那太痛苦了. 当然你可以另开一个sql*plus窗口进行查询, 但这里提供的方法更简单.<br />
<br />
比如说, 你想查工资大于4000的员工的信息, 输入了下面的语句:<br />
<br />
SQL&gt; select deptno, empno, ename<br />
2 from emp<br />
3 where<br />
这时, 你发现你想不起来工资的列名是什么了.<br />
<br />
这种情况下, 只要在下一行以#开头, 就可以执行一条sql*plus命令, 执行完后, 刚才的语句可以继续输入<br />
<br />
SQL&gt;&gt; select deptno, empno, ename<br />
2 from emp<br />
3 where<br />
6 #desc emp<br />
Name Null? Type<br />
----------------------------------------- -------- --------------<br />
EMPNO NOT NULL NUMBER(4)<br />
ENAME VARCHAR2(10)<br />
JOB VARCHAR2(9)<br />
MGR NUMBER(4)<br />
HIREDATE DATE<br />
SAL NUMBER(7,2)<br />
COMM NUMBER(7,2)<br />
DEPTNO NUMBER(2)<br />
<br />
6 sal &gt; 4000;<br />
<br />
DEPTNO EMPNO ENAME<br />
---------- ---------- ----------<br />
10 7839 KING<br />
<br />
41. SQLPlus中的快速复制和粘贴技巧(摘自www.cnoug.org)<br />
1) 鼠标移至想要复制内容的开始 <br />
2) 用右手食指按下鼠标左键 <br />
3) 向想要复制内容的另一角拖动鼠标，与Word中选取内容的方法一样 <br />
4) 内容选取完毕后（所选内容全部反显），鼠标左键按住不动，用右手中指按鼠标右键 <br />
5) 这时，所选内容会自动复制到SQL*Plus环境的最后一行
<img src ="http://www.blogjava.net/lucky/aggbug/240064.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lucky/" target="_blank">Lucky</a> 2008-11-12 13:12 <a href="http://www.blogjava.net/lucky/archive/2008/11/12/240064.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>struts ibatis 学习笔记（转载）</title><link>http://www.blogjava.net/lucky/archive/2008/11/08/239391.html</link><dc:creator>Lucky</dc:creator><author>Lucky</author><pubDate>Sat, 08 Nov 2008 04:23:00 GMT</pubDate><guid>http://www.blogjava.net/lucky/archive/2008/11/08/239391.html</guid><wfw:comment>http://www.blogjava.net/lucky/comments/239391.html</wfw:comment><comments>http://www.blogjava.net/lucky/archive/2008/11/08/239391.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lucky/comments/commentRss/239391.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lucky/services/trackbacks/239391.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: struts ibatis 学习笔记Posted on 2006-08-27 12:50 Earth 表设计PDM：&nbsp; 类图：所涉及的页面：浏览员工的页面employee_list.jsp增加/编辑员工信息的页面employee_add.jsp...&nbsp;&nbsp;<a href='http://www.blogjava.net/lucky/archive/2008/11/08/239391.html'>阅读全文</a><img src ="http://www.blogjava.net/lucky/aggbug/239391.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lucky/" target="_blank">Lucky</a> 2008-11-08 12:23 <a href="http://www.blogjava.net/lucky/archive/2008/11/08/239391.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>EasyEclipse中Tab转换成Space</title><link>http://www.blogjava.net/lucky/archive/2008/11/07/239237.html</link><dc:creator>Lucky</dc:creator><author>Lucky</author><pubDate>Fri, 07 Nov 2008 05:23:00 GMT</pubDate><guid>http://www.blogjava.net/lucky/archive/2008/11/07/239237.html</guid><wfw:comment>http://www.blogjava.net/lucky/comments/239237.html</wfw:comment><comments>http://www.blogjava.net/lucky/archive/2008/11/07/239237.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lucky/comments/commentRss/239237.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lucky/services/trackbacks/239237.html</trackback:ping><description><![CDATA[现在的项目中，禁止使用Tab键，Tab键需要用4个空格代替。<br />
<br />
1.Java Tab键换成4个空格的设置<br />
Window -&gt; Perference-&gt;Java -&gt;Code Style -&gt;Formatter -&gt;"Show"<br />
Tab policy 选择"Spaces only"<br />
<img alt="" src="http://www.blogjava.net/images/blogjava_net/lucky/java_tab.png" height="726" width="727" /><br />
<br />
2. JSP　Tab键换成4个空格的设置<br />
<br />
Window -&gt; Perference-&gt;Web and XML -&gt;HTML Files -&gt;HTML Source，选中"Indent using spaces"<br />
<br />
<img alt="" src="http://www.blogjava.net/images/blogjava_net/lucky/html_tab.png" height="622" width="423" /><br />
<br />
<br />
3. 如果是文本文件(TXT)应该怎么设置呢?<br />
终于找到了替代方案，设置用easyeclipse内含的"Coloring Editor"默认打开".txt"文件。然后设置"Coloring Editor"。<br />
Window -&gt; Perference-&gt;Coloring Editor<br />
<br />
<img alt="" src="http://www.blogjava.net/images/blogjava_net/lucky/color_Tab.png" height="623" width="423" /><br />
<br />
<br />
<img src ="http://www.blogjava.net/lucky/aggbug/239237.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lucky/" target="_blank">Lucky</a> 2008-11-07 13:23 <a href="http://www.blogjava.net/lucky/archive/2008/11/07/239237.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>