Sql Server 2005 实训

【序言】


 很久没到这边 ,上周为了应付学校的技能抽查,对数据库的基本操作进行整理,放到这边,主要是一些简单的数据库的操作


[正文]

1. 数据库的创建

  create database BankCreditLoanDB

   on primary(

   name=BankCreditLoanDB,

   Filename='E:\银行信贷管理系统\BankCreditDB.mdf',

   size=3,    --大小

   maxsize=100,   

   filegrowth=10%   -- 文件的增长率

)

  log on(

    name=BankCredloanDB_log,

    filename='E:\银行信贷管理系统\BankCreditloanDB.ldf',

    size=1,

    maxsize=2,

    filegrowth=10%  

)

2. 表的的创建

2.1 客户基本信息表

   

  create table T_customer_info(

     Cust_id  char(10) primary key ,

     Cust_name varchar(60),

     Legal_name varchar(10),

     Reg_address varchar(60),

     Post_code  char(6)   --邮政编码

 )

2.2 客户信用等级表

      create table T_cust_credit_level(

     Cust_id  char(10) primary key ,

     Credit_level char(2),  -- 信用级别

     Begin_date   datetime, --评级有效的开始日期

     End_date   datetime

 )

2.3 客户信用等级历史表

   

create table T_his_cust_credit_level(

     id  integer primary key ,

     Cust_id char(10), 

     Credit_level char(2), --信用等级

     Begin_date datetime, --评级有效的开始日期

     End_date  datetime

 )

3. 主外键约束

4. 将信用级别字段的默认值设置为01,

5. 根据对数据的数据模型的理解,分别向三个表中插入一条测试数据

   

 5.1     insert into  T_customer_info(

    Cust_id,Cust_name,Legal_name,Reg_address,Post_code

  )values(

   'A001B00101','李勇军','xx公司','长沙市雨花区XX路号','410001'

)

 5.2

     insert into  T_cust_credit_level(

    Cust_id,Begin_date,End_date

  )values(

   'A001B00101','2010-01-01','2011-12-31'

)

5.3

   insert into  T_his_cust_credit_level(

   id, Cust_id,Credit_level,Begin_date,End_date

  )values(

   '01','A001B00101','01','2010-01-01','2011-12-31'

)

6. 查询客户名称为“XX公司”的信用等级

Select  Credit_Level 

From T_customer_info ,T_his_cust_credit_level 

Where T_customer_info.Cust_id=T_his_cust_credit_level.Cust_id 主外键连接

 AND T_his_cust_credit_level.Cust_name=xx公司

7. 创建视图V_His_cust_credit_level用于查询客户的信用级别历史记录,视图列名显示为客户名称 ,信用级别、评级的有效日期、评级有效中止日期

       Create view V_His_cust_credit_level  --视图名

        AS 

         Select * from T_his_cust_credit_level

         

8. 创建带输入参数的存储过程P_cust_credit_level,根据输入参数更新客户信用等级表,并将更新前的记录插入到客户信用等级历史表 

Create procedure P_cust_credit_level(@Cust_id CHAR(10)),@Credit_lever CHAR(2))

AS

BEGIN 

  INSERT INTO T_his_cust_credit_level

(Cust_id,Credit_level,begin_date,End_date)

Select Cust_id,Credit_level,Begin_date,End_date FROM T_Cust_credit_level WHERE  Cust_id=@Cust_id

Update T_cust_credit_lever SET Credit_level=@Credit_level

   WHERE Cus_id=@Cust_id

END

GO


【联系方式】

mail:[email protected]

QQ:527582451

你可能感兴趣的:(数据库,WINDOWS,SQL,数据库)