informix数据库总结

1.informix一共47条SQL语句,均不区分大小写,数据库名10字内,其余18字内。
2.支持8种数据类型 
  integer和smallint为较小的数据范围,占用空间小,运算速度快;
  serial:系统为该类型自动生成一个值,类似integer,32位;只能有一个列是该类型
  float和smallfloat:保存较大或较小的数,运算速度快;超出范围记为0
  decimal和money:定点数保存数值,decimal(p,s):p整个数据的有效位数,s为小数点右边的位数
  3种时间类型:
  date用于存储时日期,datetime用于存贮记录时间点,inteval保存时间间隔
  字符串类型:char(最大32767个字符)和varchar(最大255个字符)
  BLOB:任意数值和长度的字节流

3.表达式主要用于select表达式、delete表达式、update表达式、execute procedure表达式
  日期函数:
  Date()、Month()、Year()、WeekDay()、DAy()

4.select语句中某字段[1,3]表示取前三位

5. Informix提供了丰富的手段用于构件查询条件
  不等号的写法!=或<>,时间类型也行、可以比较大小
  空值判断:where 某字段 is null or is not null;=null写法错误
  模糊匹配:where 某字段 matches ‘[A-Z]’是A—Z,但[AZ]是A或Z
  可以用escape指定转义字符不用默认的\
  逻辑运算符and or not
  order还可以用列号
 
  在select语句后加入into temp子句可以讲查询结果保存在临时表 ,后接表名
  在创建临时表的应用程序或一次SQL会话结束,临时表自动删除
  使用临时表的目的:反复使用查询到的结果
  union会自动过滤重复的行
  informix没有提供交的运算符,但可以用exists 或in引入子查询
  informix也米有提供差查询,但可以用not exists 或not in引入子查询
 
6.插入多行
  insert into 表名 select 语句

  批量数据加载和卸载
  unload语句将表中数据卸载到一个文件,load语句将文件数据导入表中
  load from 文件名insert into 表名
  unload to 文件名 select语句
7.存储过程
  有SQL语句和SPL(Stored Procedure Language)语句组成。存储过程创建以后,可以转化为可执行代码。

  SysProcedures表存放 存储过程的总体特征。包括存储过程的名字、属主、标识、参数个数
  先编译成内部代码才能执行
  系统对存储过程中包含的SQL语句做分析和优化,检查SQL语句的语法的正确性,将SQL语句写入一颗查询书
  以便于SQL语句的存储和执行。而后系统产生存储过程的依赖表,包括决定是否重新做优化前的应该检查的条目
  对于存储过程包含的SQl,系统进行语法分析,将其转化为等价的伪代码,可以加快译码器的处理速度。
  系统将伪代码、查询树、依赖表转换为ASCII格式,将结果以文本形式保存到相应的系统表。
  最后将存储过程的相关信息保存到系统目录表SysProcedures。存储过程的授权情况保存在sysprocauth表中

  利用存储过程将一部分代码保存在服务器中,可以减轻网络负载,从而提高系统性能,

  创建存储过程用create proceduce 语句。

  对于存储过程中隐含的错误可以通过Trace语句查找。

你可能感兴趣的:(技术总结)