- 浏览: 560361 次
- 性别:
- 来自: 杭州
-
文章分类
- 全部博客 (340)
- Spring (4)
- Hibernate (2)
- Linux (34)
- Oracle (145)
- Eclipse (1)
- UML (1)
- HTML&&JAVASCRIPT (11)
- JAVA (33)
- 设计模式 (1)
- 版本控制 (1)
- wrap框架 (3)
- IBATIS (5)
- Ruby (1)
- DWR (1)
- MINA (11)
- JBPM (2)
- 缓存技术 (4)
- 网络 (3)
- 应用服务器 (1)
- GWT (5)
- 杂谈 (2)
- ICE (4)
- XML (2)
- ArcGis (2)
- Flex (8)
- junit单元测试 (1)
- SNMP (1)
- 存储 (1)
- office (1)
- MongoDB (0)
- Greenplum (3)
- 管理点滴 (1)
- C++ (6)
- 网络入门 (3)
- Tomcat (7)
- JMX (0)
- webservice (1)
- Oracle的10046事件 (1)
- Library cache内部机制详解 (1)
- expdp通过dblink来导入 (1)
最新评论
-
yuanliangding:
有没有关于mock的更多知识。
基于mock对象和JUnit框架简化Spring Web组件单元测试 -
saup007:
ssh端口不是22,怎么搞呢?
Greenplum 学习笔记 -
springmvc-freemarker:
java开源项目源码实例下载
Apache上全部JAVA开源项目简介 -
bobbell:
哇塞,你真厉害,整理的非常全面。我是一个java barcod ...
Greenplum 学习笔记 -
wsj55133245513324:
这不是bug,你将日志级别从debug提升到INFO 就好了 ...
Spring,smppapi,apache mina, ssl快速实现安全的smpp(5)
CREATE DATABASE database_name [WITH LOG IN “pathname”]
创建数据库。
database_name:数据库名称。
“pathname”:事务处理日志文件。
创建一database_name.dbs目录,存取权限由GRANT设定,无日志文件就不能使用
BEGIN WORK等事务语句(可用START DATABASE语句来改变)。
可选定当前数据库的日志文件。
如:select dirpath form systables where tabtype = “L”;
例:create databse customerdb with log in “/usr/john/log/customer.log”;
DATABASE databse-name [EXCLUSIVE]
选择数据库。
database_name:数据库名称。
EXCLUSIVE:独占状态。
存取当前目录和DBPATH中指定的目录下的数据库,事务中处理过程中不要使用此语句。
例:dtabase customerdb;
CLOSE DATABASE
关闭当前数据库。
database_name:数据库名称。
此语句之后,只有下列语句合法:
CREATE DATABASE; DATABASE; DROP DATABSE; ROLLFORWARD DATABASE;
删除数据库前必须使用此语句。
例:close database;
DROP DATABASE database_name
删除指定数据库。
database_name:数据库名称。
用户是DBA或所有表的拥有者;删除所有文件,但不包括数据库目录;不允许删除当前数据库(须先关闭当前数据库);事务中处理过程中不能使用此语句,通过ROLLBACK WORK 也不可将数据库恢复。
例:drop databse customerdb;
CREATE [TEMP] TABLE table-name (column_name datatype [NOT NULL], …)
[IN “pathname”]
创建表或临时表。
table-name :表名称。
column_name:字段名称。
data-type:字段数据类型。
path-name:指定表的存放位置
TEMP用于指定建立临时表;表名要唯一,字段要唯一;有CONNECT权限的用户可建立临时表;创建的表缺省允许CONNECT用户存取,但不可以ALTER。
例:create table user
( c0 serial not null, c1 char (10),
c2 char(2),
c3 smallint,
c4 decimal(6,3),
c5 date
) in “usr/john/customer.dbs/user;
ALTER TABLE
ALTER TABLE table-name
{ADD (newcol_name newcol_type [BEFORE oldcol_name], …) | DROP (oldcol_name, …)
| MODIFY (oldcol_name newcol_type [NOT NULL], …
}, …
修改表结构。
table-name:表名称。
newcol_name:新字段名称
newcol_type:新字段类型
oldcol_name:老字段名称
可以使用单个或多个ADD子句、DROP子句、MODIFY子句,但某个字句失败,操作即中止;原字段是NULL,不允许MODIFY为NOT NULL,除非所有NULL字段中均非空,反之可以;ALTER使用者是表的拥有者或拥有DBA权限,或被授权;事务中处理过程中不要使用此语句。
例:alter table user
add ( c6 char(20) before c5);
RENAME TABLE oldname TO newname
修改表名。
oldname:原名称。
newname:新名称。
RENAME使用者是表的拥有者或拥有DBA权限,或被授权;事务中处理过程中不要使用此语句。
例:rename user to bbb;
DROP TABLE table-name
删除表。
table-name:表名称。
删除表意味着删除其中所有数据、各字段上的索引及对表的赋权、视图等;用户不能删除任何系统目录表;语句使用者是表拥有者或拥有DBA权限,事务中处理过程中不要使用此语句。
RENAME COLUMN table.oldcolumn, TO newcolumn
修改字段名。
table.oldcolumn:表名及原字段名称
newcolumn:新字段名称。
语句使用者是表的拥有者或拥有DBA权限或有ALTER权限的用户,事务中处理过程中不要使用此语句。
例:rename column user.c6 to c7;
CREATE VIEW view-name column-list
CREATE VIEW view-name column-list AS select_statement [WITH CHECK OPTION]
创建视图。
view-name:视图名称。
column-list:字段列表。
select_statement:SELECT语句。
以下语句不使用视图:ALTER TABLE,DROP INDEX,ALTER INDEX,LOCK TABLE,CREATE INDEX, RENAME TABLE;视图将延用基表的字段名,对表达式等虚字段和多表间字段重名必须指明标识其字段名;若对视图中某些字段命名,则所有字段都必须命名;视图中数据类型延用基表中的数据类型,虚字段起诀于表达式;不能使用ORDER BY和UNION子句;对视图中所有的字段要有SELECT权限;事务中处理过程中使用此语句,即使事务回滚,视图也将建立,不能恢复。
例:create view v_user as select * from user where c1 = “B1”;
DROP VIEW view-name
删除视图。
view-name:视图名称。
用户可删除自己建立的视图;视图的后代视图也被删除;事务中处理中不要使用此语句。
例:drop view v_user;
CREATE INDEX
CREATE [UNIQUE/DISTINCT] [CLUSTER] INDEX index_name ON table_name
([column_name ASC/DESC],…)
创建索引。
index_name:索引名称。
table_name:表名称。
column_name:字段名称。
UNIQUE/DISTINCT:唯一索引。
CLUSTER:使表的物理存放顺序按索引排列。
ASC/DESC:升序或降序,缺省升序。
语句执行时,将表的状态置为EXCLUSIVE;复合索引最多包含8个字段,所有字段长度和不得大于120字节;事务中处理过程中使用此语句,即使事务回滚,索引将建立,不能恢复。
例:create cluster index ix_user on user(c5);
ALTER INDEX index-name TO [NOT] CLUSTER
修改索引性质。
index-name:索引名称。
TO [NOT] CLUSTER:去掉或加上CLUSTER属性。
语句执行时,将表的状态置为EXCLUSIVE;事务中处理过程中使用此语句,即使事务回滚,索引性质将改变,不能恢复。
例:alter index ix_user to not cluster;
DROP INDEX index-name
删除索引。
index-name:索引名称。
语句使用者是索引的拥有者或拥有DBA权限,事务中处理过程中不要使用此语句,否则事务无法恢复。
例:drop index ix_user;
CREATE SYNONYM synonym FOR table-name
创建同义名。
synonym:同义名
table-name:表名称
数据库的创建者可以使用同义名;没有赋予同义名权限的用户不能使用同义名;同义名不能和表名相同;事务中处理过程中不要使用此语句。
例:create synonym user_alias for user;
DROP SYNONYM synonym
删除同义名。
synonym:同义名
可以删除自己建立的同义名;事务中处理过程中不要使用此语句,否则无法恢复。
例:drop synonym user_alias;
UPDATE STATISTICS [FOR TABLE table-name]
更新数据库的统计数字。
table-name:表名称
此语句仅作用于当前数据库;可提高查询效率;只有执行此语句,才改变统计数据。
例:update statistics for table user;
GRANT {DBA|RESOURCE|CONNECT} TO {PUBLIC|user-list}
授权命令。
PUBLIC|user-list:全部或指定的用户。
三种权限居且仅居其一,事务处理过程中不要执行GRANT语句。
例:grant resource to pulbic;
GRANT tab-privilege ON table-name TO {PUBLIC|user-list} [WITH GRANT OPTION]
授表级权限。
tab-privilege:表级权限。
table-name:表名称。
PUBLIC|user-list:全部或指定的用户。
[WITH GRANT OPTION]:表示被授权用户有否权限进行二次授权。
用户可以在自己建立表达式或被[WITH GRANT OPTION]准许的表中进行赋权;限定越多的权限优先级越高。
例:grant update(c1,c6) on user to dick with grant option;
附(INFORMIX的权限)
(1) 数据库的权限(控制对数据库的访问以及数据库中表的创建和删除)
DBA权限:全部权利,修改系统表,建立和删除表与索引、增加和恢复表数据,以及授予其他用户数据库权限等;
RESOURCE权限:允许对数据库表中的数据进行存取,建立永久性表以及索引。
CONNECT权限:只允许对数据库表中的数据进行存取,建立和删除视图与临时表。
(2)表级权限(对表的建立、修改、检索和更新等权限)
ALTER:更改权限
DELETE:删除权限
INDEX:索引权限
INSERT:插入权限
SELECT [(cols)]:指定字段或所有字段上的查询权限,不指明字段缺省为所有字段。
UPDATE [(cols)] :指定字段或所有字段上的更新权限,不指明字段缺省为所有字段。
ALL [PRIVILEGES]:以上所有表级权限
REVOKE {DBA|RESOURCE|CONNECT} FROM {PUBLIC|user-list}
收权命令。
PUBLIC|user-list:全部或指定的用户。
三种权限居且仅居其一,事务处理过程中不要执行GRANT语句。
例:revoke resource from john;
REVOKE tab-privilege ON table-name FROM {PUBLIC|user-list}
收表级权限。
tab-privilege:表级权限。
table-name:表名称。
PUBLIC|user-list:全部或指定的用户。
[WITH GRANT OPTION]:表示被授权用户有否权限进行二次授权。
用户只能取消由其本人赋予其他用户的表级存取权限;不能取消自己的权限,对SELECT和UPDATE作取消时,将取消所有表中字段的SELECT 和UPDATE权限。
例;revoke update on user from dick;
LOCK TABLE table-name IN {SHARE|EXCLUSIVE} MODE
记录级加锁和表级加锁或文件加锁。
table-name:表名称。
SHARE:允许读表中数据,但不允许作任何修改
EXCLUSIVE:禁止其他任何形式访问表
每次只能对表琐定一次;事务处理过程中,BEGIN WORK后立即执行LOCK TABLE以取代记录级加锁,COMMIT WORK和ROLLBACK WORK语句取消所有对表的加锁;若没有事务处理,锁将保持到用户退出或执行UNLOCK为止。
例:lock table user in exclusive mode;
UNLOCK TABLE table-name
取消记录级加锁和表级加锁或文件加锁。
table-name:表名称。
例:unlock user;
SET LOCK MODE TO [NOT] WAIT
改变锁定状态。
TO [NOT]:等待解锁,有可能被死锁或不等待并提示错误信息,表示此记录被锁,缺省值。
访问一个EXCLUSIVE状态下的记录,将返回一个错误。
START DATABSE db_name [WITH LOG IN “pathname”]
启动事务处理。
“pathname”:事务处理日志文件。
执行该语句前,需要先关闭当前数据库。
例;clost database;
start databse customer with log in “/usr/john/log/customer.log”;
BEGIN WORK
开始事务。例:begin work;
COMMIT WORK
提交(正常结束)事务。例:commit work;
ROLLBACK WORK
回滚(非正常结束)事务。例:rollback work;
SELECT
SELECT select_list FROM tab_name|view_name
WHERE condition
GROUP BY column_name
HAVING condition
ORDER BY column_list
INTO TEMP table_name
查询语句。
select_list:选择表或*
tab_name:表名称
view_name:视图名称。
condition:查询条件,可使用BETWEEN、IN、LIKE、IS NULL、LIKE、MATCHES、NOT、
AND、OR、=、!=或<>、>、 >= 、<=、<、ALL、ANY、SOME
column_name:分组字段名称
condition:群聚条件
column_list:排序字段列表,缺省ASC,可指定DSC;排序时,NULL值小于非零值。
table_name:临时表名称
例:略
附(常用函数)
(1)集合函数:
count(*)、
sum(数据项/表达式)、avg(数据项/表达式)、max(数据项/表达式)、min(数据项/表达式)
count(distinct 数据项/表达式)、sum(distinct数据项/表达式)、avg(distinct数据项/表达式)
(2)代数函数和三角函数
HEX(数据项/表达式)、ROUND(数据项/表达式)、TRUNC(数据项/表达式)、
TAN(数据项/表达式)、ABS(数据项/表达式)、MOD(被除数,除数)
(3)统计函数
标准差,stdev()、方差,variance()、范围,rang()
(4)时间函数
DAY(日期/时间表达式):返回数字型
MONTH(日期/时间表达式):返回整数
WEEKDAY(日期/时间表达式):0��6,0星期天,1星期一;返回整数
YEAR(日期/时间表达式)、返回整数
DATE(非日期表达式):返回日期型
EXTEND(日期/时间表达式,[第一个至最后一个]):返回指定的整数
MDY(月,日,年):返回日期型
CURRENT:返回日期型
(5)时间函数
ROUND(),四舍五入。如:ROUND(10.95,position)position进行四舍五入的前一位置
TRUNC(),截取。如:TRUNC(10.95,0)position截取的位置
INFORMIX临时表在下列情况下自动取消:
A.退出数据库访问工具(如DBACCESS)
B.SQL通话结束(DISCONNECT)
C.发出取消表语句
D.退出程序时
INSERT
INSERT INTO view_name|table_name [(column_list)] VALUES (value_list)
或 INSERT INTO view_name|table_name [(column_list)] select_statement
插入数据
view_name|table_name:视图名或表名称
column_list:数据项列表。
value_list:值列表
select_statement:查询语句。
例:略
DELETE FROM view_name|table_name WHERE search-conditions
删除语句。
view_name|table_name:视图名或表名称
search-conditions;删除条件
例:略
UPDATE
UPDATE view_name|table_name SET column_1 = value_1ist WHERE search_conditions
或UPDATE view_name|table_name SET column_1|* = value_1ist WHERE search_conditions
更新数据语句。
view_name|table_name:表名称或视图表名称
value_1ist:字段值
search_conditions:更新数据的条件
例:略
CHECK TABLE table-name
检查索引语句。
语句使用者是表的拥有者或拥有DBA权限;不能对systable使用此语句。
例:略
REPAIR TABLE table-name
修复索引。
语句使用者是表的拥有者或拥有DBA权限;不能对systable使用此语句。
例:略
LOAD FROM “file-name” INSERT INTO table_name [(column_name[,…])]
将文本数据栽入表中。
例:load form “aa.txt” insert into user;
UNLOAD TO “pathname”
将表中数据卸为文本。
例:unload to “aa.txt” select * from user;
INFO
系统信息查询。
INFO TABLES:得到当前数据库上表的名字。
INFO columns FOR table_name:指定表上的字段信息。
INFO INDEXES FOR table_name:指定表上的索引信息。
INFO [ACCESS|PRIVILEGES] FOR table_name:指定表上的存取权限。
INFO STATUS FOR table_name:指定表的状态信息。
例: info tables;
创建数据库。
database_name:数据库名称。
“pathname”:事务处理日志文件。
创建一database_name.dbs目录,存取权限由GRANT设定,无日志文件就不能使用
BEGIN WORK等事务语句(可用START DATABASE语句来改变)。
可选定当前数据库的日志文件。
如:select dirpath form systables where tabtype = “L”;
例:create databse customerdb with log in “/usr/john/log/customer.log”;
DATABASE databse-name [EXCLUSIVE]
选择数据库。
database_name:数据库名称。
EXCLUSIVE:独占状态。
存取当前目录和DBPATH中指定的目录下的数据库,事务中处理过程中不要使用此语句。
例:dtabase customerdb;
CLOSE DATABASE
关闭当前数据库。
database_name:数据库名称。
此语句之后,只有下列语句合法:
CREATE DATABASE; DATABASE; DROP DATABSE; ROLLFORWARD DATABASE;
删除数据库前必须使用此语句。
例:close database;
DROP DATABASE database_name
删除指定数据库。
database_name:数据库名称。
用户是DBA或所有表的拥有者;删除所有文件,但不包括数据库目录;不允许删除当前数据库(须先关闭当前数据库);事务中处理过程中不能使用此语句,通过ROLLBACK WORK 也不可将数据库恢复。
例:drop databse customerdb;
CREATE [TEMP] TABLE table-name (column_name datatype [NOT NULL], …)
[IN “pathname”]
创建表或临时表。
table-name :表名称。
column_name:字段名称。
data-type:字段数据类型。
path-name:指定表的存放位置
TEMP用于指定建立临时表;表名要唯一,字段要唯一;有CONNECT权限的用户可建立临时表;创建的表缺省允许CONNECT用户存取,但不可以ALTER。
例:create table user
( c0 serial not null, c1 char (10),
c2 char(2),
c3 smallint,
c4 decimal(6,3),
c5 date
) in “usr/john/customer.dbs/user;
ALTER TABLE
ALTER TABLE table-name
{ADD (newcol_name newcol_type [BEFORE oldcol_name], …) | DROP (oldcol_name, …)
| MODIFY (oldcol_name newcol_type [NOT NULL], …

修改表结构。
table-name:表名称。
newcol_name:新字段名称
newcol_type:新字段类型
oldcol_name:老字段名称
可以使用单个或多个ADD子句、DROP子句、MODIFY子句,但某个字句失败,操作即中止;原字段是NULL,不允许MODIFY为NOT NULL,除非所有NULL字段中均非空,反之可以;ALTER使用者是表的拥有者或拥有DBA权限,或被授权;事务中处理过程中不要使用此语句。
例:alter table user
add ( c6 char(20) before c5);
RENAME TABLE oldname TO newname
修改表名。
oldname:原名称。
newname:新名称。
RENAME使用者是表的拥有者或拥有DBA权限,或被授权;事务中处理过程中不要使用此语句。
例:rename user to bbb;
DROP TABLE table-name
删除表。
table-name:表名称。
删除表意味着删除其中所有数据、各字段上的索引及对表的赋权、视图等;用户不能删除任何系统目录表;语句使用者是表拥有者或拥有DBA权限,事务中处理过程中不要使用此语句。
RENAME COLUMN table.oldcolumn, TO newcolumn
修改字段名。
table.oldcolumn:表名及原字段名称
newcolumn:新字段名称。
语句使用者是表的拥有者或拥有DBA权限或有ALTER权限的用户,事务中处理过程中不要使用此语句。
例:rename column user.c6 to c7;
CREATE VIEW view-name column-list
CREATE VIEW view-name column-list AS select_statement [WITH CHECK OPTION]
创建视图。
view-name:视图名称。
column-list:字段列表。
select_statement:SELECT语句。
以下语句不使用视图:ALTER TABLE,DROP INDEX,ALTER INDEX,LOCK TABLE,CREATE INDEX, RENAME TABLE;视图将延用基表的字段名,对表达式等虚字段和多表间字段重名必须指明标识其字段名;若对视图中某些字段命名,则所有字段都必须命名;视图中数据类型延用基表中的数据类型,虚字段起诀于表达式;不能使用ORDER BY和UNION子句;对视图中所有的字段要有SELECT权限;事务中处理过程中使用此语句,即使事务回滚,视图也将建立,不能恢复。
例:create view v_user as select * from user where c1 = “B1”;
DROP VIEW view-name
删除视图。
view-name:视图名称。
用户可删除自己建立的视图;视图的后代视图也被删除;事务中处理中不要使用此语句。
例:drop view v_user;
CREATE INDEX
CREATE [UNIQUE/DISTINCT] [CLUSTER] INDEX index_name ON table_name
([column_name ASC/DESC],…)
创建索引。
index_name:索引名称。
table_name:表名称。
column_name:字段名称。
UNIQUE/DISTINCT:唯一索引。
CLUSTER:使表的物理存放顺序按索引排列。
ASC/DESC:升序或降序,缺省升序。
语句执行时,将表的状态置为EXCLUSIVE;复合索引最多包含8个字段,所有字段长度和不得大于120字节;事务中处理过程中使用此语句,即使事务回滚,索引将建立,不能恢复。
例:create cluster index ix_user on user(c5);
ALTER INDEX index-name TO [NOT] CLUSTER
修改索引性质。
index-name:索引名称。
TO [NOT] CLUSTER:去掉或加上CLUSTER属性。
语句执行时,将表的状态置为EXCLUSIVE;事务中处理过程中使用此语句,即使事务回滚,索引性质将改变,不能恢复。
例:alter index ix_user to not cluster;
DROP INDEX index-name
删除索引。
index-name:索引名称。
语句使用者是索引的拥有者或拥有DBA权限,事务中处理过程中不要使用此语句,否则事务无法恢复。
例:drop index ix_user;
CREATE SYNONYM synonym FOR table-name
创建同义名。
synonym:同义名
table-name:表名称
数据库的创建者可以使用同义名;没有赋予同义名权限的用户不能使用同义名;同义名不能和表名相同;事务中处理过程中不要使用此语句。
例:create synonym user_alias for user;
DROP SYNONYM synonym
删除同义名。
synonym:同义名
可以删除自己建立的同义名;事务中处理过程中不要使用此语句,否则无法恢复。
例:drop synonym user_alias;
UPDATE STATISTICS [FOR TABLE table-name]
更新数据库的统计数字。
table-name:表名称
此语句仅作用于当前数据库;可提高查询效率;只有执行此语句,才改变统计数据。
例:update statistics for table user;
GRANT {DBA|RESOURCE|CONNECT} TO {PUBLIC|user-list}
授权命令。
PUBLIC|user-list:全部或指定的用户。
三种权限居且仅居其一,事务处理过程中不要执行GRANT语句。
例:grant resource to pulbic;
GRANT tab-privilege ON table-name TO {PUBLIC|user-list} [WITH GRANT OPTION]
授表级权限。
tab-privilege:表级权限。
table-name:表名称。
PUBLIC|user-list:全部或指定的用户。
[WITH GRANT OPTION]:表示被授权用户有否权限进行二次授权。
用户可以在自己建立表达式或被[WITH GRANT OPTION]准许的表中进行赋权;限定越多的权限优先级越高。
例:grant update(c1,c6) on user to dick with grant option;
附(INFORMIX的权限)
(1) 数据库的权限(控制对数据库的访问以及数据库中表的创建和删除)
DBA权限:全部权利,修改系统表,建立和删除表与索引、增加和恢复表数据,以及授予其他用户数据库权限等;
RESOURCE权限:允许对数据库表中的数据进行存取,建立永久性表以及索引。
CONNECT权限:只允许对数据库表中的数据进行存取,建立和删除视图与临时表。
(2)表级权限(对表的建立、修改、检索和更新等权限)
ALTER:更改权限
DELETE:删除权限
INDEX:索引权限
INSERT:插入权限
SELECT [(cols)]:指定字段或所有字段上的查询权限,不指明字段缺省为所有字段。
UPDATE [(cols)] :指定字段或所有字段上的更新权限,不指明字段缺省为所有字段。
ALL [PRIVILEGES]:以上所有表级权限
REVOKE {DBA|RESOURCE|CONNECT} FROM {PUBLIC|user-list}
收权命令。
PUBLIC|user-list:全部或指定的用户。
三种权限居且仅居其一,事务处理过程中不要执行GRANT语句。
例:revoke resource from john;
REVOKE tab-privilege ON table-name FROM {PUBLIC|user-list}
收表级权限。
tab-privilege:表级权限。
table-name:表名称。
PUBLIC|user-list:全部或指定的用户。
[WITH GRANT OPTION]:表示被授权用户有否权限进行二次授权。
用户只能取消由其本人赋予其他用户的表级存取权限;不能取消自己的权限,对SELECT和UPDATE作取消时,将取消所有表中字段的SELECT 和UPDATE权限。
例;revoke update on user from dick;
LOCK TABLE table-name IN {SHARE|EXCLUSIVE} MODE
记录级加锁和表级加锁或文件加锁。
table-name:表名称。
SHARE:允许读表中数据,但不允许作任何修改
EXCLUSIVE:禁止其他任何形式访问表
每次只能对表琐定一次;事务处理过程中,BEGIN WORK后立即执行LOCK TABLE以取代记录级加锁,COMMIT WORK和ROLLBACK WORK语句取消所有对表的加锁;若没有事务处理,锁将保持到用户退出或执行UNLOCK为止。
例:lock table user in exclusive mode;
UNLOCK TABLE table-name
取消记录级加锁和表级加锁或文件加锁。
table-name:表名称。
例:unlock user;
SET LOCK MODE TO [NOT] WAIT
改变锁定状态。
TO [NOT]:等待解锁,有可能被死锁或不等待并提示错误信息,表示此记录被锁,缺省值。
访问一个EXCLUSIVE状态下的记录,将返回一个错误。
START DATABSE db_name [WITH LOG IN “pathname”]
启动事务处理。
“pathname”:事务处理日志文件。
执行该语句前,需要先关闭当前数据库。
例;clost database;
start databse customer with log in “/usr/john/log/customer.log”;
BEGIN WORK
开始事务。例:begin work;
COMMIT WORK
提交(正常结束)事务。例:commit work;
ROLLBACK WORK
回滚(非正常结束)事务。例:rollback work;
SELECT
SELECT select_list FROM tab_name|view_name
WHERE condition
GROUP BY column_name
HAVING condition
ORDER BY column_list
INTO TEMP table_name
查询语句。
select_list:选择表或*
tab_name:表名称
view_name:视图名称。
condition:查询条件,可使用BETWEEN、IN、LIKE、IS NULL、LIKE、MATCHES、NOT、
AND、OR、=、!=或<>、>、 >= 、<=、<、ALL、ANY、SOME
column_name:分组字段名称
condition:群聚条件
column_list:排序字段列表,缺省ASC,可指定DSC;排序时,NULL值小于非零值。
table_name:临时表名称
例:略
附(常用函数)
(1)集合函数:
count(*)、
sum(数据项/表达式)、avg(数据项/表达式)、max(数据项/表达式)、min(数据项/表达式)
count(distinct 数据项/表达式)、sum(distinct数据项/表达式)、avg(distinct数据项/表达式)
(2)代数函数和三角函数
HEX(数据项/表达式)、ROUND(数据项/表达式)、TRUNC(数据项/表达式)、
TAN(数据项/表达式)、ABS(数据项/表达式)、MOD(被除数,除数)
(3)统计函数
标准差,stdev()、方差,variance()、范围,rang()
(4)时间函数
DAY(日期/时间表达式):返回数字型
MONTH(日期/时间表达式):返回整数
WEEKDAY(日期/时间表达式):0��6,0星期天,1星期一;返回整数
YEAR(日期/时间表达式)、返回整数
DATE(非日期表达式):返回日期型
EXTEND(日期/时间表达式,[第一个至最后一个]):返回指定的整数
MDY(月,日,年):返回日期型
CURRENT:返回日期型
(5)时间函数
ROUND(),四舍五入。如:ROUND(10.95,position)position进行四舍五入的前一位置
TRUNC(),截取。如:TRUNC(10.95,0)position截取的位置
INFORMIX临时表在下列情况下自动取消:
A.退出数据库访问工具(如DBACCESS)
B.SQL通话结束(DISCONNECT)
C.发出取消表语句
D.退出程序时
INSERT
INSERT INTO view_name|table_name [(column_list)] VALUES (value_list)
或 INSERT INTO view_name|table_name [(column_list)] select_statement
插入数据
view_name|table_name:视图名或表名称
column_list:数据项列表。
value_list:值列表
select_statement:查询语句。
例:略
DELETE FROM view_name|table_name WHERE search-conditions
删除语句。
view_name|table_name:视图名或表名称
search-conditions;删除条件
例:略
UPDATE
UPDATE view_name|table_name SET column_1 = value_1ist WHERE search_conditions
或UPDATE view_name|table_name SET column_1|* = value_1ist WHERE search_conditions
更新数据语句。
view_name|table_name:表名称或视图表名称
value_1ist:字段值
search_conditions:更新数据的条件
例:略
CHECK TABLE table-name
检查索引语句。
语句使用者是表的拥有者或拥有DBA权限;不能对systable使用此语句。
例:略
REPAIR TABLE table-name
修复索引。
语句使用者是表的拥有者或拥有DBA权限;不能对systable使用此语句。
例:略
LOAD FROM “file-name” INSERT INTO table_name [(column_name[,…])]
将文本数据栽入表中。
例:load form “aa.txt” insert into user;
UNLOAD TO “pathname”
将表中数据卸为文本。
例:unload to “aa.txt” select * from user;
INFO
系统信息查询。
INFO TABLES:得到当前数据库上表的名字。
INFO columns FOR table_name:指定表上的字段信息。
INFO INDEXES FOR table_name:指定表上的索引信息。
INFO [ACCESS|PRIVILEGES] FOR table_name:指定表上的存取权限。
INFO STATUS FOR table_name:指定表的状态信息。
例: info tables;
发表评论
-
expdp通过dblink来导入
2011-12-14 15:01 1798create.sql: spo create.log rem ... -
Library cache内部机制详解
2011-12-14 14:55 920Library cache内部机制详解 http://www ... -
Oracle的10046事件
2011-12-14 14:53 2105Oracle的10046事件,可以跟踪应用程序所执行的SQL语 ... -
REDO LOG MEMBER STATUS 和 REDO LOG GROUP STATUS
2011-12-14 14:51 935V$LOG 中列出的是REDO LOG GROUP STA ... -
oracle的exp/imp使用方法学习(转)
2011-08-30 08:54 971exp/imp两个命令可以说是oracle中最常用的命令了 ... -
oracle几个awr报告
2011-08-09 14:25 903工作中,碰到的数据库慢的几个awr报告 -
Oracle Profile 使用详解
2011-06-21 14:41 978一、目的: Oracle系统中的profile可以用来对 ... -
ORA-27013
2011-04-13 14:25 1521很新的一个bug,看下你的 memory_target是不是& ... -
ACLE表连接方式分析及常见用法
2011-03-23 09:14 1118摘要: 针对在数据仓库 ... -
ORACLE 外部表应用
2011-03-09 14:58 1075SQL> create or replace direc ... -
How to convert a 32-bit database to 64-bit database on Linux
2011-02-18 14:09 1222How to convert a 32-bit databas ... -
expdp impdp 数据库导入导出命令详解
2011-02-16 09:10 1962一、创建逻辑目录,该命令不会在操作系统创建真正的目录,最 ... -
Oracle手工解/锁表
2011-01-25 14:15 2515手工锁表:lock table tbl_t1 in row ... -
oracle动态性能视图
2011-01-22 10:47 866Oracle动态性能视图个人整理 -
RBO规则介绍
2011-01-17 16:45 1095•无条件使用索引•使用内置的优先级别决定访问路径•比较难以 ... -
关于排序、sort_area_size、临时表空间
2011-01-13 15:30 1127简单陈述一下:针对每 ... -
创建索引ORACLE 需要做的工作
2011-01-13 14:53 1327一. 先来看一下创建索引要做哪些操作:1. 把inde ... -
表之间的连接
2011-01-13 10:42 803Join是一种试图将两个表结合在一起的谓词,一次只能连接2 ... -
重建索引的条件
2011-01-12 16:43 962如果索引存在碎片,那每个索引数据块上的索引数据就更少,会导致我 ... -
TKPROF使用学习
2011-01-10 17:38 734Tkprof工具可用来格式化sql trace产生的文件, ...
相关推荐
本文将深入解析 Informix 主要的SQL语句,帮助你理解如何管理和操作数据库。 首先,`CREATE DATABASE`语句用于创建一个新的数据库。例如,`CREATE DATABASE customerdb WITH LOG IN "/usr/john/log/customer.log";`...
### SQL语句详解 #### 1. CREATEDATABASE **语法:** ```sql CREATE DATABASE database_name [WITH LOGIN "pathname"]; ``` **功能:** 用于创建一个新的数据库。 **参数解释:** - `database_name`: 新创建的...
Oracle数据库Sql语句详解大全,提供给大家快速查询复习哦!
Informix SQL 语句详解 Informix SQL 语句是一种功能强大且灵活的数据库管理语言,用于创建、管理和维护 Informix 数据库。下面是 Informix SQL 语句详解的知识点总结: 一、创建数据库 CREATE DATABASE 语句用于...
SQL语句详解
Oracle 数据库 SQL 语句详解大全 本资源总结了 Oracle 数据库中 SQL 语句的详解大全,涵盖了 SELECT 查询、条件查询、运算符、空值处理、列别名、去重复行等多方面的知识点。 一、SELECT 查询 * 基本语法:SELECT...
本文主要介绍了java执行SQL语句实现查询的通用方法详解,具有一定借鉴价值,需要的朋友可以参考下。 一、Java执行SQL语句实现查询的通用方法详解 在Java中执行SQL语句实现查询是非常常见的操作,以下是Java执行SQL...
Informix SQL语句详解,一本不错书哈
Oracle数据库Sql语句详解大全 本资源摘要信息将详细介绍 Oracle 数据库 SQL 语句的详解大全,涵盖 SELECT 语句的基本语法、查询表达式、运算符对空值的处理、查询字段的连接、列别名、去掉重复行等多方面的知识点。...
SQL的基础主要包括数据定义语言(DDL)和数据操作语言(DML),它提供了对数据库进行创建、修改、查询、删除等一系列操作的能力。 1. **数据定义语言(DDL)** DDL主要用于定义数据库的结构,包括创建、修改和删除数据...
Oracle SQL语句详解是一份详尽的Oracle SQL语言使用指南,其内容覆盖了从基础到高级的SQL语句编写技巧,适合数据库管理员、开发人员以及对Oracle数据库感兴趣的读者深入学习。下面对文档中的部分知识点进行详细解读...
Linq to Sql语句详解,讲述了Linq to Sql语法详解,包括Linq to sql的动态语句,和继承的应用。还有在分层结构情况下的应用。
值得注意的是,客户端的进程和服务器的进程是一一对应的,客户端进程主要负责发送SQL语句至服务器,而服务器进程则负责对SQL语句进行具体的处理。 第二步是语句的解析阶段。服务器接收到SQL语句后,首先会查询高速...
Oracle数据库Sql语句详解大全73431414.ppt 本资源是 Oracle 数据库 Sql 语句详解大全,涵盖了 SELECT 语句的基本语法、查询指定列、运用算数表达式、列别名、空值的处理、去掉重复行等多个知识点。 SELECT 语句...
SQL语句详解(323页)