頭歌實驗 庫、表、數據的創建管理與備份遷移

第1關:創建db_ebank數據庫

drop database IF EXISTS db_ebank;/********** Begin **********/
create database db_ebank;
/********** End **********/show databases;

第2關:創建數據表并設置約束

1.任務要求

在 db_ebank 數據庫中創建相應8個數據表,并設置約束實施數據完整性控制,主鍵外鍵建立表間關聯。

2.表結構

tb_personal

tb_company?

tb_customer?

tb_bankoutlets?

tb_machine?

tb_cardInfo?

tb_deposit?

tb_tradeInfo?

這一關主啵敲了一下午 頭歌各種報錯 直接上代碼

頭歌有復制限制的可以去看主啵主頁的置頂文章 解除方法很簡單 只需幾秒鐘

3.代碼

drop database IF EXISTS db_ebank;
CREATE DATABASE `db_ebank` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
use db_ebank;
SET FOREIGN_KEY_CHECKS = 0;/********** Begin **********/DROP TABLE IF EXISTS `tb_bankoutlets`;
create table tb_bankoutlets(bankID int primary key,bankName varchar(50) NOT NULL,address varchar(255) NOT NULL,moneyReserve double,createTime datetime,status enum('1','2','3')
);DROP TABLE IF EXISTS `tb_cardinfo`;
create table tb_cardinfo(cardID char(19)primary key,customerID int NOT NULL,customerType tinyint NOT NULL,curID varchar(10) NOT NULL DEFAULT 'RMB',savingID int NOT NULL,openDate datetime NOT NULL,openMoney decimal(20,2) NOT NULL,balance decimal(20,2) NOT NULL,password char(6) NOT NULL DEFAULT '888888',isReportLoss tinyint NOT NULL DEFAULT 0,isLogout tinyint NOT NULL DEFAULT 0,isFrozen tinyint NOT NULL DEFAULT 0,frozenMoney decimal(20,2),bankID int NOT NULL,type enum('借記卡','信用卡')
);DROP TABLE IF EXISTS `tb_company`;
create table tb_company(companyID int primary key,customerID int NOT NULL,creditCode char(18),legalPerson varchar(50),legalPersonCard char(18),Vip tinyint NOT NULL DEFAULT 0,nature varchar(150),registeredCapital decimal(20,2),registeredDate datetime,address varchar(255) NOT NULL,createDate datetime,customerName varchar(100) NOT NULL,telephone varchar(15) NOT NULL,isLogout tinyint DEFAULT 0,remark varchar(255)
);DROP TABLE IF EXISTS `tb_customer`;
create table tb_customer(customerID int primary key,type enum('1','2') NOT NULL,relationID int NOT NULL
);DROP TABLE IF EXISTS `tb_deposit`;
create table tb_deposit(savingID int primary key,savingName varchar(20) NOT NULL,descript varchar(50)
);DROP TABLE IF EXISTS `tb_machine`;
create table tb_machine(machine char(8) primary key,bankID int
);DROP TABLE IF EXISTS `tb_personal`;
create table tb_personal(personalID int primary key,customerID int NOT NULL,customerName varchar(50)NOT NULL,PID char(18)NOT NULL,Vip tinyint NOT NULL DEFAULT 0,sex tinyint NOT NULL,birthDate datetime NOT NULL,educationalLevel varchar(30),marriage varchar(15),email varchar(50),telephone varchar(11),address varchar(50),isLogout tinyint NOT NULL DEFAULT 0,createDate datetime,remark varchar(255)
);DROP TABLE IF EXISTS `tb_tradeinfo`;
create table tb_tradeinfo(tradeDate datetime NOT NULL,tradeType enum('存入','支出') NOT NULL,cardID char(19) NOT NULL,tradeMoney decimal(20,2) NOT NULL,machine char(8) NOT NULL,remark varchar(255),primary key (tradeDate,cardID)
);alter table tb_company add constraint fk_customerID foreign key(customerID) references tb_customer(customerID);
alter table tb_tradeinfo add constraint fk_cardID foreign key(cardID)references tb_cardinfo(cardID);
alter table tb_tradeinfo add constraint fk_machine foreign key(machine) references tb_machine(machine);
alter table tb_machine add constraint fk_bankID foreign key(bankID) references tb_bankoutlets(bankID);
alter table tb_cardinfo add constraint fk_cardinfo_customerID foreign key (customerID) references tb_customer(customerID);
alter table tb_cardinfo add constraint fk_savingID foreign key(savingID) references tb_deposit(savingID);
alter table tb_cardinfo add constraint fk_cardinfo_bankID foreign key (bankID) references tb_bankoutlets(bankID);/********** End **********/SET FOREIGN_KEY_CHECKS = 1;
show tables;

