Informix SQL 介绍(2)

来源:互联网 作者:2 2007-12-01 出处:pcdog.com

informix  数据库  数据库管理  

  例1:

CREATE TABLE ORDERS

(ORDER_NUM INTEGER

UNIQUE CONSTRAINT ORDER_NUM_UQ,

ORDER_DATE DATE

NOT NULL CONSTRAINT ORDER_DATE_NN

DEFAULT TODAY );

例2:

CREATE TABLE CUSTOMER (

CUSTOMER_NUM SERIAL,

FNAME CHAR(20),

PRIMARY KEY  (CUSTOMER_NUM)

CONSTRAINT PK_CNUM

);

CREATE TABLE ORDERS (

ORDER_NUM SERIAL,

CUSTOMER_NUM INTEGER,

FOREIGN KEY (CUSTOMER_NUM)

REFERENCES CUSTOMER 

CONSTRAINT FK_CNUM

);

数据类型:字符型(CHAR(20)), VARCHAR(MINSIZE, MAXSIZE)

数值型(六种,DECIMAL(16,2),SMALLINT,INTEGER,SMALLFLOAT,FLOAT,SERIAL )

日期型( DATE, 默认格式为:MM/DD/YYYY )

注:要修改DATE类型的缺省格式, 只要在用户主目录的.profile文件中做如下说明: DBDATE=Y4MD/ EXPORT DBDATE

货币型(MONEY (8,2))

其它(如:INTERVAL,DATETIME 等)

建立索引(必须建立命名索引)

CREATE [ UNIQUE ] INDEX 索引名 ON 表名(字段名)

CREATE [ UNIQUE ] INDEX 索引名 ON 表名(字段名) DISABLED;

SET INDEXES 索引名 ENABLED

DROP INDEX 索引名

数据库权限

CONNECT: 访问数据库

RESOURCE: 允许用户建立或清除数据库中的表和索引

DBA: 数据库管理员,所有权限,一般建表者即为DBA

GRANT 权限 TO 〈PUBLIC | 用户名〉

REVOKE 权限 FROM 〈PUBLIC | 用户名〉

检索数据库

DATABASE 数据库名

SELECT  *  FROM  表名

SELECT 字段名 ,字段名 FROM 表名

SELECT 字段名 ,字段名+-*/ 新字段名 FROM 表名

SEKECT AVG(字段) ,MIN(),MAX(),SUM(),COUNT() FROM 表名

WHERE 子句  = 〈〉 != <  <= > >=  

MATCHES * 0—多个 ? 单个 [ ] 单个字符或一个范围 \ 转义下一个字符

LIKE  %:0--多个 _ 单个 \ 转义下一个特殊字符

ORDER BY (DESC)

时间函数: DAY MDY MONTH WEEKDAY YEAR DATE CURRENT

其它函数: LENGTH USER CURRENT TODAY 

从多个表中查找, SELECT 嵌套 

字段名不同可直接写出,若不同表中有相同字段名,则前缀表名

SELECT 表一.字段名 FROM 表一, 表二

向表中插入数据

INSERT INTO表名 [ 列1, 列2。。。。] VALUES [  ] 

修改

UPDATE 表名 SET 字段名= WHERE  

删除

DELETE FROM 表名 WHERE

修改表的结构

例1:

ALTER TABLE表名

DROP COL2 ,

MODIFY COL1 INTEGER NOT NULL ,

ADD COL4 INTEGER ,

ADD COL3 CHAR(20) BEFORE COL4;

例2:

ALTER TABLE ORDERS 

MODIFY NEXT SIZE 300;

改名:

RENAME  COLUMN TABLE。COL TO NEWCOL_NAME

RENAME  TABLE TABLE_NAME TO NEWTABLE_NAME

RENAME  DATABASE DATABASE_NAME TO NEWDATABASE_NAME

删除:

DROP TABLE TABLE_NAME

DROP DATABASE DATABASE_NAME


更多内容请看PCdog.com--informix基础专题
上一篇:Informix SQL 语句详解(3)
下一篇:Informix 5的安装及初始配置(2)