Oracle不像Sqlserver,并没有提供l默认约束,但提供了默认值,效果一样。
--------------------------- 在建表时设置默认约束---------------------------

create table t1 (tname varchar2(20) default 'yang');

--------------------------- 在修改表时设置默认约束---------------------------

alter table t1 modify (tname varchar2(20) default 'yang');

--------------------------- 创建序列---------------------------
create sequence ZHPT_P_USER_SEQ
minvalue 1
maxvalue 999999999
start with 86283141
increment by -3026
nocache
cycle
order;
--------------------------- 创建存储过程---------------------------

CREATE OR REPLACE PROCEDURE create_table
IS
v_Cursor NUMBER;--定义游标
v_CreateString VARCHAR2(100);--这个变量存放创建表的SQL语句。
BEGIN
v_Cursor := DBMS_SQL.OPEN_CURSOR;--打开游标
v_CreateString := 'CREATE TABLE tp (id int,name varchar2(20))';--创建表的SQL语句。
DBMS_SQL.PARSE(v_Cursor, v_CreateString, DBMS_SQL.V7);执行建表的SQL语句
DBMS_SQL.CLOSE_CURSOR(v_Cursor);--关闭游标
END create_table;

--------------------------- 执行存储过程---------------------------

execute create_table;

---------------------------创建函数执行从A表到B表一条一条导入数据并验证---------------------------

create or replace function cux_user_imp(code out VARCHAR2) RETURN VARCHAR2 is
/*
作者:ocean
主要功能:数据导入测试
创建日期:2015年11月26日
*/
cux_a varchar2(10); --姓名变量
cux_i number;
cux_user p_user_temp%rowtype;
cursor cux_user_cr is
select * from p_user_temp p where p.xb = '1';
begin

delete from p_user;
commit;

cux_i := 1;

for cux_user in cux_user_cr loop

cux_a := cux_user.name;

if cux_a = 'lxx' then
dbms_output.put_line(cux_a);

elsif cux_a <> 'lxx' then

insert into p_user
(p_user.id,
p_user.name,
p_user.age,
p_user.tel,
p_user.csri,
p_user.xb)
values
(cux_user.id,
cux_user.name,
cux_user.age,
cux_user.tel,
cux_user.csri,
cux_user.xb
);
cux_i := cux_i + 1;
dbms_output.put_line(to_char(cux_i) || ' ' || cux_user.name);
commit;
end if;

end loop;

return 'ok';

end;

--------------------------- 简单主键定义如下并设置为自增(只取出主键定义)---------------------------

typeid int not null primary key identity(1,1),

--------------------------- 表和序列的关系,是通过业务逻辑的SQL语句来维护---------------------------

即:insert into table_name (column_name) values (seq_name.nextval);

--------------------------- 向表中加时间字段默认值为系统时间---------------------------

insert into table(j) values(to_date('2000-11-26 00:04:47','yyyy-mm-dd hh24:mi:ss'));
create table test
(id int,
starttime date default sysdate not null );
插入测试数据:
insert into test (id) values (1);
commit;

--------------------------- 创建表的时候调用序列 需要写一个触发器---------------------------

create or replace trigger 你的表名_tri
before insert on 你用到的表
for each row
DECLARE
BEGIN
SELECT 你的序列名.nextval into :new.id from dual;
end test_oo_tri;

--------------------------- A表数据导入B表,如果长度不够截取---------------------------

insert into test_PP(ID,NAME) select o.id,SUBSTR(o.name,0,3) from test_oo o;

insert into pUser p (p.名,p.性别,p.年龄,p.电话) select substr(u.姓名,1,20),u.性别,u.年龄,u.电话 from User u
说明:截取函数oracle中是substr,sqlserver中是substring
不管大于不大于20长度全截取。

--------------------------- A表数据导入B表---------------------------

insert into ZHPT_P_USER select * from PUSER
按字段插入
Insert into B (字段1,字段2,字段3) select 字段1,字段2,字段3 from A;

---------------------------给一个表循环插入1000条数据---------------------------

declare
idx number(22) := 8;
val varchar2(22) := 'test';
begin
loop
idx := idx + 1;
insert into abook2 values (idx, val || TO_CHAR( idx ) );
exit when idx > 1000;
end loop;
end;

--------------------------- 查询表中某个字段的值---------------------------

select * from puser where XM='王茜红统计'

--------------------------- 查询字段备注---------------------------

select * from user_tab_comments where comments like '%处室%'

--------------------------- 插入---------------------------

Insert into table_name 字段 1,字段 2、、字段 n values (字段值 1,字段值 2、、字段值 n );

INSERT INTO lxx VALUES(10,'ACCOUNTING','NEW YORK');

--------------------------- 循环插入---------------------------
begin
for i in 1..10 loop
insert into table_name values (...);
end loop;
end;

--------------------------- 序列---------------------------

AA3349_BFA001_SEQUENCE

sql:

1)-- Create sequence
create sequence AA3349_BFA001_SEQUENCE
minvalue 1
maxvalue 999999999999999999999999999
start with 81
increment by 1
cache 20;

--------------------------- 修改表 字段 结构---------------------------
alter table AA3350
add constraint BFA001 primary key (BFA001)
using index
tablespace FSSR
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);

-- Add comments to the table
comment on table AA3350
is '文件审核表';
-- Add comments to the columns
comment on column AA3350.bfa303
is '文号';
comment on column AA3350.faf006
is '审核日期';
comment on column AA3350.faf007
is '审核人';
comment on column AA3350.faf008
is '审核说明';
comment on column AA3350.bfa314
is '修订状态';
comment on column AA3350.bfa001
is '序号';

