loading ...
loading...

2008-07-11 | informix sql1

分享
 

1. 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;

  3. CLOSE DATABASE

  关闭当前数据库。

  database_name:数据库名称。

  此语句之后,只有下列语句合法:

  CREATE DATABASE DATABASE DROP DATABSE ROLLFORWARD DATABASE

  删除数据库前必须使用此语句。

  例:close database;

  4. DROP DATABASE database_name

  删除指定数据库。

  database_name:数据库名称。

  用户是 DBA 或所有表的拥有者;删除所有文件,但不包括数据库目录;不允许删除当前数据库(须先关闭当前数据库);事务中处理过程中不能使用此语句,通过 ROLLBACK WORK 也不可将数据库恢复。

  例:drop databse customerdb;

  5. 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;

  6. 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);

  7. RENAME TABLE oldname TO newname

  修改表名。

  oldname:原名称。

  newname:新名称。

  RENAME 使用者是表的拥有者或拥有 DBA 权限,或被授权;事务中处理过程中不要使用此语句。

  例:rename user to bbb;

  8. DROP TABLE table-name

  删除表。

  table-name:表名称。

  删除表意味着删除其中所有数据、各字段上的索引及对表的赋权、视图等;用户不能删除任何系统目录表;语句使用者是表拥有者或拥有DBA权限,事务中处理过程中不要使用此语句。

  9. RENAME COLUMN table.oldcolumn TO newcolumn

  修改字段名。

  table.oldcolumn:表名及原字段名称

  newcolumn:新字段名称。

  语句使用者是表的拥有者或拥有 DBA 权限或有 ALTER 权限的用户,事务中处理过程中不要使用此语句。

  例:rename column user.c6 to c7;

  10. CREATE VIEW view-name column-list

  CREATE VIEW view-name column-list AS select_statement [WITH CHECK OPTION]

  创建视图。

  view-name:视图名称。

  column-list:字段列表。

  select_statementSELECT语句。

  以下语句不使用视图:ALTER TABLEDROP INDEXALTER INDEX LOCK TABLECREATE INDEX RENAME TABLE;视图将延用基表的字段名,对表达式等虚字段和多表间字段重名必须指明标识其字段名;若对视图中某些字段命名,则所有字段都必须命名;视图中数据类型延用基表中的数据类型,虚字段起诀于表达式;不能使用 ORDER BY UNION 子句;对视图中所有的字段要有 SELECT 权限;事务中处理过程中使用此语句,即使事务回滚,视图也将建立,不能恢复。

  例:create view v_user as select * from user where c1 = “B1”;

  11. DROP VIEW view-name

  删除视图。

  view-name:视图名称。

  用户可删除自己建立的视图;视图的后代视图也被删除;事务中处理中不要使用此语句。

  例:drop view v_user;
分享 分享 |  评论 (0) |  阅读 (?)  |  固定链接 |  发表于 15:16
搜狐博客温馨提示:搜狐博客官方不会要求参加活动的各位博友缴纳任何的手续费用。请勿轻信留言、评论中的中奖信息,更不要拨打陌生电话及向陌生帐户汇款,谨防受骗!识别更多网络骗术,请 点击查看详情
您还未登录,只能匿名发表评论。或者您可以 登录 后发表。
 
  *中国人爱国心,搜狗输入法爱国主题皮肤下载>>
表  情:
加载中...
回复通知: 同时用小纸条通知对方该回复