【SQL server】数据库、数据表的创建

创建数据库

--如果存在就删除
--所有的数据库都存在sys.databases当中
if exists(select * from sys.databases where name = 'DBTEST')drop database DBTEST--创建数据库
else
create database DBTEST
on  --数据文件
(name='DBTEST',--逻辑名称 字符串用单引号filename='D:\DATA\DBTEST.mdf',--物理路径和名称size=5MB,--文件的初始大小filegrowth=2mb--文件增长大小,也可以写百分比
)log on  --日志文件
(name='DBTEST_log',--逻辑名称 字符串用单引号filename='D:\DATA\DBTEST_log.ldf',--物理路径和名称size=5MB,--文件的初始大小filegrowth=2mb--文件增长大小,也可以写百分比
)--创建数据库简写
create database DBTEST1 --数据库的数据文件和日志文件会为默认值

sys.databases路径:系统数据库 -> master -> 视图 -> 系统视图 -> sys.databases

查看前1000行:

if exists(select * from sys.databases where name = 'DBTEST')drop database DBTEST

如果DBTEST数据库存在,那么就删除(drop)掉这个数据库。

创建数据表

--切换数据库
use DBTEST--创建表的基本语法
--create table 表名
--(--)
--判断表是否存在
if exists(select * from sys.objects where name='Department'and type='U')drop table Department--建表(部门、职级、员工)
create table Department --部门表
(--需要的字段--主键,唯一标识,不能重复,identity(1,1):自动增长,初始值,增长的步长DepartmentID int primary key identity(1,1),DepartmenName nvarchar(50) not null, --最多能个存50个字,不能为nullDepartmentRemark text --部门描述
)--Rank是一个关键字,可以使用[ ]括起来create table [Rank] --部门表
(--需要的字段--主键,唯一标识,不能重复,identity(1,1):自动增长,初始值,增长的步长RankID int primary key identity(1,1),RankName nvarchar(50) not null, --最多能个存50个字,不能为nullRankRemark text --部门描述
)--char:定长,char(10),里面可以存储10个字节,存了3个字节,也占用10个字节
--varchar:变长,varchar(10)最多占用10个字节,11个存不进去
--text:长文本
--前面加一个n标识存储的unicode字符,nchar,nvarchar,ntext
--对中文更加友好
--varchar(100):存储100个字母或者50个汉字
--nvarchar(100):存储100个字母或者100个汉字--员工
create table People
(--需要的字段--主键,唯一标识,不能重复,identity(1,1):自动增长,初始值,增长的步长DepartmentId int references Department(DepartmentId) not null, --外键,部门RankId int references [Rank](RankId) not null,--职级,引用外键PeopleID int primary key identity(1,1),PeopleName nvarchar(50) not null, --最多能个存50个字,不能为nullPeopleSex nvarchar(1) default('男') check(PeopleSex='男'or PeopleSex='女'),PeopleBrith smalldatetime not null, --data:年月日,datatime:年月日时分秒,smalldatetime:最近的一段时间的时间,占用空间也会更小PeopleSalary decimal(12,2) check(PeopleSalary>=1000 and PeopleSalary<=1000000)not null,PeoplePhone varchar(20) unique not null,--unique:这个数据是唯一的PeopleAddress nvarchar(300),PeopleAddTime smalldatetime default(getdate())--添加时间
)

数据类型

  • char:定长,char(10),里面可以存储10个字节,存了3个字节,也占用10个字节
  • varchar:变长,varchar(10)最多占用10个字节,11个存不进去
  • text:长文本
  • 前面加一个n标识存储的unicode字符,nchar,nvarchar,ntext
  • 对中文更加友好
  • varchar(100):存储100个字母或者50个汉字
  • nvarchar(100):存储100个字母或者100个汉字
  • data:只包括年月日
  • datetime:包括了年月日时分秒
  • smalldatetime:最近的年月日
  • decimal(12,2):整数占12位,小数2位

check(PeopleSalary>=1000 and PeopleSalary<=1000000),检查PeopleSalary>=1000并且PeopleSalary<=1000000

primary key:主键

references Department(DepartmentId):是指定了一个外键约束,将另一个表中的特定字段(DepartmentId)与本表的某个字段进行关联。

default('男'):不填默认就是男。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/192650.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