第3關:tb_personal 表中新增個人賬戶張韻文

1.增刪查改

插入
// 指定字段
INSERT INTO 表名(字段名1,字段名2,…) VALUES(值1,值2,…);
// 不指定字段,則添加的值的順序應和字段在表中的順序完全一致。
INSERT INTO 表名 VALUES(值11,值2,…);
刪除

DELETE FROM 表名 [WHERE 條件表達式]; ? ?// where可以讓刪除更細粒化
查看

SELECT 字段名1,字段名2,… FROM 表名;
修改(更新)

UPDATE 表名 SET 字段名1=值1,[字段名2=值2,…] [ WHERE 條件表達式 ];

2.代碼

use db_ebank;/********** Begin **********/
insert into tb_personal values (13,57896561, '張韻文','350781199403072206', 0,1, '1994-03-07 06:29:39', '小學', '未婚', '17632541845@qq.com', '17632541845', '四川省成都市武侯區', 0, '2023-01-13 03:35:30', NULL);
/********** End **********/select * from tb_personal where customerName = '張韻文';

第4關:tb_company 表中新增企業賬戶好又來生物有限公司

use db_ebank;/********** Begin **********/
insert into tb_company values(10,90123655, '9123456151014123', '趙其', '635254215648427785', 0,'生物/醫學', 10000000.00, '2021-01-27', '河北石家莊', '2022-02-15', '好友來生物有限公司', '18896854523', 0, NULL);
/********** End **********/select * from tb_company where customerName = '好友來生物有限公司';

第5關:在 tb_cardInfo 表中對應新增兩個新賬戶的開卡記錄

use db_ebank;/********** Begin **********/
insert into tb_cardinfo values ('6227 2666 6767 9884', 57896561, 1, 'RMB', 2, '2008-08-16', 10, 10000, '050050', 0, 0, 0, 0, 1, '儲蓄卡');
insert into tb_cardinfo values ('6227 2666 6767 9501', 90123655, 1, 'RMB', 3, '2022-02-15', 10000, 200000,'888888', 0, 0, 0, 0, 14, '儲蓄卡');
/********** End **********/select * from tb_cardinfo where cardID in ('6227 2666 6767 9884','6227 2666 6767 9501');

第6關:張韻文取款2000元,tb_trdeInfo 表中新增存取儲蓄業務記錄,并且張韻文用戶銀行卡對應減少2000

use db_ebank;/********** Begin **********/
insert into tb_tradeinfo(tradeType,cardID,tradeMoney,machine,remark)values('支出','6227 2666 6767 9884','2000.00','22021435',NULL);
update tb_cardinfo set balance='6000.00' where cardID='6227 2666 6767 9884';
/********** End **********/select tradeType,cardID,tradeMoney,machine,remark from tb_tradeinfo where cardID = '6227 2666 6767 9884';
select * from tb_cardinfo where cardID = '6227 2666 6767 9884';

第7關:好又來生物有限公司要注銷其在怡貝銀行賬戶,tb_company 表中刪除該企業賬戶記錄

這里需要在第2行加一句delete代碼 加了之后就不會報錯

use db_ebank;
DELETE FROM tb_company WHERE companyID=10; 
INSERT INTO `tb_company` VALUES (10,90123655, '9123456151014123', '趙其', '635254215648427785',0, '生物/醫學', 10000000.00, '2021-01-27', '河北石家莊', '2022-02-15', '好友來生物有限公司', '18896854523', 0, NULL);
/********** Begin **********/
delete from tb_company where tb_company.companyID=10;
/********** End **********/
select * from tb_company;

第8關:備份并導出db_ebank數據庫

1.數據庫的導入導出

導出

mysqldump -u用戶名 -p密碼 數據庫名 [表名] > 導出文件名


導入

mysql -u用戶名 -p密碼 數據庫名 < 導出文件名

在實訓開始前需要點擊測評按鈕初始化數據庫,然后在命令行完成數據庫的備份和導出,最后點擊測評。

2.代碼

第9關:刪除db_ebank數據庫

/********** Begin **********/
drop database db_ebank;
/********** End **********/
show databases;

第10關:恢復導入db_ebank數據庫

實訓開始之前先重置命令行(右上角“工具”按鈕中)

然后完成這三行代碼即可

?/data/workspace/myshixun/step1/common/db_bank.sql

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/904315.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/904315.shtml
英文地址,請注明出處:http://en.pswp.cn/news/904315.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

同城跑腿小程序幫取幫送接單搶單預約取件智能派單同城配送全開源運營版源碼優創

一、源碼描述 這是一套同城跑腿小程序&#xff0c;基于FastadminUniapp框架&#xff0c;全開源無加密&#xff0c;可私有化部署&#xff0c;包含用戶端、騎手端和運營端&#xff08;后端&#xff09;&#xff0c;支持幫取/幫送模式&#xff0c;支持一鍵接單/搶單&#xff0c;主…

利用無事務方式插入數據庫解決并發插入問題

一、背景 由于項目中同一個網元&#xff0c;可能會被多個不同用戶操作&#xff0c;而且操作大部分都是以異步子任務形式進行執行&#xff0c;這樣就會帶來并發寫數據問題&#xff0c;本文通過利用無事務方式插入數據庫解決并發插入問題&#xff0c;算是解決問題的一種思路&…

Nuxt3還能用嗎?

Nuxt3還能用嗎&#xff1f; 前一段時間&#xff0c;我完成了整個產品&#xff0c;從Nuxt到Next的遷移&#xff0c;因為面臨了一些在框架層面就無法解決的問題。 payload json化 在所有的的Nuxt中&#xff0c;我們都能看到有這樣一個東西。 其實有這個東西也很正常&#xff0…

Dify 獲取天氣數據并以echarts圖表顯示

Dify 獲取天氣數據并以echarts圖表顯示 1. 創建一個 Chatflow2. 創建一個 HTTP 請求節點3. 創建一個代碼執行節點4. 創建一個直接回復節點5. 發布并預覽 1. 創建一個 Chatflow 2. 創建一個 HTTP 請求節點 請求地址&#xff1a;https://weather.cma.cn/api/climate?stationid5…

計算機圖形學編程(使用OpenGL和C++)(第2版)學習筆記 02.OpenGL圖像管線

1. OpenGL圖像管線 OpenGL&#xff08;Open Graphics Library&#xff09;是一個跨平臺的、功能強大的圖形渲染API&#xff0c;用于開發2D和3D圖形應用程序。它由Khronos Group維護&#xff0c;廣泛應用于游戲開發、圖形設計、虛擬現實等領域。 1.0.1. OpenGL的特點&#xff…

Linux架構篇、第1章_02源碼編譯安裝Apache HTTP Server 最新穩定版本是 2.4.62

Linux_基礎篇 歡迎來到Linux的世界&#xff0c;看筆記好好學多敲多打&#xff0c;每個人都是大神&#xff01; 題目&#xff1a;源碼編譯安裝Apache HTTP Server 最新穩定版本是 2.4.62 版本號: 1.0,0 作者: 老王要學習 日期: 2025.05.01 適用環境: Centos7 文檔說明 本文…

算法基礎學習|03二分

一、思路 &#xff08;1&#xff09;mid(lr1)/2 if(check(mid)):1.true [mid,r] lmid 2.false [l,mid-1] rmid-1 &#xff08;2&#xff09;mid(lr)/2 if(check(mid)):1.true [l,mid] rmid 2.false [mid1,r] lmid1 二、模板 如何選擇模…

18. LangChain分布式任務調度:大規模應用的性能優化

引言&#xff1a;從單機到萬級并發的進化 2025年某全球客服系統通過LangChain分布式改造&#xff0c;成功應對黑五期間每秒12,000次的咨詢請求。本文將基于LangChain的分布式架構&#xff0c;詳解如何實現AI任務的自動擴縮容與智能調度。 一、分布式系統核心指標 1.1 性能基準…

Java泛型(補檔)

核心概念 Java 泛型是 Java SE 1.5 引入的一項重要特性&#xff0c;它的核心思想是 參數化類型&#xff08;Parameterized Types&#xff09;&#xff0c;即通過將數據類型作為參數傳遞給類、接口或方法&#xff0c;使代碼能夠靈活地處理多種類型&#xff0c;同時保證類型安全性…

