zoukankan      html  css  js  c++  java
  • SQL学习笔记2

    2018.10.16:周二

    --进阶
     
    --别名
    SELECT StuName,StuNum+','+StuClass+','+StuGender+','+StuPhone AS 信息
    FROM Student;
     
    --删除主键约束
    ALTER TABLE Student DROP CONSTRAINT PK_Student;
     
    --创建表并添加唯一性约束
    CREATE TABLE Persons(
    P_Id int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Address varchar(255),
    City varchar(255),
    CONSTRAINT uc_PersonID UNIQUE (P_Id,LastName)
    );
    --如果表已被创建添加唯一性约束
    ALTER TABLE Student
    ADD UNIQUE (ID);
    --如果需要命名约束
    ALTER TABLE Student
    ADD CONSTRAINT uc_Student UNIQUE (ID,StuName)
    --删除这个约束
    ALTER TABLE Student
    DROP CONSTRAINT uc_Student;
     
    --主键约束
    CREATE TABLE Person(
    P_Id int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Address varchar(255),
    City varchar(255),
    CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)
    );
    --在上面的实例中,只有一个主键 PRIMARY KEY(pk_PersonID)。
    --然而,pk_PersonID 的值是由两个列(P_Id 和 LastName)组成的。
    --如果表已创建
    ALTER TABLE Person
    ADD CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName);
    --删除约束
    ALTER TABLE Person
    DROP CONSTRAINT pk_PersonID;
     
    --外键约束
    CREATE TABLE Orders(
    O_Id int NOT NULL PRIMARY KEY,
    OrderNo int NOT NULL,
    P_Id int FOREIGN KEY REFERENCES Person(P_Id)
    );
     
    --如需命名 FOREIGN KEY 约束,并定义多个列的 FOREIGN KEY 约束
    CREATE TABLE Orders1(
    O_Id int NOT NULL,
    OrderNo int NOT NULL,
    P_Id int,
    PRIMARY KEY (O_Id),
    CONSTRAINT fk_PerOrders FOREIGN KEY (P_Id)
    REFERENCES Person(P_Id)
    );
     
    -- 当表已被创建时
    ALTER TABLE Orders
    ADD FOREIGN KEY (P_Id)
    REFERENCES Persons(P_Id)
    -- 如需命名 FOREIGN KEY 约束,并定义多个列的 FOREIGN KEY 约束
    ALTER TABLE Orders
    ADD CONSTRAINT fk_PerOrders
    FOREIGN KEY (P_Id)
    REFERENCES Persons(P_Id)
     
    -- 删除约束
    ALTER TABLE Orders
    DROP CONSTRAINT fk_PerOrders
     
    -- 默认约束
     
    -- 下面的 SQL 在表创建时在 "City" 列上创建 DEFAULT 约束:
    CREATE TABLE Persons1016_1(
    P_Id int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Address varchar(255),
    City varchar(255) DEFAULT 'Sandnes'
    )
    -- 通过使用类似 GETDATE() 这样的函数,DEFAULT 约束也可以用于插入系统值:
    CREATE TABLE Orders1016_2(
    O_Id int NOT NULL,
    OrderNo int NOT NULL,
    P_Id int,
    OrderDate date DEFAULT GETDATE()
    )
     
    --当表已被创建时,如需在 "City" 列创建 DEFAULT 约束
    ALTER TABLE Persons
    ADD CONSTRAINT DF_Persons_City DEFAULT('SANDNES') FOR City
    --Persons 为表名
    --City 为列名
    --DF_Persons_City 为我们创建的默认约束的名称 约束名称一般为:约束类型简称_表名_列名
     
    --删除
    ALTER TABLE Persons1016_1
    ALTER COLUMN City DROP DEFAULT;
     
    --having
    SELECT ID,StuName,StuClass,StuPhone,StuAge,SUM(ID+StuAge) AS HE
    FROM Student
    GROUP BY ID ,StuName,StuClass,StuPhone,StuAge
    HAVING StuAge>22;
     
  • 相关阅读:
    py2exe
    Microsoft Visual C++ Compiler for Python 2.7
    BeautifulSoup-find,findAll
    用vc生成可被python调用的dll文件
    xp下安装jdk8
    jython安装
    java java.lang.NoClassDefFoundError 的解决办法
    Python聊天室
    我的IOT入门课程上线了。
    Mybatis的CRUD操作
  • 原文地址:https://www.cnblogs.com/nullcodeworld/p/9797298.html
Copyright © 2011-2022 走看看