SQLServer 代码创建数据库_表

/*1.创建数据库的时候需要设置的基本属性:
  数据库名称   逻辑名称  初始大小   文件增长  路径*/
  
  --语法:
 -- create database 数据库名称
 -- on  [primary]--创建数据文件  on是指在那一个文件组上
 -- (
 --   --在Sql中没有字符串的概念,所有字符或者字符串都是字符,包含在‘  ’以内,没有“  ”
    --name=\'逻辑名称_data\',--什么添加,:当这一句不能独立运行,只是一个结构中的某一句组成部分,就需要添加 ,
    --size=初始大小 , --数值为能包含在‘   ’以内
    --Filegrowth=文件增长, --mb //%
    --maxsize=最大容量,
    --filename=\'文件的全路径(目录+文件名+扩展名mdf)\'  --main data file
 -- )
 -- log on  --创建日志文件
 -- (
 --     name=\'逻辑名称_log\',--什么添加,:当这一句不能独立运行,只是一个结构中的某一句组成部分,就需要添加 ,
    --size=初始大小 , --数值不能包含在‘   ’以内
    --Filegrowth=文件增长, --mb //%
    --maxsize=最大容量,
    --filename=\'文件的全路径(目录+文件名+扩展名ldf)\'  --log data file
 -- )
 execute sp_configure  \'show advanced options\',1
 RECONFIGURE 
 execute sp_configure \'xp_cmdshell\',1
 RECONFIGURE
--自动创建文件夹:调用一个存储过程,传入你想创建的文件夹名称
execute xp_cmdshell \'mkdir d:\project\data\sql\'
--数据库的记录保存在master 系统数据库的sysdatabases表中,所以去这个表中进行是否存在的判断
--切换当前数据库
use master
--exsits函数可以判断 ()中的查询有没有返回结果集,如果有返回就是true,否则就是false
 if exists(select * from sysdatabases where name=\'MyBase\' )
 --将当前数据库删除
 drop database MyBase  
--创建数据库MyBase
create database  MyBase
on --primary 
(
 name=MyBase_data,
 size=3mb ,
 filegrowth=10mb,
 maxsize=1000mb, --没有有,就说明不限制增长
 filename=\'d:\project\data\sql\MyBase_data.mdf\' 
),--一个数据库中可以创建多个数据文件和多个日志文件
(
 name=MyBase_data1,
 size=3mb ,
 filegrowth=10mb,
 maxsize=1000mb, --没有有,就说明不限制增长
 filename=\'d:\project\data\sql\MyBase_data1.ndf\' 
)
log on
(
 name=\'MyBase_log\',
-- size=\'1mb \',
--filegrowth=10mb,
----maxsize=1000mb, --没有有,就说明不限制增长
 filename=\'d:\project\data\sql\MyBase_log.ldf\' 
)


--代码创建表
--语法:
--use 当前操作的数据库
--create table 表名
--(
--  列名  数据类型  列的特征(非空 默认值 标识列 主键 外键 唯一键 check约束),
--  列名  数据类型  列的特征(非空 默认值 标识列 主键 外键 唯一键 check约束),
--  ......
--)
--<员工表>:员工Id,身份证号,姓名,性别,入职日期,年龄,地址,手机号,所属部门、Email
use MyBase
--表存储在当前数据库的sysobjects里面
if exists(select * from sysobjects where name=\'Employee\')
 drop table Employee
create table Employee
(
    Id int primary key identity(1,1), --primary key:主键:非空,唯一   identity(1,1:identity(标识种子,标识增量)
    CardId char(18) not null,--not null标记非空,如果没有标记就说明可以为null
    Name nvarchar(50) not null,
    Gender bit not null,
    InTime datetime null,
    Age int not null check(age>0 and age <100),
    [Address] nvarchar(255) default(\'广州\'),  --[Address]将系统关键字当成普通的用户自定义字符串进行处理
    CellPhone char(11),
    DepId int not null,--外键
    Email varchar(50) not null    
)

版权声明:本文为ICE_Inspire原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/ICE_Inspire/p/4489847.html