oracle 表列 自增,ORACLE表建立自增列
create tablespace studentDB
datafile 'E:\datafiles_1.dbf' size 10m;
create user Huang_Ying_Bo
identified by hyb123456
default tablespace studentDB
grant connect to Huang_Ying_Bo
grant resource to Huang_Ying_Bo
drop table TechEd_T_Students
/*創建學生信息表*/
create table TechEd_T_Students
(
Id integer,
Name varchar2(20),
Adress varchar2(40)
);
alter table TechEd_T_Students
add constraint PK_TechEd_T_Students_Id primary key(Id);
/*創建課程序列Sequence_TechEd_T_Students_Id*/
drop sequence Sequence_TechEd_T_Students_Id;
CREATE SEQUENCE Sequence_TechEd_T_Students_Id;
/*建立觸發器*/
drop TRIGGER Trigger_Insert__Students_Inc;
CREATE OR REPLACE TRIGGER Trigger_Insert__Students_Inc
BEFORE INSERT ON TechEd_T_Students
FOR EACH ROW
WHEN (NEW.ID IS NULL)
BEGIN
SELECT Sequence_TechEd_T_Students_Id.NEXTVAL INTO :NEW.Id FROM DUAL;
END;
insert into TechEd_T_Students(Name,Adress) values('黃濤','重慶北碚');
insert into TechEd_T_Students(Name,Adress) values('劉冊','重慶沙坪壩');
insert into TechEd_T_Students(Name,Adress) values('鄧雨','重慶渝北');
insert into TechEd_T_Students(Name,Adress) values('蕭何','河南沛縣');
select * from TechEd_T_Students
drop table TechEd_T_Scources
/*創建課程信息表*/
create table TechEd_T_Scources
(
Id integer,
Name varchar2(20)
);
alter table TechEd_T_Scources
add constraint PK_TechEd_T_Scources_Id primary key(Id);
/*創建課程序列Sequence_TechEd_T_Scources_Id*/
drop sequence Sequence_TechEd_T_Scources_Id;
CREATE SEQUENCE Sequence_TechEd_T_Scources_Id;
/*建立觸發器*/
drop TRIGGER Trigger_Insert__Scources_Inc;
CREATE OR REPLACE TRIGGER Trigger_Insert__Scources_Inc
BEFORE INSERT ON TechEd_T_Scources
FOR EACH ROW
WHEN (NEW.ID IS NULL)
BEGIN
SELECT Sequence_TechEd_T_Scources_Id.NEXTVAL INTO :NEW.Id FROM DUAL;
END;
insert into TechEd_T_Scources(Name) values('數據結構');
insert into TechEd_T_Scources(Name) values('ORACLE數據庫優化');
select * from TechEd_T_Scources
drop table TechEd_T_Scores
/*創建學生分數信息表*/
create table TechEd_T_Scores
(
Id integer,
Student_Id integer,
Scource_Id integer,
Grade integer
);
alter table TechEd_T_Scores
add constraint PK_TechEd_T_Scores primary key(Id);
alter table TechEd_T_Scores
add constraint FK_Scores_Students_Id foreign key(Student_Id) references TechEd_T_Students(Id);
alter table TechEd_T_Scores
add constraint FK_Scores_Scources_Id foreign key(Scource_Id) references TechEd_T_Students(Id);
alter table TechEd_T_Scores
add constraint CK_TechEd_T_Scores_Grade check(Grade between 0 and 100);
/*創建分數序列Sequence_TechEd_T_Scores_Id*/
drop sequence Sequence_TechEd_T_Scores_Id;
CREATE SEQUENCE Sequence_TechEd_T_Scores_Id;
/*建立觸發器*/
drop TRIGGER Trigger_Insert_Scores_Inc;
CREATE OR REPLACE TRIGGER Trigger_Insert_Scores_Inc
BEFORE INSERT ON TechEd_T_Scores
FOR EACH ROW
WHEN (NEW.ID IS NULL)
BEGIN
SELECT Sequence_TechEd_T_Scores_Id.NEXTVAL INTO :NEW.Id FROM DUAL;
END;
insert into TechEd_T_Scores(Student_Id,Scource_Id,Grade) values(1,1,88);
insert into TechEd_T_Scores(Student_Id,Scource_Id,Grade) values(1,2,88);
insert into TechEd_T_Scores(Student_Id,Scource_Id,Grade) values(2,1,89);
insert into TechEd_T_Scores(Student_Id,Scource_Id,Grade) values(2,2,89);
insert into TechEd_T_Scores(Student_Id,Scource_Id,Grade) values(3,1,90);
insert into TechEd_T_Scores(Student_Id,Scource_Id,Grade) values(3,2,90);
select * from TechEd_T_Scores;
select * from TechEd_T_Scources;
select * from TechEd_T_Students;
MySQL面試題之為什么要為innodb表設置自增列做主鍵?
為什么要為innodb表設置自增列做主鍵? 1.使用自增列做主鍵,寫入順序是自增的,和B+數葉子節點分裂順序一致 2.表不指定自增列做主鍵,同時也沒有可以被選為主鍵的唯一索引,InnoDB就會選擇內置 ...
oracle 實現插入自增列(類似SqlServer Identity)
oracle不像sql?server 有關鍵字identity直接可插入數據時自增 ,Oracle是不能用Identity,可以使用Sequence Create Table Tempinfo( id ...
重置SQLSERVER表的自增列,讓自增列重新計數【轉】
很多時候我們需要重置某個表的自增列,讓自增列重新從1開始記數.最蠢的方法當然是把該表刪掉再重新建表了.其實,還有其它的方法可以重置自增列的值: 方法一:使用TRUNCATE TABLE語句: TRUN ...
Oracle表級約束和列級約束
Oracle表級約束和列級約束 1. 表級定義約束 指的是在定義完一個表所有列之后,再去定義所有相關的約束. 注意:not null 約束只能在列級上定義. 2. 列級定義約束 指的是在定義一個表的每 ...
[轉]oracle 實現插入自增列
本文轉自:http://blog.csdn.net/love_zt_love/article/details/7911104 剛使用oracle,它和sql server 好多地方還是有所不同的,簡單 ...
Oracle 12c的自增列Identity Columns
在Oracle的12c版本中,Oracle實現了類似MySQL中的auto_increment的自增列,下面我們看一起Oracle是怎么實現的. Oracle Database 12c Enterpr ...
sqlite3創建自增主鍵,以及清空表使自增列歸零
1.創建自增主鍵 CREATE TABLE tb_python (ID INTEGER PRIMARY KEY AUTOINCREMENT,TITLE TEXT,URL TEXT); 2.清空表 SQ ...
重置SQLSERVER表的自增列,讓自增列重新計數
SQL的自增列挺好用,只是開發過程中一旦刪除數據,標識列就不連續了 寫起來 也很郁悶,所以查閱了一下標識列重置的方法 發現可以分為三種: --- 刪除原表數據,并重置自增列truncate table ...
mysql中,通過腳本設置表的自增列,及自增步長
設置自增列(其實通過navicate可以直接設置的,也方便:要不然可能需要刪除列了) ALTER TABLE `domain_dns_tucows` CHANGE `id` `id` INT(11) ...
隨機推薦
jax-ws開發總結
服務端開發步驟: 1.定義SEI,即java中的接口 2.定義SEI的實現類,使用@webservice注解標記它是一個webservice服務類 3.發布服務 客戶端開發步驟:使用jdk的servi ...
JBoss的安裝與配置(對應eclipse配置)【轉】
安裝JBoss純粹是目的就是學習EJB3...至少現在是這樣的 EJB需要運行在EJB容器中.每個J2EE應用服務器都含有EJB容器和Web容器.這樣,既支持運行EJB,也可以運行Web應用 目前EJ ...
如何計算ModBus超時時間?
波特率:每秒鐘通過信道傳輸的信息量稱為位傳輸速率,也就是每秒鐘傳送的二進制位數,簡稱比特率.比特率表示有效數據的傳輸速率,用b/s .bit/s.比特/秒,讀作:比特每秒. 如9600b/s:指總線上 ...
【HDOJ】2157 How many ways??
矩陣乘法,用DP做各種wa,后來發現原因了. #include #include typedef struct { ][]; } ma ...
c++ 命名空間 以及 作用域 函數參數 面向對象實驗報告
面向對象的分析與設計? 實驗報告一 一.變量的儲存類別 auto static register extern auto變量 ? 函數中的局部變量,如不專門聲明為static存儲類別,都是動態地分配存 ...
LeetCode 643. Maximum Average Subarray I (最大平均值子數組之一)
Given an array consisting of?n?integers, find the contiguous subarray of given length?k?that has the ...
C#利用Attribute實現簡易AOP介紹
首先看一段簡單的代碼: public partial class Form1 : Form { public Form1() { InitializeComponent(); } //來自UI層的調用 ...
P4512 【模板】多項式除法
思路 多項式除法板子 多項式除法 給出\(A(x)\)和\(B(x)\),求一個\(n-m\)次的多項式\(D(x)\),一個\(m-1\)次多項式\(R(x)\),滿足 \[ A(x)=B(x)D( ...
python模塊大全
python模塊大全2018年01月25日 13:38:55 mcj1314bb 閱讀數:3049 pymatgen multidict yarl regex gvar tifffile jupyte ...
什么是MVVM模式
問題引入1?場景一:團隊辛辛苦苦完成了一個項目,抱著激動的心情去給用戶做demo,而用戶給你的反饋是UI很不滿意,要重新修改,否則拒絕驗收.大規模修改UI,晴天霹靂!2?場景二:產品在一家客戶上線運行 ...
總結
以上是生活随笔為你收集整理的oracle 表列 自增,ORACLE表建立自增列的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2022-2028年中国互联网+汽车行业
- 下一篇: 求一个姓白好听的名字