diff --git "a/17 \344\276\257\351\224\237\351\223\226/\344\275\234\344\270\232/\345\255\230\345\202\250\350\277\207\347\250\213.Markdown" "b/17 \344\276\257\351\224\237\351\223\226/\344\275\234\344\270\232/\345\255\230\345\202\250\350\277\207\347\250\213.Markdown" new file mode 100644 index 0000000000000000000000000000000000000000..7ffc0781d7b41db5958a215d66b6bcadb298d470 --- /dev/null +++ "b/17 \344\276\257\351\224\237\351\223\226/\344\275\234\344\270\232/\345\255\230\345\202\250\350\277\207\347\250\213.Markdown" @@ -0,0 +1,43 @@ +--定义存储过程实现查询出账户余额最低的银行卡账户信息,显示银行卡号,姓名,账户余额 +go +create proc proc_min +as +select top 1 CardNo,RealName,CardMoney from BankCard +left join AccountInfo on BankCard.AccountId = AccountInfo.AccountId +order by CardMoney + +exec proc_min +go + +----------------------------------------------------------------- +--模拟银行卡存钱操作,传入银行卡号,存钱金额,实现存钱操作 +create proc proc_money +@card char(20),@money money +as +begin + update BankCard set CardMoney +=@money + where CardNo = @card + + end +exec proc_money'6225547858741263','4000' + +--------------------------------------------------------------- +-- 模拟银行卡取钱操作,传入银行卡号,取钱金额,实现取钱操作,取钱成功,返回1,取钱失败返回-1 +go +create proc proc_getp +@card char(20),@money money +as +if @money <= (select cardmoney from BankCard where cardno = @card) +begin + update BankCard set cardmoney-=@money + where cardno = @card +return 1 +end +else +begin +return -1 +end +go +declare @o int +exec @o= proc_getp'6225547858741263',10000 +print @o \ No newline at end of file diff --git "a/17 \344\276\257\351\224\237\351\223\226/\344\275\234\344\270\232/\350\247\206\345\233\276.Markdown" "b/17 \344\276\257\351\224\237\351\223\226/\344\275\234\344\270\232/\350\247\206\345\233\276.Markdown" new file mode 100644 index 0000000000000000000000000000000000000000..8cb10c38664b84b8f6ac6e2c1ea53305301bc6e7 --- /dev/null +++ "b/17 \344\276\257\351\224\237\351\223\226/\344\275\234\344\270\232/\350\247\206\345\233\276.Markdown" @@ -0,0 +1,11 @@ +编写视图实现查询出所有银行卡账户信息,显示卡号,身份证,姓名,余额。 +```sql +create view vw_aban(显示卡号,身份证,姓名,余额) +as +select CardNo,AccountCode,RealName,CardMoney from AccountInfo a +join BankCard b on a.AccountId=b.AccountId +go +select * from vw_aban + +drop view vw_aban +``` \ No newline at end of file diff --git "a/17 \344\276\257\351\224\237\351\223\226/\344\275\234\344\270\232/\351\200\273\350\276\221.Markdown" "b/17 \344\276\257\351\224\237\351\223\226/\344\275\234\344\270\232/\351\200\273\350\276\221.Markdown" new file mode 100644 index 0000000000000000000000000000000000000000..b456cc0d78f84e0c426935698e95a125782e1b56 --- /dev/null +++ "b/17 \344\276\257\351\224\237\351\223\226/\344\275\234\344\270\232/\351\200\273\350\276\221.Markdown" @@ -0,0 +1,13 @@ +为赵云此人进行开户开卡操作,赵云身份证:420107199904054233 +```sql +declare @cno varchar(30)='420107199904054233' +insert AccountInfo values(@cno,'13542265123','赵云',getdate()) +insert BankCard values('6223695231569457',4,123456,0.00,1,getdate()) +``` +--2. 需要求出张飞的银行卡卡号和余额,张飞身份证: (1.使用连接查询,2.使用变量) +```sql +declare @ano varchar(20)='420107199602034138 ' +select CardNo,CardMoney from AccountInfo a +join BankCard b on a.AccountId=b.AccountId +where AccountCode= @ano +``` \ No newline at end of file