-------------------------- 导入、导出--------------------------

导入:imp 数据库名/数据库密码@服务 file=D:\名称.dmp full=y
导出:exp 数据库名/数据库密码@服务 file=D:\名称.dmp

---------------------------建立表空间--------------------------

CREATE TABLESPACE "FSSR"

LOGGING

DATAFILE 'D:\oracle\product\10.2.0\oradata\orcl\FSSR.ora' SIZE 500M

AUTOEXTEND ON NEXT 100M

MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL

SEGMENT SPACE MANAGEMENT AUTO

------------------------ 更新字段-------------------------

update 表名 set 字段名='更新数据'

Oracle常用sql的更多相关文章

  1. oracle常用SQL语句(汇总版)

    Oracle数据库常用sql语句 ORACLE 常用的SQL语法和数据对象一.数据控制语句 (DML) 部分 1.INSERT (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, ...

  2. oracle 常用sql语句

    oracle 常用sql语句 1.查看表空间的名称及大小 select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_sizefrom d ...

  3. Oracle常用SQL查询(2)

    三.查看数据库的SQL 1 .查看表空间的名称及大小 select  t.tablespace_name,  round ( sum (bytes / ( 1024 * 1024 )), 0 ) ts ...

  4. Oracle常用SQL查询

    一.ORACLE的启动和关闭 1.在单机环境下要想启动或关闭oracle系统必须首先切换到oracle用户,如下: su - oracle a.启动Oracle系统 oracle>svrmgrl ...

  5. ORACLE 常用SQL查询

    一.ORACLE的启动和关闭 1 .在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su  -  oracle a.启动ORACLE系统 oracle > sv ...

  6. Oracle常用SQL语句大全

    常用Oracle数据库SQL语句汇总. 1.常用操作 --清空回收站purge recyclebin;--查询回收站select * from recyclebin--查询Oracle版本信息sele ...

  7. Oracle常用sql命令

    1.查看数据库归档是开启还是关闭SQL> archive log list 更改数据库归档模式: SQL> shutdown immediateSQL> startup mountS ...

  8. oracle 常用sql字符函数介绍

    常用字符函数介绍 1.ascii 返回与指定的字符对应的十进制数: SQL>select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') ...

  9. Oracle 常用Sql 语句

    Oracle数据库常常被用作项目开发的数据库之一:有时隔段时间没使用就会忘记一些常用的sql语法,所以我们有必要记录下常用的sql 语句,当我们需要时可以快速找到并运用. 1 创建表空间.创建用户及授 ...

  10. Oracle常用sql语句(一)

    # Sql的分类 # DDL (Data Definition Language):数据定义语言,用来定义数据库对象:库.表.列等: CREATE. ALTER.DROP DML(Data Manip ...

随机推荐

  1. 2014 Super Training #10 C Shadow --SPFA/随便搞/DFS

    原题: FZU 2169 http://acm.fzu.edu.cn/problem.php?pid=2169 这题貌似有两种解法,DFS和SPFA,但是DFS怎么都RE,SPFA也要用邻接表表示边, ...

  2. 来说说SpringMVC + JSONP的跨域请求

    先来说说场景,JSON,这货大家应该都懂,不懂的请自动面壁思过,那么什么是JSONP,不是JSON放了个P就叫JSONP,而是JSON with Padding,在进行跨域请求的时候需要的数据,什么是 ...

  3. Unity脚本生命周期

    前言 说到生命周期,影响最深刻的是,在接触Java的JSF组件时,JSF组件的五大生命周期,全要默写出来,嘿嘿…… 总结这两天在写小怪和掉落的糖葫芦时,老是遇到GameObject未销毁,一直存在场景 ...

  4. Mvc 中ViewBag Model 查找不到解决

    按照晚上修改VIew视图中web.config 很显然,没效果... 我的情况是 出现: 我想了下  看下是不是编译器的问题: 我在vs2013中建立 MVC4  然后用 vs2015打开 然后报错- ...

  5. Sublime Text2 新建文件快速生成Html头部信息和炫酷的代码补全

    预备:安装emmet插件(previously known as Zen Coding) 方法一  package control法: 上一篇博客已经介绍了如何安装package control.打开 ...

  6. 010医疗项目-模块一:用户添加的实现(Dao,Service,Action,增加页面调试,提交页面调试)

    要实现的效果:

  7. 解决memcached不能远程访问的问题

    之前安装好memcached之后,一直是在本机连接使用的,没有出现问题,今天我改用从另一台机器连接到memcached时,却怎么也连接不上.后来一直想大概是防火墙的问题,关闭了防火墙后问题依然存在. ...

  8. Ubuntu 16.04 LTS安装好需要设置的15件事(喜欢新版本)

    看到这篇文章说明你已经从老版本升级到 Ubuntu 16.04 或进行了全新安装,在安装好 Ubuntu 16.04 LTS 之后建议大家先做如下 15 件事.无论你是刚加入 Ubuntu 行列的新用 ...

  9. 系统级IO实践学习记录

    代码分析 cp1.c 功能:复制文件. #include <stdio.h>#include <stdlib.h>#include <unistd.h>#inclu ...

  10. 解决方法:未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序

    win7或win8 64位调试程序,出现这样的错误提示:未在本地计算机上注册 Microsoft.Jet.OLEDB.4.0 提供程序 解决方法如下: 方法一:“设置应用程序池默认属性”/“常规”/” ...