oralce基本操作說明
一、 建立表空間
sys使用者在cmd下以dba身份登陸:
在cmd中打sqlplus /nolog
然後再conn / as sysdba
注意點:
1.如果在pl/sql 等工具裡開啟的話,直接修改下面的**中[斜體加粗部分
]執行2.確保路徑存在,比如【d:\oracle\oradata\oracle9i\】也就是你要儲存檔案的路徑存在
/*分為四步 */
/*第1步:建立臨時表空間 */
create temporary tablespace user_temp
tempfile 'd:\oracle\oradata\oracle9i\user_temp.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
/*第2步:建立資料表空間 */
create tablespace test_data
logging
datafile 'd:\oracle\oradata\oracle9i\user_data.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
/*第3步:建立使用者並指定表空間 */
create user username identified by password
default tablespace user_data
temporary tablespace user_temp;
/*第4步:給使用者授予許可權 */
grant connect,resource,dba to username;
二、 表物件操作
1、建立**是帶主鍵索引
create table accounts(
id number primary key,
balance number
2、有命名主鍵名
create table accounts(
id number,
balance number,
constraint accounts_pk primary key(id)
3、刪除主鍵約束
alter table accounts drop constraint sys_c003063;
4、向表中新增主鍵約束
alter table accounts add constraint pk_accounts primary key(id);
5、索引的建立
完整語法如下:
create (unique|bitmap) index [使用者名稱.]索引名 on [使用者名稱.]表名 (列名 [ asc | desc], [列名 [ asc | desc]]...)
[ tablespace 表空間名 ]
[ pctfree 正整型數 ]
[ initrans 正整型數 ]
[ maxtrans 正整型數 ]
[ 儲存子句 ]
[ logging | nologging ]
[ nosort ]
例子:create unique index my_index on mytest_table(id asc, name desc);
alter table mytest_table
add constraint uk_index
unique(id,name);
6、建立
check約束
create table test1234(
id number primary key,
phone varchar2(12) constraint chk_test1234 check(regexp_like(phone,'^029[0-9]')));
3、建立外來鍵
alter table barwork
add constraint fk_barwork
foreign key(record_no)references catalog(record_no);
4、建立自增主鍵
需要定義乙個自定義序列
create sequence emp_sequence
increment by 1 –每次加幾個
start with 1 –從1
開始計數
nocycle --一直累加,不迴圈
nocache --不建緩衝區
建立乙個觸發器
create trigger my_trigger before
insert on example for each row when(new.id is null)
begin
select emp_sequence.nextval into: new.id from dual;
end;
一般的做法是直接是insert
語句中操作,而不是建立觸發器,建立觸發器不容易維護。
insert into example(id,name)values(emp_sequence.nextval,』test』);
三、 資料匯入導處操作
a)、資料匯出:
1、 將資料庫
test
完全匯出,使用者名稱
system
密碼manager
匯出到d
:\daochu.dmp中
exp system/manager@test file=d
:\daochu.dmp full=y
2、 將資料庫中
system
使用者與sys
使用者的表匯出
exp system/manager@test file=d
:\daochu.dmp owner=
(system
,sys)
3、 將資料庫中的表
table1
、table2匯出
exp system/manager@test file=d
:\daochu.dmp tables=
(table1
,table2)
4、 將資料庫中的表
table1
中的字段
filed1
以"00"
打頭的資料匯出
exp system/manager@test file=d
:\daochu.dmp tables=
(table1
) query=\" where filed1 like '00%'\"
上面是常用的匯出,對於壓縮我不太在意,用winzip
把dmp
檔案可以很好的壓縮。
不過在上面命令後面 加上 compress=y
就可以了
b)、資料的匯入
1、將d
:\daochu.dmp
中的資料匯入
test
資料庫中。
imp system/manager@test file=d
:\daochu.dmp
上面可能有點問題,因為有的表已經存在,然後它就報錯,對該錶就不進行匯入。
在後面加上 ignore=y
就可以了。
2 將d:
\daochu.dmp
中的表table1 匯入
imp system/manager@test file=d
:\daochu.dmp tables=
(table1)
基本上上面的匯入匯出夠用了。不少情況我是將表徹底刪除,然後匯入。
注意:你要有足夠的許可權,許可權不夠它會提示你。
資料庫時可以連上的。可以用tnsping test
來獲得資料庫
test
能否連上。
四、 備份指令碼
exp scott/tiger@libdata file=c:\scott%date:~4,10%.dmp
set path=c:\program files\winrar
cd %path%
c:\program files\winrar\rar.exe a data%date:~4,10%.rar *%date:~4,10%.dmp
del *%date:~4,10%.dmp
Oracle基本操作
1.建立表空間 create tablespacetestdatafile c test.dbf size 10m 名字不要為數字 2.建立使用者 create user username identified by password 不要為數字 3.給使用者授權 grant dba to user...
Oracle 基本操作
在這裡詳述 oracle 基本操作。新增使用者 隨著使用者的建立,自動產生與使用者同名的schema create user tester profile default identified by tester default tablespace testdata temporary table...
oracle 基本操作
1 使用者登入 sqlplus 帳號 密碼 2 檢視當前登入使用者 show user 3 檢視所有的使用者 select username from all users 4 建立臨時表空間 create temporary tablespace test temp tempfile d oracl...