informix数据库SQL学习

合集下载

Informix数据库dbaccess工具执行SQL语句操作说明

Informix数据库dbaccess工具执行SQL语句操作说明

【文档名称】:Informix数据库dbaccess工具执行SQL语句操作说明【背景说明】部分工程经常要对数据库进行操作,而各省客服及驻点同事对相关操作不熟悉,现整理一份实用的操作说明。

【适用范围】适用设备:Informix-9.4,Informix-11.5【文档正文】1)用informix账户登录操作系统,在开始菜单中打开“ol_实例名”。

2)直接输入dbaccess并回车。

选择Connection,然后选择Connect。

3)选择数据库实例。

一般只有一个,直接回车即可。

4)输入用户名informix,回车。

5)输入数据库密码,回车。

6)下方提示已连接。

7)直接按回车,然后选择Exit回车。

8)选择第一个Query-language回车。

9)选择Use-editor回车。

10)直接回车,默认用记事本打开编辑器。

11)将SQL语句粘贴到记事本。

12)关闭,选择保存,然后选择Run,回车,查看返回结果是否成功。

常用SQL语句:1、导出某张表。

(需注意当前用户对该目录是否有写入权限,否则会导出失败)unload to 'C:\_analarmtype' select * from _analarmtype; 导出_analarmtype表并保存到C盘根目录。

2、删除某张表。

delete from _analarmtype;3、导入某张表。

load from 'C:\ _analarmtype ' insert into _analarmtype;4、查询某张表的条目数。

select count(*) from analarmhis; 查询历史告警条目数select count(*) from ancurrentalarm; 查询当前告警条目数DBACCESS基本讲解.doc。

informix入门基础学习教程

informix入门基础学习教程

informix入门基础学习教程Informix是一个关系型数据库管理系统(RDBMS),是IBM公司开发的一种数据库管理系统。

它具有高效、可靠、安全的特点,被广泛应用于企业级应用程序中。

本文将介绍Informix的基础知识和学习教程。

一、Informix的概述Informix是一种面向企业级应用的数据库管理系统,它提供了高性能、可扩展、可靠的数据存储和处理能力。

Informix支持多种操作系统平台,包括Windows、Linux、Unix等。

它的特点包括事务处理、并发控制、数据安全等。

二、安装和配置Informix2. 配置Informix服务器,设置数据库存储路径、内存大小等参数。

3.创建数据库实例,设置数据库名称、用户名和密码等信息。

三、Informix的基本概念1. 数据库:Informix中的数据库是一组相关表的集合,用于存储和管理数据。

2.表:表是数据库中的基本组成单元,用于存储数据。

每个表包含多个列,每个列定义了一种数据类型。

3.列:列是表中的一个字段,用于存储特定类型的数据。

4.行:行是表中的一条记录,包含了一组相关的数据。

5.索引:索引是对表中一列或多列的值进行排序的数据结构,用于提高查询性能。

6.视图:视图是一个虚拟的表,它是基于一个或多个表的查询结果。

视图可以简化复杂的查询操作。

四、基本操作1.创建数据库:使用CREATEDATABASE语句创建一个新的数据库。

2.创建表:使用CREATETABLE语句创建一个新的表,并定义表中的列和其数据类型。

3.插入数据:使用INSERTINTO语句将数据插入到表中。

4.查询数据:使用SELECT语句从表中检索数据。

5.更新数据:使用UPDATE语句修改表中的数据。

6.删除数据:使用DELETEFROM语句从表中删除数据。

7.创建索引:使用CREATEINDEX语句在表上创建索引,以提高查询性能。

8.创建视图:使用CREATEVIEW语句创建一个新的视图。

Informix数据库sql常用语句

Informix数据库sql常用语句

