您的位置:新葡亰496net > 网络数据库 > 插入数据,用SQl语句在指定盘符创建文件夹

插入数据,用SQl语句在指定盘符创建文件夹

发布时间:2019-07-13 02:30编辑:网络数据库浏览(83)

    系统数据库

    ----------------------------------------SQL Server建库-建表-建约束成立School数据库--------------------------------------

    一 :创制数据库

    1.创办数据库
    use master
    go
    if exists(select * from sysdatabases where name='数据库名字')
    drop database 数据库名字
    go
    create database 数据库名字

    一、维护数据的完整性
    多少的完整性用于确定保证数据库数据服从一定的小购销和逻辑规则,在oracle中,数据完整性能够运用约束、触发器、应用程序(进程、函数)二种办法来贯彻,在那三种艺术中,因为约束易于维护,而且有着最棒的属性,所以作为维护数据完整性的首推。

        1、master:用于记录全数SQL server系统级其他音讯,举例说登陆的音讯,系统装置音信。即便她没了。你的SQL server就挂了。

    --成立School数据库之前:首先剖断数据库是或不是留存,若存在则删除后再次创下制,若荒诞不经则开创--
    --exists关键字:括号里边能查询到数码则赶回‘true’ 不然赶回‘false’
    if exists(select * from sysdatabases where name = 'School')
    --exists重临‘true’则施行删除数据库操作--
    drop database School

    开创一个数据文件和一个日记文件(MySchool)

    create database 数据库名字
    on primary
    (
    name = 'MySchool_data',
    filename = 'D:projectMySchool_data',--主数据文件
    size = 10mb,
    maxsize = 100mb,
    filegrowth=15%
    )
    log on
    (
    name = 'MySchool_log',
    filename = 'D:projectMySchool_log',--日志文件
    size = 3mb,
    maxsize = 20mb,
    filegrowth=1mb
    )
    2.五大约束
    1.—-主键约束(Primay Key constraint) 独一性,非空性
    2.—-独一约束 (Unique constraint)独一性,能够空,但只好有一个
    3.—-反省约束 (Check constraint) 对该列数据的限定、格式的限定(如:年龄、性别等)
    4.—-暗中同意约束 (Default constraint) 该多少的私下认可值
    5.—-外键约束 (Foreign Key constraint) 须要树立两表间的关联并援引主表的列
    3.五大致束的语法示例

         

        2、model:模型的情趣,就像模板同样。创造数据库都以三番两次model。假使您在该数据库下开创一张表,未来每创立新数据库,就曾经有了model的表。

    --exists重回‘false’则评释数据库不真实,直接创建

    create database MySchool
    on primary      --暗许属于primary主文件组,可总结
    (
    --数据文件的具体描述

    1.—-加多主键约束(将stuNo作为主键)
    alter table stuInfo
    add constraint PK_stuNo primary key (stuNo)
    2.—-加多独一约束(居民身份证号独一,因为各样人的都不等同)
    alter table stuInfo
    add constraint UQ_stuID unique(stuID)
    3.—-增添暗许约束(借使地方不填 默感觉“地址不详”)
    alter table stuInfo
    add constraint DF_stuAddress default (‘地址不详’) for stuAddress
    4.—-加多反省约束 (对年纪加以限定 15-肆十虚岁之间)
    alter table stuInfo
    add constraint CK_stuAge check (stuAge between 15 and 40)

    二、约束
    封锁用于确定保证数据库数据满意一定的生意准绳。在oracle中,约束富含:not null、 unique, primary key, foreign key和check 七种。
    1)、not null(非空)
    一旦在列上定义了not null,那么当插入数据时,必须为列提供数据。
    2)、unique(唯一)
    当定义了独一约束后,该列值是不可能重新的,但是足感到null。
    3)、primary key(主键)
    用来独一的标示表行的多少,当定义主键约束后,该列不但无法再一次何况不能为null。
    急需验证的是:一张表最八只好有多个主键,可是足以有多少个unqiue约束。
    4)、foreign key(外键)
    用以定义主表和从表之间的涉及。外键约束要定义在从表上,主表则必须具备主键约束或是unique 约束,当定义外键约束后,要求外键列数据必须在主表的主键列存在可能为null。
    5)、check
    用来强制行数据必须满足的准则,假定在sal列上定义了check约束,并须求sal列值在1000-3000中间一旦不在一千-贰仟之间就能提示出错。

        3、msdb:和master同样记录音信,分裂的是它记录职务调动,事件处理,数据备份及回复,报告警察方和那多少个的新闻。

    create database School
    on primary
    (
    --主数据库文件--
    name = 'School', --主数据文件逻辑名
    fileName = 'D:projectSchool.mdf', --主数据文件物理逻辑名
    size = 5MB, --初阶值大小
    maxsize = 100MB, --最大尺寸
    filegrowth = 15% --数据文件增加量
    )
    log on
    (
    --日志文件--
    name = 'School_log',
    filename = 'D:projectSchool_log.ldf',
    size = 2MB,
    filegrowth = 1MB
    )
    go

    name = 'MySchool_data'    --主数据库文件的逻辑名称
    filename = 'D:projectMySchool_data.mdf', --主数据库文件的物理名称
    size = 5MB,     --主数据库文件的早先大小
    maxsize = 100MB,     --主数据库文件拉长的最大值
    filegrowth = 15%     --主数据文件的增加率

    alter table stuInfo
    add constraint CK_stuSex check (stuSex=’男’ or stuSex=’女′)

        

        4、tempdb:不时数据库,它为具有不常表,一时存款和储蓄进程提供仓库储存空间

    ----------------------------------------使用T-SQL创建employee数据库------------------------------------
    create database employee
    on primary
    (
    --首要数据文件--
    name = 'employee1',
    filename = 'D:projectemployee1.mdf',
    size = 10MB,
    filegrowth = 10%
    ),
    (
    --次要数据文件--
    name = 'employee2',
    filename = 'D:projectemployee2.ndf',
    size = 20MB,
    maxsize = 100MB,
    filegrowth = 1MB
    )
    log on
    (
    --先是个日志文件--
    name = 'employee_log1',
    filename = 'D:projectemployee_log1.ldf',
    size = 10MB,
    filegrowth = 1MB
    ),
    (
    --次之个日志文件--
    name = 'employee_log2',
    filename = 'D:projectemployee_log2.ldf',
    size = 10MB,
    maxsize = 50MB,
    filegrowth = 1MB
    )

    )
    log on
    (
    --日志文件的现实陈述,各参数含义同上

    5.—-加多外键约束 (主表stuInfo和从表stu马科斯创建关系,关联字段stuNo)

    三、商城发售系统表设计案例一
    幸存贰个供销合作社的数据库,记录客户及其购物意况,由上边四个表组成:
    商品goods(商品号goodsId,商品名goodsName,单价unitprice,商品连串category,供应商provider);
    客户customer(客户号customerId,姓名name,地址address,电邮email,性别sex,身份证cardId);
    购买purchase(客户号customerId,商品号goodsId,购买数码nums);
    请用SQL语言变成下列功能:

    瞩目:以上八个系统数据库,别去删,删了有大小的标题。

    ---------------------------------查询已存在的数据库音信---------------------------
    select * from sysdatabases

    name = 'MySchool_log',    --主数据库文件的逻辑名称
    filename = 'D:projectMySchool_data.ldf', --主数据库文件的大意名称
    size=2MB,     --主数据库文件的启幕大小
    filegrowth = 1MB    --主数据文件的增速

    alter table stuInfo
    add constraint FK_stuNo foreign key(stuNo)references stuinfo(stuNo)
    4.一向在建表的时候增加约束
    create table UserType--用户连串表
    (
    TypeID int not null primary key identity(1,1),
    TypeName varchar(20) not null
    )
    create table Users--用户表
    (
    UserID int not null primary key identity(1,1),
    UserName varchar(20) not null,
    UserPwd int not null,
    UserTyID int not null foreign key references UserType(TypeID)--用户连串
    )
    create table VisitArea--访谈区域表
    (
    VisitID int primary key identity(1,1),
    VisitName varchar(20)
    )
    create table UserTypeA--用户类别与区域表
    (
    TypeAID int not null primary key identity(1,1),
    UserTypeID int not null foreign key references UserType(TypeID),
    VisitID int not null foreign key references VisitArea(VisitID)
    )
    create table UsersLog--用户登陆记录表
    (
    LogID int not null primary key identity(1,1),
    LogName varchar(20) not null,
    LogUserID int not null foreign key references Users(UserID),
    LogTime date not null
    )
    create table VisitRecord--访谈记录表
    (
    VRID int not null primary key identity(1,1),
    VUserID int not null foreign key references Users(UserID),
    VVisitID int not null foreign key references VisitArea(VisitID),
    VisitTime date not null,
    VUserType int not null foreign key references UserType(TypeID)
    )
    create table UpGrade
    (
    UGID int primary key not null identity(1,1),
    UGUserID int not null foreign key references Users(UserID),
    UpDown int not null , --升降标记
    UpTypeID int not null check(UpTypeID>1 and UpTypeID<4 ),
    DownTypeID int not null check(DownTypeID>1 and DownTypeID<4 ),
    UpDownTime date not null,

    1. 建表,在概念中供给证明:
      (1). 种种表的主外键;
      (2). 客户的全名没办法为空值;
      (3). 单价必须大于0,购买数量必须在1到30里面;
      (4). 电邮不可见重新;
      (5). 客户的性别必须是男照旧女,私下认可是男;

      SQL> create table goods(

      goodsId char(8) primary key, --主键
      goodsName varchar2(30),
      unitprice number(10,2) check(unitprice>0),
      category varchar2(8),
      provider varchar2(30)
      

      ); SQL> create table customer(

      customerId char(8) primary key, --主键
      name varchar2(50) not null, --不为空
      address varchar2(50),
      email varchar2(50) unique, --唯一
      sex char(2) default '男' check(sex in ('男','女')), -- 一个char能存半个汉字,两位char能存一个汉字
      cardId char(18)
      

      ); SQL> create table purchase(

      customerId char(8) references customer(customerId),
      goodsId char(8) references goods(goodsId),
      nums number(10) check (nums between 1 and 30)
      

      ); 表是默许建在SYSTEM表空间的

    数据类型:

    ---------------------------------删除数据库------------------------------------
    drop database School

    )
    go

    )

    use master
    go
    if exists(select * from sysdatabases where name='MySchool')
    drop database MySchool
    go
    create database MySchool
    on
    (
    name='MySchool_data',
    filename='D:projectMySchool_data.mdf',
    size=5MB,
    filegrowth=15%
    )
    log on
    (
    name='MySchool_log',
    filename='D:projectMySchool_log.ldf',
    size=5mb,
    filegrowth=1mb
    )
    go

    use MySchool
    go
    if exists(select * from sysobjects where name='Student')
    drop table Student
    go
    create table Student
    (
    StudentNo int not null, --学号
    LoginPwd nvarchar(20) not null, --登入密码
    StudentName varchar(20) not null, --学生姓名
    Sex bit not null, -- 性别
    GradeId int not null, --年级
    Phone varchar(20) not null, --电话号码
    Address nvarchar(100), --地址
    BornDate datetime not null, --出生日期
    Email nvarchar(50), --邮箱
    IDEntityCard varchar(18) --居民身份证号
    )
    go
    --主键约束 学生标号
    alter table Student
    add constraint PK_StudentNo primary key(StudentNo)
    --独一约束 居民身份证号
    alter table Student
    add constraint UQ_IDEntityCard unique(IDEntityCard)
    --私下认可约束 地址不详
    alter table Student
    add constraint DF_Address default('地址不详') for Address
    --检查约束 出生日期
    alter table Student
    add constraint CK_BornDate check(BornDate>'1980-01-01')

     

    use MySchool
    go
    if exists(select * from sysobjects where name='Subject')
    drop table Subject
    go
    create table Subject
    (
    SubjectNo int identity(1,1) not null, --课程编号
    SubjectName nvarchar(20) not null, --课程名称
    ClassHour int not null, --课时
    GradeId int not null --年级
    )
    go

    --主键约束
    alter table Subject
    add constraint PK_SubjectNo primary Key(SubjectNo)
    --检查约束
    alter table Subject
    add constraint CK_ClassHour check(ClassHour>0)

    alter table Subject
    add constraint Ck_SubjectName check(SubjectName!=null)
    --外键约束

    use MySchool
    go
    if exists(select * from sysobjects where name='Result')
    drop table Result
    go
    create table Result
    (
    StudentNo int not null, --学号
    SubjectNo int not null, --课程编号
    StudentResult int not null, --学生成绩
    ExamDate datetime not null --考试日期
    )
    go

     

    alter table Result
    add constraint PK_fuhe primary Key(StudentNo,SubjectNo,ExamDate)
    alter table Result--私下认可约束 日期
    add constraint DF_ExamDate default(getdate()) for ExamDate
    alter table Result
    add constraint CK_StudentResult check (100>StudentResult )
    alter table Result
    add constraint CK_StudentResult2 check (StudentResult>0 )
    alter table Result
    add constraint FK_SubjectNo subject是主表
    foreign Key(SubjectNo) references Subject(SubjectNo)
    alter table Result
    add constraint FK_StudentNo
    foreign Key(StudentNo) references Student(StudentNo)

    use MySchool
    go
    if exists(select * from sysobjects where name='Grade')
    drop table Grade
    go
    create table Grade
    (
    GradeID int identity(1,1) not null, --年级编号
    GradeName nvarchar(20) not null, --年级

    )
    go

    alter table Grade
    add constraint PK_GradeID primary Key(GradeID)

    --外键约束
    alter table Student
    add constraint FK_GradeId
    foreign Key(GradeId) references Grade(GradeId)

    alter table Subject
    add constraint FK_GradeId2
    foreign Key(GradeId) references Grade(GradeId)

    --向Grade表插入数据
    INSERT INTO Grade VALUES('S1')

    --向Subject表插入数据
    INSERT INTO Subject VALUES('Winforms',20,1)

    --向Student表插入数据
    INSERT INTO Student VALUES('10000','GuoJing','郑智',1,1,02088762106,'塔林市河西区','一九九〇-09-08 00:00:00','GuoJing@sohu.com',111111)

    --向Result表插入数据
    INSERT INTO Result VALUES('10001',2,70.6,'2013-02-15 00:00:00')

    select * from Grade
    select * from Result
    select * from Student
    select * from Subject

              

        1、数值型:

    ---------------------------------制造Student数据库表----------------------------
    插入数据,用SQl语句在指定盘符创建文件夹。--1、选择操作的数据库--
    use School
    go

     

    四、市廛贩卖系统表设计案例二
    即使在建表时忘记建设构造要求的自律,则足以在建表后选取alter table命令为表扩大约束。但是要注意:扩展not null约束时,要求利用modify选项,而充实其余多样约束使用add选项。
    1)、增添商品名也无法为空
    SQL> alter table goods modify goodsName not null;
    2)、扩大身份ID也不可能重复
    SQL> alter table customer add constraint xxxxxx unique(cardId);
    3)、 扩充客户的住址只可以是’海淀’,’丹东’,’东城’,’西城’,’通州’,’崇文’,’昌平’;
    SQL> alter table customer add constraint yyyyyy check (address in ('海淀','朝阳','东城','西城','通州','崇文','昌平'));

              整型:int  smallint  bigint  tinyint

    --推断表是或不是留存--
    if exists(select * from sysobjects where name = 'Student')
    drop table Student

    始建三个数据文件和多少个日志文件(employees)
    create database employees
    on primary
    (
    --主数据库文件的有血有肉汇报
    name='employee1',
    filename='D:插入数据,用SQl语句在指定盘符创建文件夹。projectemployee1.mdf',
    size=10,
    filegrowth=10%
    ),
    (
    --次要数据库文件的切切实实描述
    name='employee2',
    filename='D:projectemployee2.mdf',
    size=20,
    maxsize=100,
    filegrowth=1
    )          
    log on
    (
    --日志文件1的现实描述
    name='employeelog1',
    filename='D:projectemployee1_log.ldf',
    size=10,
    maxsize=50,
    filegrowth=1
    ),
    (
    --日志文件2的描述
    name='employeelog2',
    filename='D:projectempolyee2_log.ldf',
    size=10,
    maxsize=50,
    filegrowth=1
    )
    go

                 
    除去约束
    当不再必要某些约束时,能够去除。
    alter table 表名 drop constraint 约束名称;
    特不要说爱他美(Karicare)下:在剔除主键约束的时候,也会有荒唐,比方:alter table 表名 drop primary key;那是因为只要在两张表存在主从关系,那么在剔除主表的主键约束时,必须带上cascade选项 如像:alter table 表名 drop primary key cascade;
                      
    来得约束消息
    1)、呈现约束音信
    因此询问数据字典视图user_constraints,能够来妥善前用户具有的羁绊的音信。
    select constraint_name, constraint_type, status, validated from user_constraints where table_name = '表名';
    2)、展现约束列
    透过查询数据字典视图user_cons_columns,能够显得约束所对应的表列音信。
    select column_name, position from user_cons_columns where constraint_name = '约束名';
    3)、当然也许有更易于的方法,直接用pl/sql developer查看就能够。轻便演示一下下...

              浮点型:float  real

    --2、创建表---
    create table Student
    (
    --具体的列名 数据类型 列的风味(是或不是为空)--
    StudentNo int identity(2,1) not null,
    LoginPwd nvarchar(20) not null,
    StudentName nvarchar(20) not null,
    Sex int not null,
    GradeId int not null,
    phone nvarchar(50) not null,
    BornDate datetime not null,
    Address nvarchar(255),
    Email nvarchar(50),
    IDENTITYcard varchar(18)
    )
    go

     

            

              货币型:money

    ---查看全部数据库对象(数据库表)---
    select * from sysobjects

     

    五、表级定义、列级定义
    1)、列级定义
    列级定义是在概念列的还要定义约束。
    借使在department表定义主键约束

        2、布尔型(bit):

    drop table Student

    二:删除数据库
    usr master
    if exists(select * from sysdatabases where name='....')
    drop database ......

    create table department4(
       dept_id number(12) constraint pk_department primary key,
       name varchar2(12), 
       loc varchar2(12)
    );
    

             True

    ----------------------创建subject课程表-------------------
    -----1、决断表是不是留存;若存在则删除再次创下设,若荒诞不经则一向开立--------
    if exists(select * from sysobjects where name = 'subject')
    drop table subject

     

        
    2)、表级定义
    表级定义是指在概念了装有列后,再定义约束。这里需求当心:
    not null约束只可以在列级上定义。
    以在创制employee2表时定义主键约束和外键约束为例:

             False

    use School
    go

     

    create table employee2(
       emp_id number(4), 
       name varchar2(15),
       dept_id number(2), 
       constraint pk_employee primary key (emp_id),
       constraint fk_department foreign key (dept_id) references department4(dept_id)
    );
    

        3、二进制型

    ---创建subject课程表--
    create table subject
    (
    SubjectNo int not null identity(1,1),
    SubjectName nvarchar(50),
    ClassHour int,
    GradeID int
    )

    三:创立和删除表

     

             binary

    ----------------------------------------创建Result成绩表-------------------
    -----1、推断表是不是存在;若存在则删除再次创下制,若不设有则平昔开立--------
    if exists(select * from sysobjects where name = 'Result')
    drop table Result

    use MySchool    --在Myschool中创立表
    go

             varbinary

    use School
    go

    create table Student
    (
    StudentNo int not null.   --学号,int 类型,分化意为空
    LoginPwd nvarchar(50) not null,  --密码 nvarchar类型,区别意为空
    StudentName nvarchar(50) not null, --名字,nvarchar类型,步允许为空
    Sex bit not null,   --性别,取值0或1
    Email nvarchar(20)   --邮箱,可为空
    )
    go

             image

    ---创建Result成绩表--
    create table Result
    (
    StudentNo int not null,
    SubjectNo int not null,
    ExamDate Datetime not null,
    StudentResult int not null
    )

    删除表
    use MySchool
    go
    if exists(select * from sysobjects where naem='Student')
    drop table Student
      
                                                                                                                                                                                                                                                                                                                                                                                                      
    四:创设和删除约束
    主键约束(Primary Key Constraint)
    非空约束(Not Null)
    独一约束(Unique Constaraint)
    自己商议约束(Check Constaraint)
    私下认可约束(Default Constaraint)
    外建约束(Foreign Key Constarint):用于在两表之间制造关系,须要钦定援用主表的哪一列

        4、文本数据类型

    -----------------------------------------创建Grande年级表-------------------
    -----1、剖断表是还是不是存在;若存在则删除再次创下造,若不设有则一贯开立--------
    if exists(select * from sysobjects where name = 'Grade')
    drop table Grade

    alter table 表名
    add constraint 约束名  约束类型  具体的羁绊表明

            char    固定长度

    use School
    go

    例:
    --加多主键约束
    alter table Student
    add constraint PK_StudentNo Primary Key(StudentNo)

            vachar  可变长度

    ---创建Grande年级表--
    create table Grade
    (
    GradeId int not null,
    GrandeName nvarchar(50)
    )

    --增加独一约束
    alter table student
    add constraint UQ_IdentityCard unique(IdentityCard)

            nvarchar

    -----------------------------------------T-SQL增添封锁-------------------------
    --给StudentNo增添主键约束---
    alter table Student
    add constraint pk_StuNo primary key(StudentNo)

    --增加暗中同意约束
    alter table Student
    add constraint DF_Address default('地址不详') for address

            nchar  

    --给居民身份证增加独一约束--
    alter table Student
    add constraint uq_StuIdcard unique(IDENTITYcard)

    --增加检查约束
    alter table Student
    add constraint CK_BornDate checke(BornDate>='1980-01-01')

            text    长文本消息

    ---给地方address增添默许约束--
    alter table Student
    add constraint df_stuaddress default('地址不详') for Address

    --增加外键约束(Result是从表,Student是主表)
    alter table Result
    add constraint FK_StudentNo
    foreign key(StudentNo) references Student(StudentNo)
    go

            ntext   可变长度的长文本

    ---删除地址address暗许约束---
    alter table Student
    drop constraint df_stuaddress

    去除约束
    alter table 表名
    drop constraint 约束名

            datetime 日期和岁月

    ----------出寿辰期增加检查约束--------
    alter table Student
    add constraint ck_stuBorndate check(Borndate > '1980-01-01')

    例:删除学生表中的暗中同意约束
    alter tablte Student
    drop constraint DF_Address

    新建数据库:

    ---------与Grand(年级表)创立主外键关系--------

    什么向已存在数量的表中增添约束
    alter table Employee with nocheck ( whit nocheck不向已存在的多少约束)
    add constraint

        1、数据库文件  :主数据文件和副数据文件

    --1、添加Grade主键(操作Grade)---
    alter table Grade
    add constraint pk_graid primary key(GradeId)

    向已存在的数码表中插入一列
    alter table 表名
    add 列名 数据类型  null

        2、日记文件:三个或八个

    --2、添加Grade外键(操作Student)--
    alter table Student
    add constraint fk_stuGradeID foreign key(GradeId) references Grade(GradeId)

     

        3、create database 名称

     

     

    重命名数据库:exec sp_renamedb new,old

    -------------------给subject课程表增加约束-----------------------

    在数据库中用SQL语句创造文件夹(例:在E盘创制三个project文件夹)

    删除数据库:drop database 名称1,名称2

    ----给subjectNo列增多主键约束------
    alter table subject
    add constraint pk_SubID primary key(SubjectNo)

    exec sp_configure 'show advanced option',1

    新建数据库:

    ------给课程名称subjectName增添非空约束;-----
    -----with nocheck:已经存在数据不经过check约束-------
    alter table subject with nocheck
    add constraint ck_subName check(SubjectName is not null)

    go

        create database test(数据库文件名)

    -----学时务必超越0-----
    alter table subject with nocheck
    add constraint ck_ClassHour check(ClassHour > 0)

    reconfigure

        on

    -----与Grade年级表增多主外键约束----
    alter table subject with nocheck
    add constraint fk_GradeID foreign key(GradeID)
    references Grade(GradeID)

    go

        (

    ----------给result战绩表增多约束------------

    exec sp_configure 'xp_cmdshell',1

        name=test_data(主数据文件),

    -------增添多少个约束---------
    alter table Result
    add
    constraint pk_No_subID_date primary key(StudentNo,SubjectNo,ExamDate),
    constraint df_examdate default(getdate()) for ExamDate,
    constraint ck_StudentResult check(StudentResult between 0 and 100),
    constraint fk_StuNo foreign key(StudentNo) references Student(StudentNo),
    constraint fk_subNo foreign key(SubjectNo) references Subject(SubjectNo)

    go

        filename = 'D:ProgramFilesSQLdatatest_data.mdf',

    --删除多个约束--
    alter table Result
    drop constraint pk_No_subID_date,fk_subNo,fk_StuNo,ck_StudentResult,df_examdate

    reconfigure

        size=6(发轫化大小),

    --------更换列的数据类型----------
    alter table Result
    alter column StudentResult int

    go

        maxsize=12,

    exec xp_cmdshell 'mkdir D:project'

        filegrowth(增长率)=10%

     

        )

        log on

        (

        name=test_log(日志文件),

        filename='D:ProgramFilesSQLdatatest_log.ldf',

        size=1,

        maxsize=8,

        filegrowth=10%

        )

    创建表:

      create table 教师表

      (

      教师编号 int identity(1,1) primary key,

      教授姓名 varchar(20) not null,

      教授年龄 int,

      教授工资 money,

      奖金 money,

      总收入 money,

      合营学校 varchar

      )

      说明:

        identity:表示自增进,常常为ID赋值

        primary key:主键

        not null:不为空

      注意:每种字段后边的逗号别忘了

    查询表:

        select * from 教师表

        select 奖金,总收入 from 教师表

    删除表:

        use test--切换来该表所在的数据库下,如果已经在,就毫无切换

        drop table 体育地方表--删除全体表

    剔除表,但不删除表结构,只清空数据;

        Truncate table 教师表

    重命名表:

        exec sp_rename 教师表,教师表1

    增加产量字段:

        alter table 教师表

        add Email varchar(60) default ''

    修改字段:

        alter table 教师表

        alter column 教授薪俸 int

    删除字段:

        alter table 教师表

        drop column 家庭住址

    增加产量多少:

        insert into 教师表(教授年龄,教职名称,助教薪金,课程)

        values(19,'微微',100000,'java')

    查询数据:

        select * from 教授表 where 教授薪俸<10000

     

        select * from 助教表 where 教师薪俸 in(5555,6666,9999)

        select * from 教师表 where 姓名  not in(select 班主任 from 课程表)

        select 姓名,教授薪水 奖金 as 营业收入 from 教授表

     

        select * from 课程表 where 同盟学院 like '%马%'

        select * from 课程表 where 合营学校 like '黑%'

     

         select top 4 * from 课程表

        select top 20 percent * from 教师表

     

        select * from 课程表1 intersec select * from 课程表2   集合交

     

        select * from 教师表,课程表1 where 教师表.姓名=课程表1.班主任

        select * from 教师表,课程表1 where 姓名=班主任     去后缀

        排序:

            select * from 教师表 order by 年龄 --暗中认可升序,倒序desc

            select * from 教授表 order by 年龄,教师薪金

        去重:

            select distinct 姓名 from 教师表

        总计求和:

            select COUNT(*) as 行数 from 教师表

            select COUNT(姓名) from 教师表

        平均:

            select avg(助教薪酬) from 教授表

        最大和纤维:

            select max(教授薪酬) from 教授表

    创新数据:

        update 教授表 set 教授年龄=28,讲师薪金=7777 where 助教编号=4

        update 教授表 set 姓名='水旦中学之' 姓名

    除去数据:

        delete from 教授表 where 助教编号=7

     

    约束:

    1、unique:独一约束,一个表能够有多个约束,但primary 约束只有一个

     
    

    2、Primary key:约束独一标记数据库中的每条记下,主键必须含有独一值,不能包蕴null值,有且只有一个主键。

     
    

    3、Foreign key:七个表的约束

     
    

    4、check 约束:如若对单个列定义check约束,那么该列值运维特定的值。

                      假诺对三个表定义check约束,那么此约束会在一定的列中对值          实行界定。

    5、default:默认值

    alter table userIofo

    add constraint PK_userId primary key(userId),

        constraint CK_userPwd check(len(userPwd)>6),

        constraint Ck_Gender check(Gender=0 or Gender=1),

        constraint DF_Gender default(0) for gender,

        constraint CK_Email check(Email like '%@%')

    --[1]外键约束时只顾类型,长度必须与引用的主键列的类别,长度一致

    --[2]外键约束时注意引用表中务须求有主键列

    --[3]exec sp_helpconstraint 表名称

    本文由新葡亰496net发布于网络数据库,转载请注明出处:插入数据,用SQl语句在指定盘符创建文件夹

    关键词: