易截截图软件、单文件、免安装、纯绿色、仅160KB

玩转Oracle(6)

||-------  维护数据完整性  -------||
【约束】
//约束
not null //非空
unique  //唯一 不能重复,但可以为空
primary key //主键
foreign key //外键
check  //满足条件
//商店售货系统表设计案例(1)
//goods 商品表
goodsid  //商品号
goodsname //商品名
unitprice //单价
category //商品类别
provider //供应商
SQL> create table goods(
  2  goodsid char(8) primary key,--主键
  3  goodsname varchar2(30) ,
  4  unitprice number(10,2) check (unitprice>0),--单价必须>0
  5  category varchar2(8),
  6  provider varchar2(30));
//customer 客户表
customerid //客户号
name  //姓名
address  //住址
email  //电邮
sex  //性别
cardid  //身份证
SQL> create table sustomer(
  2  customerid char(8) primary key,--主键
  3  name varchar2(30) not null,--不为空
  4  address varchar2(50),
  5  email varchar2(50) unique,--不能重复
  6  sex char(2) default '男' check(sex in ('男','女')),--默认为男,性别为男或女
  7  cardid char(18));
//purchase 购买表
customerid //客户号
goodsid  //商品号
nums  //购买数量
SQL> create table purchase(
  2  custmoerid char(8) references customer(customerid),
  3  goodsid char(8) references goods(goodsid),
  4  nums number(5) check(nums between 1 and 30));
//要求如下:
1.每个表的主外键;
2.客户的姓名不能为空值;
3.单价必须大于0,购买数量必须1-30之间;
4.电邮不能够重复;
5.客户的性别是男or女,默认为男;
//商店售货系统表设计案例(2)
//增加not null 约束需要使用modify
//增加其他四种约束使用add
1.增加商品名也不能为空
alter table goods modify goodsname not null;
2.增加身份证也不重复
alter table customer add constraint cardunique unique(cardid);
3.增加客户的地址只能是 '海淀','朝阳','东城','西城','通州','崇


相关文档:

Oracle多行记录合并/连接/聚合字符串的几种方法

什么是合并多行字符串(连接字符串)呢,例如:
SQL> desc test;
Name     Type          Nullable Default Comments
------- ------------ -------- ------- --------
COUNTRY VARCHAR2(20) Y       &nb ......

启动oracle 郭耀今

用sqlplus启动数据库
sqlplus /nolog
SQL> connect system/change_on_install as sysdba
SQL> startup
用sqlplus停止数据库$ORACLE_HOME/bin/sqlplus /nolog
SQL> connect system/change_on_install as sysdba
SQL> shutdown ......

带排序的oracle分页存储过程

create or replace package Pager
is
type curs is ref cursor;
procedure Pagination
(
inPageSize in integer, --每页记录数
inPageIndex in integer, --当前页数
inTableName in varchar2, --表名
inOrderField in varchar2,--排序字段
inIsOrderBy in varchar2,--排序类别,输入'  desc' 或者' asc'
inW ......

Oracle raw 数据类型

    RAW,类似于CHAR,声明方式RAW(L),L为长度,以字节为单位,作为数据库列最大2000,作为变量最大32767字节。
    LONG RAW,类似于LONG,作为数据库列最大存储2G字节的数据,作为变量最大32760字节
 
    插入raw数据操作:
  insert into raw_test values (1, ......

Oracle 中的to_date()函数


to_date()与24小时制表示法及mm分钟的显示:
一、在使用Oracle的to_date函数来做日期转换时,很多Java程序员也许会直接的采用“yyyy-MM-dd
HH:mm:ss”的格式作为格式进行转换,但是在Oracle中会引起错误:“ORA 01810 格式代码出现两次”。
如:select to_date('2005-01-01 13:14:20','yyyy-MM-d ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号