1、删除表字段alter table 表名 drop (字段名,字段名...);//逗号隔开可以同时删除多个字段2、新增表字段alter table 表名 add 字段名称字段类型 before 字段名;3、查询表主键名称select constrname from sysconstraints where constrtype='P' and tabid=(select tabid f rom systables where tabname='表名称');4、删除表主键名称alter table 表名 drop constraint 主键名;5、新增表主键名称alter table 表名称 add constraint primary key(字段1,字段2,字段3....) constraint 主键名称;6、复制内容insert into data_user (comcode, appcode, appcomname, comlevel, usercode, userna me, mobile)select distinct comcode, appcode, appcomname, comlevel, usercode, username, mo bile from temp_user where mobile is not null ;7、创建临时表select * from data_user into temp temp_1 with no log;8、sql中四舍五入保留2位有效小数cast(字段名称/10000 as decimal(14,2))数字转字符:to_char(cast(字段名称/10000 as decimal(14,2)))9、大表创建索引CREATE INDEX idx_user on user (username,usercode) online;10.修改表名称RENAME table data_user to data_user_new11.修改表字段名称RENAME COLUMN data_fwinfo.mobile TO username12、更新表字段alter table salesgrade modify newstatcode varchar(30);13、授权数据库grant select on salesgrade to ccpqry14、创建外键约束ALTER TABLE nx_carorprp2 ADD CONSTRAINT FOREIGN KEY (userunique)REFERENCES nx_staff (userunique) CONSTRAINT fk_nx_carorprp2 ON DELETE CASCA DE ;。

(最新)informix SQL汇总(包括效率分析)(精品文档)

(最新)informix SQL汇总(包括效率分析)(精品文档)

informix SQL汇总每个数据库管理系统(DBMS)都有其自己的数据处理语言(DML),但所有DML都基于一种语言SQL语言——结构化查询语言(SQL),其发音为“sequel”或“S-Q-L”。

目前SQL的前身是E.F.Codd博士70年代发明的。

第一个实现是在76年,称为sequel。

而SQL首先被采用是在IBM的System R项目中。

86年10月由ANSI确定为正式的关系查询语言标准。

ISO在对其修改后在90年制定为国际工业标准。

无论进行何种数据库学习,SQL语言都是必学内容。

在我国数据库语言SQL标准(GB12991)中规定了两个数据库语言的语法与语义:模式定义语言(SQL-DDL),描述SQL数据库的结构与完整性的约束;数据操纵语言(SQL-DML),描述操作数据库的执行语句在本文章中涉及以上两个中的主要部分,(为叙述方便,以下对其统称为SQL),由于SQL 在嵌入C时表现略有不同,所以下面均以非嵌入时的SQL进行。

另外本文章也不是SQL的入门教材,阅读者应学习并实际用SQL操作过某种数据库。

如果你系统学习过数据库理论,又能熟练操作INFORMIX关系数据库,甚至从事过有关数据库程序的设计,还那么作者在此恭喜你了。

如果你尚未系统学习过数据库理论,并对INFORMIX数据库了解甚少,建议你先阅读有关的文档。

informix SQL汇总【主要SQL语句详解】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]选择数据库。

InformixSQL语句详解

InformixSQL语句详解

Informix SQL 语句详解(1)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”;DA TABASE databse-name [EXCLUSIVE]选择数据库。

database_name:数据库名称。

EXCLUSIVE:独占状态。

存取当前目录和DBPATH中指定的目录下的数据库,事务中处理过程中不要使用此语句。

例:dtabase customerdb;3. CLOSE DA TABASE关闭当前数据库。

database_name:数据库名称。

此语句之后,只有下列语句合法:CREATE DATABASE;DATABASE;DROP DA TABSE;ROLLFORWARD DA TABASE;删除数据库前必须使用此语句。

例:close database;4. DROP DA TABASE database_name删除指定数据库。

database_name:数据库名称。

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

例:drop databse customerdb;5. CREATE [TEMP] TABLE table-name (column_name datatype [NOT NULL], …)[IN “pathname”]创建表或临时表。

informix学习总结

informix学习总结

informix学习总结INFORMIX的学习第⼀章ESQL/C的数据类型数据类型SQL与C数据类型的对应简单类型SQL CCHAR(n) char(n+1)CHARCTER(n) char *SMALLINT short intINTERGERINT long intSMALLFLOATREAL floatFLOATDOUBLE PRECISIONdoubleSERIAL long intDATE long int复杂类型SQL CDECIMALDEC NUMERIC dec_t or struct decimalMONEY dec_t or struct decimalDATETIME dtime_t or struct dtimeINREVER intrvl_t or struct intrvl VARCHAR varchar or string数据类型转换转换类型转换后FLOAT DECIMAL(16)SMALLFLOAT DECIMAL(8)INTERGER DECIMAL(10,0)SAMLLINT DECIMAL(5,0)数据类型的转换函数有关CHAR类型的函数1、以空值结尾的串的操作函数rdownshift(char *s) 把⼀个字符串中的所有字母转换成⼩写形式。

