代码创建数据库_表--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    

)

你可能感兴趣的:(sqlserver)