表与表的数据操作

以后数据所用的表都在此三个表的基础上进行

--1.设已经创建了数据库PXSCJ,现在改数据库中需创建学生情况表XSB,

--该表的结构如图

USE PXSCJ

GO

CREATE TABLE XSB

{

   学号     char(6)    NOT NULL PRIMARY KEY,

   姓名     char(8)    NOT NULL,

   性别     bit        NULL DEFAULT 1,

   出生时间  date    NULL,

   专业     char(12) NULL,

   总学分    int        NULL,

   备注     varchar(500) NULL

}

--更新,a表(a表同上)同步到xsb,进行信息同步用如下语句

MERGE INTO a

   USING XSB ON a.学号=XSB.学号

   WHEN MATCHED

      THEN UPDATE SET a.姓名=XSB.姓名,a.性别=XSB.性别.......(等等)

      WHEN NOT MATCHED

      THEN INSERT VALUES(XSB.学号,XSB.性别.......)

      WHEN NOT MATCHED BY SOURCE

      THEN DELETE;

--2.创建一个计算带列的表,表中包含课程的课程号,总成绩和学习该学习课程的人数以及课程的平时成绩

CREATE TABLE PJCJ

{

   课程号 char(3) PRIMARY KEY,

   总成绩 real NOT NULL,

   人数 int NOT NULL

   平均成绩 AS 总成绩/人数 PERSISTED

}

--3.在数据库pxscj中的xsb中增加一个列“奖学金等级”

ALTER TABLE XSB

   ADD 奖学金等级 tinyint NULL

   GO

   --删除一个名为奖学金等级的列

ALTER TABLE XSB

   DROP 奖学金等级 tinyint NULL

   GO

   --添加多个列

   ALTER TABLE XSB

   ADD 奖学金等级 tinyint NULL,,

      奖学金等级 tinyint NULL

   GO

--4.修改表xsb中已有咧的属性,将名为“姓名”的列长度由庲的改为,

--将"出生时间"的列数据类型由date给位datetime

ALTER TABLE XSB

   ALTER COLUMN 姓名 char(10)

   GO

   ALTER TABLE XSB

      ALTER COLUMN 出生时间 smalldatetime

     

--删除表

DROP TABLE XSB

--向表中插入数据

INSERT INTO CJB VALUES('081101',101,80)

 

--5.删除记录,将pxscj数据库的xsb中备注为空的行删除

DELETE FROM XSB

   WHERE 备注 IS NULL

   --删除xsb所有行

   DELETE XSB

  

--修改记录,将pxscj数据库的xsb中学号为的学生的备注改为”三好学生“

UPDATE XSB

   SET 备注='三好学生'

   WHERE 学号='081101'

   GO

posted @ 2015-12-24 16:36  tt香薷  阅读(303)  评论(0)    收藏  举报