rupshift(char *s) 把⼀个字符串中的所有字母转换成⼤写形式。

stcat(char *s, char *dest) 把⼀个字符串同另⼀个字符串相连接。

stcmpr(char *s1, char *s2) ⽐较两个字符串。

stcopy(char *from, char *to) 把⼀个字符串拷贝到另⼀个字符串。

stleng(char *string) 统计字符串的长度。

2、定长串的操作函数bycmpr(char byte1, byte2, rpt len) ⽐较两组连续的字节内存块。

bycopy(char *from, char *to, int len) 把⼀块内存的内容拷贝到另⼀块内存。

INFORMIX数据库操作及SQL语法

INFORMIX数据库操作及SQL语法

编号:TN-070101001TIENON数据库培训教程INFORMIX基本操作及SQL语法2007年1月,V 1.00目录1、引言 (5)1.1、读者对象 (5)1.2、内容简介 (5)1.3、课程时间 (5)1.4、课程目标 (5)2、数据库基本概念...........................................................错误!未定义书签。

2.1、从身边的例子了解数据库......................................................... 错误!未定义书签。

2.2、数据库系统概述......................................................................... 错误!未定义书签。

2.2.1、数据库的产生................................................... 错误!未定义书签。

2.2.2、数据库系统组成................................................. 错误!未定义书签。

2.2.3、与数据库相关的软件系统......................................... 错误!未定义书签。

2.2.4、数据库系统特点................................................. 错误!未定义书签。

2.2.5、数据库系统的历史............................................... 错误!未定义书签。

2.2.6、数据库系统的发展趋势........................................... 错误!未定义书签。

2.2.7、数据库的分类................................................... 错误!未定义书签。

基于Informix数据库典型低效率SQL语句的分析及优化方法

基于Informix数据库典型低效率SQL语句的分析及优化方法
贵 州 科 学 3 ( ) 2 - 8 2 1 0 2 :1- ,0 2 2
Gu  ̄ u .  ̄ c / z se e cn
基 于 Ifr x数 据 库 典 型 低 效 率 S omi n QL语 句 的 分 析 及 优 化 方 法
郑 添 健 索 红敏
( 中国人寿保险股份有限公司 黔南分公司信息技术部 都匀 5 8 0 ; 50 0 贵州 民族学 院 贵 阳 5 0 2 ) 5 05

要 : 本文从跟踪 S L性能的方法和 I om x应用调优 的原 则 , If mi Q r ri f 对 no x典型低 效率 S数
据库 系统 实际应用方面提 出了提 高 I om x n r i 数据库运行效 率的方法, f 旨在 为 I omx数据 库维护人 员和程序设 计人 员提供有 r ri f
t a p l ai n o f r x d tb s O a o p o i e u eu ee e c s fr t o e w o man an a d d s n t e i — il a p i t fi omi aa a e S s t r v d s f lr f r n e o h s h i t i n e i h n e c o n g
Ba e n I o m i t ba e s d o nf r x Da a s
Z E inj n 一 S O n — n H NB Ta - a i U Ho gmi
( C i i srneC m a y S uh G i o rnh D y n u h u5 8 0 ,C ia G i o ol e o hn L e nua c o p n , ot u h uB a c , u u ,G i o 5 0 0 h ; u h uC lg fr a fI z z n z e N t n li , u ag, u h u5 0 2 , hn ) ai aie G i n G i o 5 0 5 C i o ts y z a
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

简单的SELECT语句SELECT语句是最重要也是最复杂的SQL语句,它和insert update和delete 语句一起用于数据操作,主要用于:●从数据库中检索数据●作为INSERT语句的一部分产生新的行●作为UPDATE语句的一部分更新信息1.S ELETE语句的简要介绍●构成:SELECT 子句指定要查询的表FROM 子句指定要查询的列WHERE子句选择特定的列或创建一个新的连接条件ORDER BY子句改变数据产生的次序INTO TEMP子句把结果以表的形式存放起来,供以后使用其中SELECT、FORM子句是必选的。

