首页 | 摘要显示 | 1 2 3 4 下一页

AnySQL Archives

September 13, 2006

更安全的AnySQL只查询(Query Only)模式

    又在ITPub上看到有人删除表了, 除了进行较好的权限控制之外, 我还得介绍一下AnySQL工具中的只查询(Query Only)模式. 默认起动AnySQL时就进行了只查询模式, 在这种模式下不能做DML, 也不能作DDL, 这样就安全多了, 我现在经常用它来进行查询了. 除了这个安全功能外, 还不需要进定义列显示的长度等等格式设定, 还是不错的.

    下面我们来看一下这个功能的例子, 首先来连接到数据库:

ASQL> conn anysql/anysql@localhost:1521:TEST
Database connected.
ASQL> select * from tab;

TNAME                  TABTYPE CLUSTERID
----------------------- ------- ---------
A_SEQ_SYN              SYNONYM
T_LOB                  TABLE
T_LONG                  TABLE
T_LONGRAW              TABLE

12 rows returned.

    接下来就可以测试这个功能, 也介绍了如何切换到可更新模式:

阅读全文

AnySQL中的特色功能介绍(一)

    AnySQL可以不安装Oracle客户端, 也不需要进行客户端的配置, 而直接连接数据库, 如下所示:

ASQL> conn system/oracle@localhost:1521:xe
Database connected.

    在AnySQL中集成了我平时收集的常用的SQL, 并做成方便的ORA命令, 方便使用, 功能强大. 如查询表空间使用情况的命令:

ASQL> ora tsfree

TABLESPACE FILES SIZE_MB FREE_MB MAXFREE PCT_USED PCT_FREE
---------- ----- ------- ------- ------- -------- --------
SYSAUX         1     430       3    2.44     99.3      0.7
USERS          1     100   98.06   98.06     1.94    98.06
SYSTEM         1     340    6.75    5.94    98.01     1.99
UNDO           1      90   14.19       3    84.24    15.76

4 rows returned.

    在AnySQL中也不需要指定列的宽度, 输出中会计算最大的列的长度, 而不是根据列的定义中的长度来显示, 省去了一堆"COL ... FORMAT ..."的定制命令, 如查询数据库的数据文件时:

阅读全文

AnySQL中的特色功能介绍(二)

    AnySQL的DESC命令不仅可以显示表结构, 还显示了表是否分区及其索引信息, 这是DBA在平常的数据库管理中是很实用的功能, 请看下面的例子:

ASQL> desc scott.emp

NO# NAME                      NULLABLE TYPE        
--- ------------------------- -------- ------------
  1 EMPNO                     NOT NULL NUMBER(4)   
  2 ENAME                              VARCHAR2(10)
  3 JOB                                VARCHAR2(9)
  4 MGR                                NUMBER(4)  
  5 HIREDATE                           DATE        
  6 SAL                                NUMBER(7,2)
  7 COMM                               NUMBER(7,2)
  8 DEPTNO                             NUMBER(2)  

TYPE  ISUNQ  INDEX_NAME       NO# COLUMN_NAME DESCEND
------ ------ --------------- --- ----------- -------
NORMAL UNIQUE PK_EMP            1 EMPNO       ASC    

PARTITIONED AVG_ROW_LEN NUM_ROWS BLOCKS EMPTY_BLOCKS
----------- ----------- -------- ------ ------------
NO      

    在对数据库对象进行某些操作(如Rename, Drop等)之前, 先看一下对象的依赖关系是一个很好的习惯, 它会告诉你这个对象依赖于那些对象, 及哪些对象依赖于将要操作的对象. 如果过程或视图创建失败, 用这个功能也可以帮你快速定位失败原因.

阅读全文

September 15, 2006

AnySQL中的特色功能介绍(三)

    在AnySQL中实现了一些在SQL*Plus中不太容易实现的功能, 如查看视图或过程的代码, 查看建表的语法(Beta版), 查看某个表及其索引等对象的大小等. 下面再介绍几个比较好的功能:

    在我的测试用户下有这样的几个对象:

ASQL> select * from tab;

TNAME                   TABTYPE CLUSTERID
----------------------- ------- ---------
A_V                     VIEW
T_HASH                  TABLE
T_LOB                   TABLE
T_LONG                  TABLE

11 rows returned.

    下面我们来看如何查看视图的定义, 查过程的定义就自已去试试了:

ASQL> source anysql.a_v

select "TNAME","TABTYPE","CLUSTERID" from tab

    查看建表的语法, 这个功能的输出仅供参考, 请不要用这个功能来拷贝表结构:

ASQL> source anysql.t_lob

CREATE TABLE ANYSQL.T_LOB
(
   FNAME VARCHAR2(20) ,
   FTEXT CLOB
)
TABLESPACE USERS INITRANS 1 PCTFREE 10
STORAGE ( FREELIST GROUPS 1 FREELISTS 1)
NOCACHE LOGGING
/

阅读全文

在Linux/Unix下如何使用AnySQL?

    AnySQL是用Java写的, 因此也可以在Unix/Linux下运行, 在这儿下载的是Windows下的, 如何搬到Unix/Linux下呢? 首先你要先在Unix/Linux下有JRE 1.4或以上的版本, 然后按照以下步骤去做就可以了:

1, 确定安装目录, 如/usr/AnySQL.
2, 建一个jlib的子目录, 如/usr/AnySQL/jlib.
3, 将Windows下的oasql.jar和oracle.jar拷到jlib目录, 如拷贝到/usr/AnySQL/jlib
4, 编辑一个名称为asql的Shell文件, 以方便地运行AnySQL.
5, 将安装目录放到PATH路径中, 这样在任何目录运行asql就启动了AnySQL.

    启动AnySQL的Shell文件的内容为(我目前使用的):

#!/bin/sh

ASQL_CMD=`which $0`
ASQL_HOME=`dirname $ASQL_CMD`
$JAVA_HOME/bin/java -server -Xms8m -Xmx16m \
    -cp $ASQL_HOME/jlib/oasql.jar com.asql.tools.ASQL $*

    这样不需要安装数据库客户端了, 也不一定要运行在图形模式下. 欢迎你们在Unix/Linux下使用.

1 2 3 4 下一页

当前分类: AnySQL

Creative Commons License
本站版权: 共用创作 CC
署名-非商业性-相同方式分享
本站基于MT-3.36免费版
(©)版权所有, 2004 - 2008, www.AnySQL.net, 保留所有权利.
MSN: loufangxin(a)msn.com, Mail: anysql(at)126.com/support(at)iamdba.com, Skype ID:anysql