操作系统(五)| 文件系统上 结构 存取方式 文件目录 检索

文章目录 1 文件系统概述2 文件的结构与存取方式2.1 磁盘2.2 文件的物理结构2.2.1 连续结构2.2.2 链式结构2.2.3 索引结构 2.3 文件的存取方式 3 文件目录3.1 基本概念3.2 目录结构单级目录结构多级目录结构 3.3 文件目录检索3.3.1 目录检索文件寻址 3.4 文件目录的实现 1 文件…

08-黑马点评项目发布笔记和查看笔记功能的实现

发布笔记 数据模型 tb_blog探店笔记表,包含笔记的标题、文字、图片等 tb_blog探店笔记表对应的实体类 增加用户图标和和用户姓名以及是否被点赞过了的字段,这些字段不属于Blog表只是为了实现在展示笔记的时候同时展示用户的信息 Data EqualsAndHashCode(callSuper false) …

Linux发展历程

<!DOCTYPE html> <html> <head> <meta charset"UTF-8"> <title>Linux历史发展</title> <style> /* CSS样式 */ body { font-family: Arial, sans-serif; margin: 0;…

动手学深度学习——循环神经网络的从零开始实现(原理解释+代码详解)

文章目录 循环神经网络的从零开始实现1. 独热编码2. 初始化模型参数3. 循环神经网络模型4. 预测5. 梯度裁剪6. 训练 循环神经网络的从零开始实现 从头开始基于循环神经网络实现字符级语言模型。 # 读取数据集 %matplotlib inline import math import torchfrom torch import …

某60区块链安全之重入漏洞实战记录

区块链安全 文章目录 区块链安全重入漏洞实战实验目的实验环境实验工具实验原理实验内容 重入漏洞实战 实验目的 学会使用python3的web3模块 学会以太坊重入漏洞分析及利用 实验环境 Ubuntu18.04操作机 实验工具 python3 实验原理 以太坊智能合约的特点之一是能够调用和…

进程概述

文章目录 计算机算机组成因特尔CPU型号摩尔定律衡量CPU的指标指令&#xff08;Instruction)操作系统&#xff08;Operating System&#xff09;虚拟地址空间&#xff08;Virtual Address Space&#xff09;进程(Process/task)进程管理(PCB - 进程控制块)进程控制块&#xff08;…

2023亚太杯数学建模思路 - 案例:异常检测

文章目录 赛题思路一、简介 -- 关于异常检测异常检测监督学习 二、异常检测算法2. 箱线图分析3. 基于距离/密度4. 基于划分思想 建模资料 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 一、简介 – 关于异常…

UE 调整材质UV贴图长宽比例

首先&#xff0c;为什么要先减去0.5呢&#xff0c;因为缩放的贴图中心在0,0原点&#xff0c;以这个点缩放效果是这样&#xff1a; 它缩放的图案不会在正中间&#xff0c;因为是以0,0点进行缩放的 以这个图的箭头去缩放图片的&#xff0c;所以不能使得缩放后的图片放在正中心 那…

开源WIFI继电器之方案介绍

一、实物 1、外观 2、电路板 二、功能说明 输出一路继电器常开信号&#xff0c;最大负载电流10A输入一路开关量检测联网方式2.4G Wi-Fi通信协议MQTT配网方式AIrkiss&#xff0c;SmartConfig设备管理本地Web后台管理&#xff0c;可配置MQTT参数供电AC220V其它一个功能按键&…

java并发编程之基础与原理2

cpu缓存结构剖析 下面说一下概念与作用 CPU缓存即高速缓冲存储器&#xff0c;是位于CPU与主内存间的一种容量较小但速度很高的存储 器。由于CPU的速度远高于主内存&#xff0c;CPU直接从内存中存取数据要等待一定时间周期&#xff0c;Cache中 保存着CPU刚用过或循环使用的一部…

二维码智慧门牌管理系统升级解决方案:高效运营,信息尽在掌握

文章目录 前言一、升级要点二、方案优势三、应用场景四、客户案例 前言 在这个日新月异的时代&#xff0c;二维码智慧门牌管理系统已经成为了各行各业的标配。为了更好地满足用户需求&#xff0c;提升运营效率&#xff0c;我们推出了全新的升级解决方案。这个方案将让你轻松掌…