●权限查询数据库必须对该数据库具有connect权限以及对表具有SELECT权限,这些权限通常作为默认值赋给用户。

与数据库的操作权限有关的grant 和revoke语句将在后面讲到。

●关系操作选择:在表中满足特定条件的行的水平子集。

这一类型的SELECT 子句返回表中的一部分行的所有列。

选择是通过SELECT语句的WHERE子句来实现的。

例:SELECT *FROM customWHERE state=”NJ”显示结果如下:customer_num 107fname Charleslname Reamcompany Athletic Suppliesaddressl 41 Jordan Avenueaddress2city Palo Altostate CAzipcode 94304phone 415-356-9876投影:在表中一些列的垂直子集,子集包含了表中这些列的所有行。

这样的SELECT 语句返回表中所有行的一些列。

投影是通过在SELECT语句中的SELECT子句的选项来实现的。

例:SELECT UNIQUE city, state,zipcodeFROM customer查询结果包含了与customer 表中的相同数目的行,但仅投影了列的一个子集显示结果如下:city state zipcodeBartlesville OK 74006Blue Island NY 60406Brighton MA 02135Cheey Hill NJ 08002Denver CO 80219Jacksonville FL 32256Los Altos CA 94022Menlo Park CA 94025Moutain View CA 94040Moutain View CA 94063Oakland CA 94609Palo Alto CA 94303Palo Alto CA 94304Phoenix AZ 85008SELECT语句在大多数情况下同时使用选择和投影,查询返回表中的一些行和一些列。

例:SELECT UNIQUE city,state,zipcodeFROM customerWHERE state=”NJ”显示结果如下:city state zipcodeCherry Hill NJ 08002Princeton NJ 08540连续:将两个或多个表通过一个或多个相同的列联系起来成为一个新的结果表例:SELECT UNIQUE city,state,zipcode,snameFROM customer ,stateWHERE customer ,state = state.code显示结果如下:city state zipcode snameBartlesville OK 74006 Oklahoma Blue Island NY 60406 New YorkBrighton MA 02135 MassachusettsCherry Hill NJ 08002 New JerseyDenver CO 80219 ColoradoJacksonville FL 32256 FloridaLos Altos CA 94022 californiaMenlo Park CA 94025 californiaMountain View CA 94040 californiaMountain View CA 94063 californiaOakland CA 94609 california Palo Alto CA 94303 californiaPalo Alto CA 94304 californiaPhoenix AZ 85008 Arizona2.单表SELECT语句●检索所有的行和列使用*号:星号代表所有的列的名字。

例:SELECT *FROM manufact显示结果如下:manu_code manu_name lead_timeSMT Smith 3ANZ Anza 5NRG Norge 7HSK Husky 5HRO Hero 4SHM Shimara 30KAR karsten 21NKL Nikolus 8PRC ProCycle 9●选择特定的列例:SELECT UNIQUE customer_num FORM orders注:此处关键字UNIQUE 或它的同义词DISTINCT 来抑制重复的行显示结果如下:customer_num101104106…●排序◆列排序:可以通过改变选项表中列的次序来改变各列在显示时的次序。

例:SELECT manu_name , manu_code , lead_timeFROM manufact显示结果如下:manu_name manu-code lead_timeSmith SMT3Anza ANZ5Norge NRG7Husky HSK5Hero HRO4Shimara SHM30Karsten KAR21Nikolus NKL8ProCycle PRC9◆行排序:可以通过SELECT 语句中加入ORDER BY 子句来要求系统按某各指定次序对数据进行排序。

例:SELECT manu-code, manu_name, lead_timeFROM manufactORDER BY lead_time以lead_time 的次序显示manufact表中的每一行和列。

显示结果如下:manu_name manu_codelead_timeSmith SMT3Hero HRO4Husky HSK5Anza ANZ5Norge NRG7Nikolus NKL8ProCycle PRC9Karsten KAR21Shimara SHM30缺省时检索所得的数据排序后按升序显示。

升序对CHARACTER 数据类型而言是从大写A 到小写z,对数字类型而言是从最小值到最大值,DATE和DATETIME 类型的数据从早到晚的顺序排序,INTERVAL 数据按持续时间从最短到最长排序。

在列名后接关键字DESC 表明检索所得数据按降序排序。

例:SELECT *FROM manufactORDER BY lead_timeDESC显示结果如下:manu_code manu_name lead_timeSHM Shimara 30KAR Karsten 21PRC ProCycle 9NKL Nikolus 8NRG Norge 7HSK Husky 5ANZ Anza 5HRO Hero 4SMT Smith 3可以实现按照多列排序,人而建立一个组排序,缺省仍为升序,在ORDER BY 子句中列首位得列优先。

例:SELECT *FROM stockORDER BY manu_code, unit_price显示结果如下:stock_num manu_code description unit_price unitunit_descr5 ANZ tennis racquet $19.80 each each9 ANZ volleyball net$20.00 each each6 ANZ tennis ball$48.00 case 24 cans/case313 ANZ swim cap$60.00 box 12/box201 ANZ golf shoes$75.00 each each310 ANZ kick board$84.00 case 12/case301 ANZ running shoes $95.00 each each304 ANZ watch$170.00 box 10/box110 ANZ helmet$244.00 case 4/case205 ANZ 3 golf balls$312.00 case 24/case8 ANZ volleyball$840.00 case 24/case302 HRO ice pack$4.50 each each309 HRO ear drops$40.00 case 20/case301 HRO running shoes $42.50 each each● 选择特定的行可以在SELECT 语句中加入WHERE 子句来从表中检索特定的行。

通过WHERE 子句来设置一个比较条件,查询条件使用特定的关键字和运算符来定义搜索条件。

关键字:可以用BETWEEN 、LIKE 或MATH 测试相等的情况;或用IS NULL 来测试空值;可以把关键字NO 和这些关键字连用来指定相反的条件。

运算符:比较项的大小按照排序时的顺序确定,除了在测试NULL 值的时候,不能在比较项中使用TEXT 或BYTE 列。

在WHERE 子句中,可以用前面讲的关键字和运算符来建立比较条件查询,用来:◆ 包括行在WHERE 子句中用关系运算符 = 来包括指定的行 ◆例:SELECT customer_num, call_code, call_dtime, res_dtime FROM cust_callsWHERE customer_num = 106显示结果如下:customer_num call_code call_ dtime res_dtime106D 1994—06—12 08:20 1994—06—12 08:25 ◆ 排除行在WHERE 子句中用关系运算符!=或<>来排除指定的行例: SELECTcustomer_num, company, city, stateFROM customerWHERE state !=”CA”显示结果如下:customer_num company citystate119 The Triathletes Club Cherry Hill NJ120 Century Pro Shop Phoenix AZ121 City SportsWilmington DE122 The Sporting Life Princeton NJ123 Bay SportsJacksonville FL124 Putnum’s Putters Bartlesville OK125 Total Fitness Sports Brighton MA126 Neelie’s Discount Sp Denver CO127 Big Blue Bike Shop Blue Island NY128 Phoenix University Phoenix AZ◆排除一定范围和行在WHERE 子句中使用关键字NOT BETWEEN 来排除一定范围的例:SELECT fname, lname, company ,city,stateFROM customerWHERE zipcode NOT BETWEEN “94000”AND “94999”ORDER BY state显示结果如下:fname lname company city stateFrank Lessor Phoenix UniversityPhoenix AZFred Jewell Century Pro Shop Phoenix AZEileen Neelie Neelie’s Discount Sp Denver COJason Wallack City SportsWilmington DEMarvin Hanlon Bay SportsJacksonville FLJames Henry Total Fitness SportsBrighton MABob Shorter The Triathletes CluCherry Hill NJCathy 0’Brian The Sporting Life Princeton NJKim Satifer Big Blue Bike ShopBlue Island NYChris Putnum Putnum’s Putters Bartlesville OK◆指定行有多种方式可以在WHERE子句中指定行例:SELECT catalog_num ,stock-num, manu_code, cat_advertFROM catalogWHERE catalog_num, BETWEEN 10005 AND 10008或:SELECT catalog_num, stock_num, manu_code, cat_advertFROM catalogWHERE catalog_num >= 10005 AND catalog_num <= 10008第一个语句使用了关键字,第二个语句使用了关系运算符。

相关文档
最新文档