LeetCode 熱題 100:普通數組

53. 最大子數組和 給你一個整數數組 nums &#xff0c;請你找出一個具有最大和的連續子數組&#xff08;子數組最少包含一個元素&#xff09;&#xff0c;返回其最大和。 子數組是數組中的一個連續部分。 示例 1&#xff1a; 輸入&#xff1a;nums [-2,1,-3,4,-1,2,1,-5,4] 輸…

【kafka系列】消費者組

目錄 消費者組功能點 1. 動態負載均衡 2. 容錯高可用 3. 消費進度管理 4. 并行消費能力 5. 消費隔離性 其他要點 1. Rebalance過程詳解 2. 位移提交的精確語義 3. 消費者限速策略 4. 跨機房消費設計 消費者組功能點 1. 動態負載均衡 核心機制&#xff1a;通過Rebal…

黑馬點評day01(基于Redis)

1.7 Redis代替session的業務流程 1.7.1、設計key的結構 首先我們要思考一下利用redis來存儲數據&#xff0c;那么到底使用哪種結構呢&#xff1f;由于存入的數據比較簡單&#xff0c;我們可以考慮使用String&#xff0c;或者是使用哈希&#xff0c;如下圖&#xff0c;如果使用…

Python爬蟲實戰:獲取優美圖庫各類高清圖片,為用戶提供設計素材

一、引言 在互聯網時代,高清壁紙資源豐富多樣,而優美圖庫作為一個提供大量精美壁紙的網站,吸引了眾多用戶。通過 Python 爬蟲技術,可以自動化地從該網站獲取所需的壁紙資源,為用戶節省時間和精力。然而,網站通常會采取反爬措施來防止數據被惡意抓取,因此需要在爬蟲程序…

Go反射-通過反射調用結構體的方法(帶入參)

使用反射前&#xff0c;我們需要提前做好映射配置 papckage_struct_relationship.go package reflectcommonimport (api "template/api" )// 包名到包對象的映射 var structMap map[string]func() interface{}{"template/api": func() interface{} { re…

Git_.gitignore文件簡介及使用

.gitignore 這個文件的作用就是告訴Git哪些文件不需要添加到版本管理中。實際項目中&#xff0c;很多文件都是不需要版本管理的&#xff0c;比如Python的.pyc文件&#xff0c;Git會根據這個文件里配置的這些規則來判斷是否將文件添加到版本控制中。 注意&#xff0c;直接新建文…

HarmonyOS ArkUI安全控件開發指南:粘貼、保存與位置控件的實現與隱私保護實踐

目錄 安全控件1. 粘貼控件1.1 約束與限制1.2 開發步驟 2. 保存控件2.1 約束與限制2.2 開發步驟 3. 位置控件3.1 約束與限制3.2 開發步驟 安全控件 安全控件是系統提供的一組系統實現的ArkUI組件&#xff0c;其中保存控件在用戶首次使用時&#xff0c;會彈出通知彈窗&#xff0…

C++筆記之接口`Interface`

C++筆記之接口Interface code review! 一個簡潔簡短的 C++ 接口實現示例: #include <iostream>// 1. 定義接口(抽象類) class Shape {public:

動態圖表 -- eg1

問題&#xff1a; 前端vue&#xff0c;后端springboot&#xff0c;實現動態表格樣式&#xff0c;&#xff08;表格List<Student>&#xff0c;Student類有年級&#xff0c;班級&#xff0c;文理科分類&#xff0c;姓名&#xff0c;學號&#xff0c;等屬性。先根據年級分類…

C++學習之shell高級和正則表達式

目錄 1.正則表達式 2.C中使用正則 3.復習 4.sort命令 5.uniq命令 6.wc命令 7.grep命令 8.find命令 9.xargs命令 10.sed命令 11.awk命令 12.crontab 1.正則表達式 1 管道 使用| 將多個命令拼接在一起 原理&#xff0c;就是將前一個命令的標準輸出作為后一個…

【Vue】 實現TodoList案例(待辦事項)

目錄 組件化編碼流程&#xff08;通用&#xff09; 1.實現靜態組件&#xff1a;抽取組件&#xff0c;使用組件實現靜態頁面效果 2.展示動態數據&#xff1a; 1. 常規 HTML 屬性 3.交互——從綁定事件監聽開始 什么時候要用 event&#xff1a; 什么時候不需要用 event&am…