ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

SQL Server创建数据库完整代码

2020-01-09 20:56:02  阅读:249  来源: 互联网

标签:varchar Students 数据库 Server SQL table null select


 

1.创建数据库

use master
go

if exists(select * from sysdatabases where name='Test')
begin
    select '该数据库已存在'
    drop database Test        --如果该数据库已经存在,那么就删除它
end
else
begin
    create database Test
    on  primary        --表示属于 primary 文件组
    (
        name='stuDB_data',        -- 主数据文件的逻辑名称
        filename='D:\stuDB_data.mdf',    -- 主数据文件的物理名称
        size=5mb,    --主数据文件的初始大小
        maxsize=100mb,     -- 主数据文件增长的最大值
        filegrowth=15%        --主数据文件的增长率
    )
    log on
    (
        name='stuDB_log',        -- 日志文件的逻辑名称
        filename='D:\stuDB_log.ldf',    -- 日志文件的物理名称
        size=2mb,            --日志文件的初始大小
        maxsize=20mb,        --日志文件增长的最大值
        filegrowth=1mb        --日志文件的增长率
    )
end

  接下来是创建数据表的 SQL 语句:

use Test    --表示设置为在该数据库(Test)执行下面的SQL语句
go

  可以先执行一下以上语句。

 

 

 或者在这里选择数据库。

 

use Test    --表示设置为在该数据库(Test)执行下面的SQL语句
go

if exists(select * from sysobjects where name='Student')
begin
    select '该表已经存在'
    drop table Student        --删除表
end
else
begin
    create table Student
    (
        S_Id        int        not null    identity(1,1)    primary key,    --设置为主键和自增长列,起始值为1,每次自增1
        S_StuNo        varchar(50)        not null,
        S_Name        varchar(20)        not null,
        S_Sex        varchar(10)        not null,
        S_Height    varchar(10)        null,
        S_BirthDate        varchar(30)        null
    )
end

--添加约束                        
alter table Student add constraint 
UQ_S_StuNo    --约束名
unique        --约束类型(唯一约束)
(S_StuNo)    --列名

--删除约束
alter table Student drop constraint
UQ_S_StuNo    --约束名

  

SQL语句创建表变量:

declare @Score table
(
    Id        int        not null,
    Name    varchar(50)  null
) 

insert into @Score
select '1','刘邦' union
select '2','项羽'

select * from @Score

  

SQL语句创建临时表:

-- ## 表示全局临时表
create table ##temp
(
    Id        int        not null,
    Name    varchar(10)        null
)

-- # 表示局部临时表
create table #temp
(
    Id        int        not null,
    Name    varchar(10)        null
)

  

SQL 语句创建表并设置主外键关系:

if exists(select * from sysObjects where name='Course')
begin
    select '该表已经存在'
    drop table Course
end
else
begin
    create table Course
    (
      --列名    字段类型  是否为空   标识外键列(外键列名)         关联表的表名(关联的字段名)
         Stu_Id        int        null    foreign key(Stu_Id) references Student(S_Id),
         C_Id        int        not null    identity(1,1)    Primary key,
         C_Name        varchar(100)    not null
     )
end

  

2.完整SQL Server代码

--创建数据表

use stu_db    --表示设置为在该数据库(Test)执行下面的SQL语句
go

if exists(select * from sysobjects where name='Students')
begin
    select '该表已经存在'
    drop table Students        --删除表
end
else
begin
    create table Students
    (
        stuID            int            not null    identity(1,1)    primary key,    --设置为主键和自增长列,起始值为1,每次自增1
        stuNumber  nvarchar(10)    not null,
        stuClass  nvarchar(50)    not null,
        stuName       nvarchar(20)        null,
        stuSex      nvarchar(20)    not null,
        stuAge      nvarchar(20)    not null,
    )
end

select *from Students


INSERT INTO Students VALUES ('001','软件01', '小明','男','18')
INSERT INTO Students VALUES ('002','软件01', '小李','男','18')
INSERT INTO Students VALUES ('003','软件06', '小丽','女','25')
INSERT INTO Students VALUES ('004','软件01', '小米','男','30')

select *from Students where stuNumber='008'



--添加

INSERT INTO [stu_db].[dbo].[Students]([stuNumber],[stuClass],[stuName],[stuSex],[stuAge])VALUES('008','计算机111','小牧','男','20')

--更改

UPDATE [stu_db].[dbo].[Students] SET [stuNumber] = '',[stuClass] = '',[stuName] = '',[stuSex] = '',[stuAge] = '' WHERE stuNumber='' AND stuClass=''

--删除
DELETE FROM [stu_db].[dbo].[Students]WHERE stuNumber='' AND stuClass=''


--查询
SELECT *FROM [stu_db].[dbo].[Students]WHERE stuNumber='' AND stuClass=''

  

标签:varchar,Students,数据库,Server,SQL,table,null,select
来源: https://www.cnblogs.com/domefy/p/12173464.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有