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

合集下载

InformixDBACCESS讲解

InformixDBACCESS讲解

一、DB-ACCESS应用工具的说明使用DB-ACCESS可以方便的实现下面的功能:1.调试、执行那些很少执行或只需要执行一次的查询;2.方便的连接到一个或多个数据库服务器,在数据库服务器和外部文件之间交换数据,或显示数据库的相关信息;3.显示系统数据表和数据模式的信息;4.作为一个方便的SQL语言的学习环境;5.查看应用程序的执行结果,作为应用程序的测试工具;A.进入DBACCESS→$DBACCESS [DATABASE]若后方直接输入DATABASENAME则一并开启之;例:DBACCESS STORES@XYZ或DBACCESS //XYZ/STORES打开XYZ数据库服务器上的STORES数据库,若选择当前数据库服务器上的STORES数据库,则省略@XYZ(即:DBACCESS STORES);B.主功能选择Query-Language→提供管理者一个SQLeditor,可自行输入SQL指令并执行Connection→建立或断开与数据库服务器的连接Database→提供管理者管理数据库的建立、异动与删除Table→提供管理者管理数据表的建立、异动与删除Session→描述数据库服务库和主机Exit→退出DBACCESSC.Query-Language功能选择New→清除Editor画面,输入SQL指令若输入多条SQL语句,请用“;”将SQL语句分割开Run→执行Editor中所输入之SQL指令Modify→修改Editor中所输入之SQL指令Use-editor→使用DBEDIT所指定的Editor当编辑器Output→将执行结果产生至打印机或档案Choose→选择已建立好的SQL档案复制到Editor中供使用Save→Editor中所输入的SQL指令存至Editor中供以后参考使用用户要保存的目标文件名最大长度为10个字符,DB-ACCESS自动为其添加扩展名“.sql”Info→查询DATABASE与TABLE的资讯Columns→显示指定表的列的信息,包括数据类型和是否允许为空值Indexes→显示指定表的索引的名字、拥有者和类型(唯一索引和普通索引)Privileges→列出具有表级插入、删除等权限的用户列表References→列出对指定表中的列具有关联权限的用户Status→列出表的状态信息,字段数、记录数、行的大小、创建日期Constraints→关联、主码、唯一限制和列的默认值Triggers→触发器的相关信息Table→选择表Fragments→表的空间分配策略Drop→删除已存在之SQL档案Exit→退出D.Connection功能选择Connect→可以和特定的数据库建立联系Disconnect→可以断开当前数据库服务器的连接E.Database功能选择Select→开启数据库若选择非当前数据库服务器,则必须写清数据库服务器名称,且需将二者用“@”分开Create→建立新数据库若在非当前数据库服务器上创建数据库,则必须输入数据库服务器名和数据库名,且需将二者用“@”分开Dbspace→数据库空间选择屏幕注:rootdbs主要用来存储对应数据库服务器的系统信息,故最好不要选择Log→日志的管理选项None→默认值,不记录事务日志Log→选择不缓冲的事务日志记录方式Buffered-log→用缓冲的方式记录事务日志Log-Mode-ansi→创建ANSI兼容的事务日志记录方式,不缓冲Info→显示当前数据库的相关信息dbspace→显示存储数据库的数据库空间的信息nls→显示本地语言设置和支持信息procedures→显示内部存储过程,并可列出过程体routines→列出内部存储过程和函数信息,同样可以列出内部存储过程和函数信息database→选择另外一个数据库Drop→删除数据库Close→关闭当前数据库Exit→退出F.Table功能选择Create→建立新数据库add→显示模式编辑器,允许用户创建新的列modify→显示表中的列,在创建表之前可以进行修改drop→删除表中现存的列screen→显示下一页table-options→显示、修改表的存储空间选择、存储空间分配、物理行号Storage→显示表的存储空间分配策略,并允许修改eXtent-size→设定基本存储空间大小Next-size→扩展存储空间块的大小Lock-mode→数据锁定方式constraints→定义主码、外码、检查和唯一限制,列的默认值注:在系统弹出模式编辑器后,只能用空格键在菜单中选择不同的选项Alter→修改数据库结构内容Info→查询数据库结构内容Columns→查看选定表的列的信息,列的信息包括:列名、数据类型及精度、是否允许为空值Index→查看表的索引References→查看表中字段的关联权限triGgers→查看表的触发器的信息Fragments→查看表的存储分配策略Drop→删除数据库Exit→退出G.Session功能选择显示当前的数据库服务器名称、类型、主机等信息二、操作DB-ACCESS应用工具的小技巧ESC→结束编辑,返回CTRL-A→改变输入模式插入或替换CTRL-D→删除当前行光标后字符CTRL-R→重写屏幕CTRL-W→打开上下文关联的帮助屏幕CTRL-X→删除光标处字符三、INFORMIX-SQL指令的介绍DATABASE 开启数据库语法:database <database name>例如:database dbs1CLOSE DATABASE 关闭目前使用中的数据库DROP DATABASE 删除数据库语法:drop database <database name>例如:drop database <dbs1>CREATE TABLE 建立数据表语法:create [temp] table <table name> (column definition)例如:create [temp] table tab001 (col001 char(1) not null,col002 smallint default 0 not null,col003 decimal(16,2) not null,col004 date default today)CREATE INDEX 对已存在的数据库建立索引档语法:create [unique] index <index name> on <table name>(columns <DESC>)例如:create [unique] index ix001 on tab001 (col001,col002 desc,col003)DROP INDEX 删除索引档语法:drop index <index name>例如:drop index ix001DROP TABLE 删除数据库语法:drop table <table name>例如:drop table tab01RENAME COLUMN 将栏位改名称语法:rename column <old column name> to <new column name>例如:rename column col001 to col002RENAME TABLE 将数据表改名称语法:rename table <old table name> to <new table name>例如:rename table tab001 to tab002INSERT(新增、插入)SQL:(struct query language)UPDATE(修改)SELECT(查询)DELETE(删除)INSERT 新增资料内容语法:insert into <table name> <column list> values(<values>)例如:insert into tab001 values (“value001”,“value002”…)注:column list 选择项的填入,若正与table中的栏位一样,顺序也相同,可省略不写,如果填入,values部分必须与该部分相符,资料型态也一样UPDATE 修改数据内容语法:update <table name> set <column>=<value>, <column>=<value>,…where <condition>例如:update tab001 set col001=“value1”,col002=“value2”where…DELETE 删除资料内容语法:delete from <table name> where <condition>例如:delete from tab001 where …SELECT 读取资料内容语法:select <目标列表达式>from [<数据库名称>] <owner>.]{<表名>|<视图名>}…[where <条件表达式>][group by <列名1> [having <内部函数表达式>]][order by <列名2> ] asc(升序、默认) desc (降序)注:having与where的区别:where后进跟固定栏位;having后跟运算结果及where无法完成的部分目标列表达式中,*:表示要查询所有的属性列,在between和in中均不可使用distinct:表示在结果表中去掉重复组count(*):计算符合条件的记录个数sum():求符合条件的某一列值的总和(此列必是数值)avg():求符合条件的某一列值的平均值(此列必是数值)max():求一列中最大值min():求一列中最小值unique:不可重复,唯一查询条件表达式中,范围确定:between and ,not between and列表或集合:in,not in多重条件:and or not字符匹配:like 用like时,常配%任意长度的字符串LOAD 将外部文本档转入至资料档语法:load from <output file> delimiter <sysmbol> insert into <table name> (column list) 例如:load from “output.txt”delimiter “|”insert into tab001UNLOAD 将资料内容转出文本档语法:unload to <output file> delimiter <symbol> <select statement>例如:unload to “output.txt”delimiter “|”select * from tab001 where…。

Informix数据库的操作和维护手册

Informix数据库的操作和维护手册

Informix数据库的操作和维护手册概述Informix Dynamic Server (IDS) 作为一个先进的关系数据库管理系统,功能强大,性能优越,采用了DSA动态可伸缩体系结构,具有非常好的可伸缩性和适应性,它在我国许多行业,特别是金融、邮电等领域,都有广泛的应用.1informix数据库服务器运行方式1.1脱机方式:数据库服务器不运行时.未分配任何共享内存1.2静默方式:当数据库服务器进程正在运行并且已分配共享内存,但系统不允许数据库用户访问1.3联机方式:只有管理员(用户informix)可以访问该数据库服务器,用户可以与数据库服务器连接并执行说有数据库活动,这是数据库服务器的普通运行方式1.4维护方式:用户informix或用户root可以在数据库服务器联机时使用命令行实用程序更改许多数据库服务器ONCONFIG参数值2informix数据库的工作模式切换2.1从脱机到静默数据库服务器从脱机方式更改到静默方式时,数据库服务器讲初始化共享内存,数据库服务器处于静默方式时,任何会话都不可以获得对数据库服务器的访问权.操作命令(oninit –s)2.2从脱机到联机数据库服务器从脱机方式转到联机方式时,数据库服务器将初始化共享内存.数据库服务器处于联机方式时,它可用于所有数据库服务器会话.操作命令(oninit)2.3从静默到联机数据库服务器从静默方式到联机方式时,所有会话都将获得访问权操作命令(onmode –m)2.4缓缓从联机到静默数据库服务器缓缓从联机方式到静默方式以便在不中断当前处理的情况下限制对数据库服务器的访问.操作命令(onmode –s)2.5立刻从联机到静默将数据库服务器立刻从联机方式转到静默方式以便尽快限制对数据库服务器的访问,进行中的工作可能会丢失.操作命令(onmode –uy)2.6从任何方式立刻到脱机可以将数据库服务器立刻从任何方式转到脱机方式,数据库服务器将清除已由数据库服务器终止的所有会话,活动的事务将回滚.操作系统(onmode –ky)3informix数据库的磁盘管理物理结构IDS管理的主要是page,chunk逻辑结构IDS管理的主要是extent,tablespace,dbspace连续的page组成extent ,多个extent组成tablespace,dbspace用来逻辑的管理chunck而每个tablespace建立在dbspace上.3.1chunck一个单元的物理磁盘空间,在9,4版本之前不容许超过2G。

informix数据库的操作和维护

informix数据库的操作和维护

INFORMIX数据库的常用管理命令约定✧命令行中,<>括起来的内容不是实际要键入的内容,而是要键入的内容的说明。

✧命令行中,[]括起来的内容表示是可选项。

✧命令行中,a | b表示a或b选其中之一,为消除二义性,有时也用{a | b }表示。

✧命令行尾的\表示由于排版的限制一行写不下换到下一行,实际输入时可以不换行。

✧/* */括起来的斜体字表示注释。

1.简介INFORMIX-OnLine Dynamic Server(以下简称OnLine)提供了一个字符窗口界面的集成管理工具onmonitor,通过它可以完成除了数据备份外的大部分常用管理任务。

同时,OnLine还提供了一整套命令行管理工具,常用的有以下这些:命令功能oninit 启动OnLineonmode 改变模式和共享内存onstat 通过共享内存结构监视OnLine的操作状态oncheck 检查、修复、显示OnLine的磁盘结构ondblog 改变database的log方式onparams 修改逻辑和物理日志的配置参数onspaces 修改blobspace和dbspace的配置ontape 数据库备份和恢复工具onarchive 比ontape功能更强的备份和恢复工具dbexport 将整个database备份成文本文件格式dbimport 用文本文件格式的database备份重建databasedbschema 显示数据库、表的结构dbaccess 字符窗口界面的交互式SQL命令执行环境严格来说,最后四个命令不属于管理工具,但是因为在进行数据库管理时经常用到,所以也在此列出。

2.权限在Informix中,用户root和informix拥有最高的权限,可以执行所有的管理命令,可以查看所有database中的数据。

其次是属于informix组的用户,它们可以执行数据库server的启动和关闭等重要的管理命令。

其它不在informix组中的用户权限最低,只能执行一般的管理命令。

informix的常用SQL语句

informix的常用SQL语句

informix的常用SQL语句1、创建数据库eg1. 创建不记录日志的库testdb,参考语句如下:CREATE DATABASE testdb;eg2. 创建带缓冲式的记录日志的数据库testdb(SQL语句不一定在事务之中,拥有者名字不被用于对象的解析),参考语句如下:CREATE DATABASE testdb WITH BUFFERED LOG;eg3. 创建无缓冲式的记录日志的数据库testdb(SQL语句不一定在事务之中,拥有者名字不被用于对象的解析),参考语句如下:CREATE DATABASE testdb WITH LOG;eg4. 创建ANSI的数据库(记录日志时无缓冲,SQL总在事务之中,拥有者名字被用于对象的解析),参考语句如下:CREATE DATABASE testdb WITH LOG MODE ANSI;2、创建普通数据表普通数据表又被称为持久数据表,它在system catalog里注册。

一个普通数据表可对多个sessi on和connection。

创建时可以指定dbspace。

eg1、如下语句创建了一个集团信息表cti_vccinfo:create table cti_vccinfo(vccid CHAR(6) not null,vccname VARCHAR(255),effective INTEGER default0not null,agentmax INTEGER default0not null,ivrmax INTEGER default0not null,updatekey VARCHAR(30),primary key(vccid) constraint PK_CTI_VI);3、创建临时数据表临时数据表不在system catalog里注册。

一个临时数据表只对对应的某个session或connectio n可见,在对应的session或connection结束时被自动清除。

Informix数据库基本操作和常用配置

Informix数据库基本操作和常用配置
创建数据库
在控制台输入dbaccess,进入informix管理界面,界面的菜单就不一一解释了,选择database-create输入数据库名,以test为例,回车,dbspace选择test,回车,这一步完了用方向键移到exit选项上,退回到上级菜单,选择Create-new-database,回车即可。完成后一直exit退出管理界面,输入ontape -s -B test修改数据库test日志模式为bufferedlogging,这一步是必须的,否则数据库不支持事务,完成后即可以使用该数据库。Linux下数据库的创建和windows下的一样。简单说一下informix数据库中的四种日志模式:
1、DirtyRead(脏读)隔离
DirtyRead是最简单的隔离级,类同于无隔离级当进程在读数据据时并不对所读的数据上锁,也不管其他进程上没上锁或在做什么。
2、CommittedRead(提交后读)隔离
当进程请求CommittedRead隔离级时,OnLine保证进程得到的数据不是数据库未提交的数据即此时没有其他进程在对这些数据做修改。
U代表Unbufferd(无缓冲日志模式)
B代表bufferd(缓冲日志模式)
A代表Ansi(不常用,不能和其它日志模式转化)
还有一种是N(Nolog)(无日志模式)
各个日志模式之间用ontape -s -代码(U,B,N,A)来进行转换,但转换之前需要修改onconfig文件中的TapeDev和Ltapedev两个参数,指向/dev/null,以免在数据库模式转换的时候进行长时间的0级备份,这两个参数具体含义会在后面说到。
还有一种提高并行性的设置,使用Set Isolation to Committed Read Last Committed语句,为SET ISOLATION TO COMMITTED READ语句引入新的LAST COMMITTED关键字选项,可减少尝试读取表时发生锁定冲突的风险。采用该语句,当用户读取正在被其他用户修改的数据时不在处于锁等待状态,而是可以读取修改前最近落实版本的数据值。这样,由于不会产生锁等待,应用程序效率会显著提高,而且,由于是读取修改前最近落实版本的数据值,也不会产生读取幻象数据(phantom data)的问题,同时,也会大大减少产生死锁的现象。它只支持“行”级别锁定,它不支持以下这些表:正在被DataBlade模块(DataBlade模块是一种标准的软件模块,它可以被插入到数据库中,用以扩展其能力,使用户可以使用任何想要的数据来做任何想做的事情。用户可以融合和匹配来自第三方和Informix的DataBlade模块,或者编写自己的DataBlade模块来创建革新化的商务应用。每个DataBlade模块都包含某一特定领域数据管理的专业知识,可以简单地插入到数据库中,既可以单独使用,又可以与其他DataBlade模块一起使用。有了这种灵活性,用户就可以扩充其DBMS,来解决现在以及将来的特殊数据管理问题。)访问的表、列中具有集合数据类型的表、使用虚拟表界面创建的表、具有页面级别锁定的表、具有专用表级别锁定的表或无事务记录的数据库中的表。在跨服务器的分布式查询中,如果发出查询的会话的隔离级别具有有效的LAST COMMITTED隔离级别,但一个或多个参与操作的数据库不支持该LAST COMMITTED功能,那么整个事务符合发出该事务的会话的“已落实读”或“脏读”隔离级别,而不启用LAST COMMITTED选项。

informix命令使用方法

informix命令使用方法
onmode -y 对提示自动回答yes
onmode -ky offline
onmode -s graceful shutdown-->quiescent(联机到静态,让用户处理完成)
onmode -u immediate shutdown-->quiescent(联机到静态,所有用户立即终止)
根据上例中输出结果创建数据库。
3. dbload
将ASCII 文件中的数据传送到数据库中。
4. dbschema
将数据库的模式输出到文件中,可用于重建数据库或表。
5. onlog
显示系统逻辑日志的内容。常用选项有:
onlog -l 显示已经备份到磁带上的日志信息
6. 在x-windows下可以运行的程序
a) 改变文件db_name.exp/db_name.sql为db_name.exp/new_db_name.sql,“.sql”不变 ;
$ cd db_name.exp
$ mv db_name.sql new_db_name.sql
b) 改变目录db_name.exp为new_db_name.exp,“.exp”不变;
onmode -m quiescent--->online
onmode -z sid 删除某session
onmode -l 将当前正在使用的逻辑日志下移
onmode -c 强制执行检查点操作 即onmonitor->force ckpt
onmode 命令同样用于改变动态服务器的运行模式。除了上述选项外,onmode还有很多与改变系统运行模式无关的选项。
$ mv db_name.exp new_db_name.exp

informixsql函数使用说明大全

informixsql函数使用说明大全

informixsql函数使用说明大全informix sql函数使用说明大全一、内部函数1、内部合计函数1)COUNT(*)返回行数2)COUNT(DISTINCT COLNAME)返回指定列中唯一值的个数3)SUM(COLNAME/EXPRESSION)返回指定列或表达式的数值和;4)SUM(DISTINCT COLNAME)返回指定列中唯一值的和5)AVG(COLNAME/EXPRESSION)返回指定列或表达式中的数值平均值6)AVG(DISTINCT COLNAME)返回指定列中唯一值的平均值7)MIN(COLNAME/EXPRESSION)返回指定列或表达式中的数值最小值8)MAX(COLNAME/EXPRESSION)返回指定列或表达式中的数值最大值2、日期与时间函数1)DAY(DATE/DATETIME EXPRESSION)返回指定表达式中的当月几号2)MONTH(DATE/DATETIME EXPRESSION)返回指定表达式中的月份3)YEAR(DATE/DATETIME EXPRESSION)返回指定表达式中的年份4)WEEKDAY(DATE/DATETIME EXPRESSION)返回指定表达式中的当周星期几5)DATE(NOT DATE EXPRESSION)返回指定表达式代表的日期值6)TODAY 返回当前日期的日期值7)CURRENT[FIRST TO LAST] 返回当前日期的日期时间值8)COLNAME/EXPRESSION UNITS PRECISION 返回指定精度的指定单位数9)MDY(MONTH,DAY,YEAR)返回标识指定年、月、日的日期值10)DATETIME(DATE/DATETIME EXPRESSION)FIRST TO LAST 返回表达式代表的日期时间值11)INTERVAL(DATE/DATETIME EXPRESSION)FIRST TO LAST 返回表达式代表的时间间隔值12)EXTEND(DATE/DATETIME EXPRESSION,[FIRST TO LAST])返回经过调整的日期或日期时间值select current year to second from systablesTo_char函数将datetime和date值转化为字符值。

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”]创建表或临时表。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

【文档名称】: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。

相关文档
最新文档