資料庫的增刪改查的乙個例題

2021-10-09 10:53:05 字數 3401 閱讀 4013

題目:(下面的**)

use t_jineng2;

--用地基本資訊表

create table t_proj_info(

proj_id int identity(1,1) not null,

proj_name varchar(50) not null,

proj_no varchar(5) not null,

proj_type varchar(25) not null,

tilth_state float not null,

proj_kind varchar(25) not null,

farm_tot float not null,

)--建立行政區基本資訊表

create table t_canton_info(

canton_id int identity(10,1) not null,

proj_id int not null,

canton_tot float not null,

canton_no varchar(5) not null,

canton_name varchar(50) not null,

branch varchar(50) not null,

remark text not null

)--設定主鍵 constraint 約束

alter table t_proj_info

add constraint pk_t_proj_info_proj_id

primary key (proj_id)

alter table t_canton_info

add constraint pk_t_canton_info_canton_id

primary key (canton_id)

--在被引用表 『student』 中沒有與外來鍵 『fk_s』 中的引用列列表匹配的主鍵或候選鍵。問題原因:

--可能的原因之一是主鍵前後定義的不一致。

--或者主表沒有主鍵 需要新增或者修改主鍵

--設定外來鍵 foreign:外國的--外來鍵 references:參照

--怎麼定義外來鍵 一定是主表中的主鍵作為外來鍵

alter table t_canton_info

add constraint fk_t_canton_info_t_proj_info_proj_id

foreign key (proj_id) references t_proj_info(proj_id)

--插入資料

insert into t_proj_info values('燦氏集團','1','建設用地',999999,'商用',1000,'中共**人民代表大會')

insert into t_proj_info values('燦氏集團2','1','娛樂用地',999999,'娛樂',1001,'中共**人民代表大會')

insert into t_proj_info values('燦氏集團3','1','建設用地',999999,'商用',1003,'中共**人民代表大會')

insert into t_proj_info values('燦氏集團4','1','建設用地',999999,'商用',13001,'中共**人民代表大會')

insert into t_proj_info values('燦氏集團4','2','建設用地',1200,'商用',13001,'中共**人民代表大會')

insert into t_canton_info values(16,142,'83100','星沙','長沙市國土資源局','我家的')

insert into t_canton_info values(17,142,'83101','星沙','長沙市國土資源局','我家的')

insert into t_canton_info values(18,143,'83102','星沙2','長沙市國土資源局','我家的')

select * from t_proj_info;

select * from t_canton_info;

--•查詢出專案編號為「1」的建設用地基本資訊;

select * from t_proj_info where proj_no =1 and proj_type ='建設用地'

--•查詢出行政直屬部門為「長沙市國土資源局」的建設用地基本資訊;

select * from t_canton_info where branch='長沙市國土資源局'

--•查詢出所有的建設土地基本資訊並按農用地總面積公升序排序;asc 公升序 desc降序

select * from t_proj_info where proj_type ='建設用地' order by farm_tot asc

--•刪除耕地面積大於「1300」的建設用地基本資訊;

delete from t_proj_info where tilth_state<=1300

--•請把直屬部門由「長沙市國土資源局」修改為「株洲市國土資源局」;

update t_canton_info set branch='株洲市國土資源局' where branch='長沙市國土資源局'

--單錶檢視

--•建立名為projinfo_view1的檢視,檢視的資料為編號是「1」的建設用地基本資訊;

create view projinfo_view1

as select *from t_proj_info

where proj_no='1'

--刪除上題中所建立的projinfo_view1檢視

drop view projinfo_view1

--查詢行政區名稱為『星沙』的用地基本資訊

select a.* from t_proj_info a

inner join t_canton_info b on b.proj_id = a.proj_id

where b.canton_name ='星沙'

--使用內連線連線兩張表中有關聯的資料 (查詢所有兩個表中有關聯的資料)

select * from t_proj_info a

inner join t_canton_info b on b.proj_id = a.proj_id

--使用內連線查詢兩張表中行政區為星沙的資料。

select * from t_proj_info a

inner join t_canton_info b on b.proj_id = a.proj_id

where b.canton_name ='星沙'

--left join:左連線

create view plot_id_view2

as

資料庫的增刪改查

1增 1.1 插入單行 insert into 表名 列名 values 列值 例 insert into students 姓名,性別,出生日期 values 開心朋朋 男 1980 6 15 1.2 將現有表資料新增到乙個已有表 insert into 已有的新錶 列名 select 原表列名 ...

資料庫的增刪改查

資料庫,我們首先要建立乙個類,裡面用來建立表 public class blacknumberdbopenhelper extends sqliteopenhelper 資料庫第一次被建立時呼叫,適合初始化資料庫裡的表結構 override public void oncreate sqliteda...

資料庫的增刪改查

package com.bw.alice.aday14sqlite.db 封裝資料庫類名 author alice version 1.0 date 2017 8 16 10 38 public class mysqliteconlums public static synchronized mys...