Sql中常用的创建表 约束 主外键 增删改查的语句
创建数据库
USE master;
GO
--日记数据库
create database DiaryBase
on
(
name=DiaryBase_Dat,--逻辑名称
FILENAME='c:\DiaryBase.log',
size=10MB,
maxsize=50MB,
FILEGROWTH=5MB
)
log on
(
name=DiaryBase_Log,
FILENAME='c:\DiaryBase.mdf',
size=10MB,
maxsize=50MB,
FILEGROWTH=5MB
)
go
创建表 (包含约束)
--drop table users
create table Users
(
id int identity(1,1) primary key,
username nvarchar(20) unique not null,--唯一约束
userPassword varchar(20) not null,
gender char check (gender ='男' or gender ='女'),--check(这里是一个bool值)
age int ,
check (age>0 and age <100) --检查约束
)
go
--drop table diaryinfo
create table DiaryInfo
(
dId int identity(1,1) primary key,
userId int foreign key references users ( id),--外键
dInfo nvarchar(300) not null,
dCreateTime datetime default (getdate()),--默认约束
dTitle nvarchar(50)
)
go
修改表
--增加和删除列
alter table users add UserAddr nvarchar(30) alter table users drop column useraddr alter table users add UserPhoneNumber nvarchar(40)
--add DF_Users_userPhoneDf constraint
default ('') --修改表的约束
--删除和增加 默认约束
alter table users drop constraint DF__Users__UserPhone__20C1E124
alter table users add constraint DF__Users__UserPhoneNumber
Default('') for UserPhoneNumber
--增加删除 唯一约束(mssm中在索引分组里)
alter table users drop constraint UQ__Users__F3DBC572276EDEB3
alter table users add constraint UQ_users_UserName unique(UserName) --增加和删除 主键约束
alter table Users drop constraint PK__Users__3213E83F24927208
alter table Users add constraint Pk_Users_id primary key(id) --增加和删除 外键约束
alter table DiaryInfo drop constraint FK__DiaryInfo__userI__30F848ED
alter table DiaryInfo add constraint FK_DiaryInfo_userId
foreign key (UserId) references Users(id) --增加和删除 检查约束
alter table Users drop constraint CK__Users__age__2A4B4B5E
alter table Users add constraint CK_Users_age check(age<100 and age>0)
同时增加多条约束
alter table Employees add
constraint FK_Employees_Department foreign key(EmpDepId) references Department(DepId),
constraint CK_Employees_EmpAge check(EmpAge>=0 and EmpAge<=120),
constraint CK_Employees_EmpGender check(EmpGender='男' or EmpGender='女')
查询
select
学生编号=tsid,
tsname as 学生姓名,
tsgender 性别,
婚否='否'--查询的时候直接赋值 ‘否’
from TblStudent
--where 性别='男' 这里性别无效 他只是用来显示的
--distinct关键字,针对已经查询出的结果然后去除重复
select distinct * from TblStudent
--如果top后跟的不是数字,而是一个表达式一定要使用()把表达式括起来。
select top (2*2) * from TblScore order by tMath desc
select top 35 percent * from TblScore order by tMath desc
--1.聚合函数不统计空值
--对于in或者or 查询,如果查询中的条件是连续的几个数字,最好使用>= <=或者between...and不要使用or或者in。提高效率
select * from TblStudent where tsname like '张[a-z0-9]妹'
--通配符放到[]中就转义了就不认为是通配符了。【】是系统默认的转移符
select * from TblStudent where tsname like '%[%]%'
查出

当要搜索名字有 有[或者]字符的
select * from TblStudent where tsname like '%[]]%'
这样查不到,这里需要我们使用自定义转移符 ESCAPE
select * from TblStudent where tsname like '%/[%' ESCAPE '/'
Sql中常用的创建表 约束 主外键 增删改查的语句的更多相关文章
- Django框架表关系外键-多对多外键(增删改查)-正反向的概率-多表查询(子查询与联表查询)
目录 一:表关系外键 1.提前创建表关系 2.目前只剩 书籍表和 书籍作者表没创建信息. 3.增 4.删 5.修改 二:多对多外键增删改查 1.给书籍绑定作者 2.删 3.修改 4.清空 三:正反向的 ...
- SQL server 创建 修改表格 及表格基本增删改查 及 高级查询 及 (数学、字符串、日期时间)函数[转]
SQL server 创建 修改表格 及表格基本增删改查 及 高级查询 及 (数学.字符串.日期时间)函数 --创建表格 create table aa ( UserName varchar(50 ...
- 在PowerDesigner中设计物理模型1——表和主外键
原文:在PowerDesigner中设计物理模型1--表和主外键 在PD中建立物理模型由以下几种办法: 直接新建物理模型. 设计好概念模型,然后由概念模型生成物理模型. 设计好逻辑模型,然后由逻辑模型 ...
- 第二百七十七节,MySQL数据库-数据表、以及列的增删改查
MySQL数据库-数据表.以及列的增删改查 1.创建一个表 CREATE(创建) TABLE(表) ENGINE(引擎) ENGINE=INNODB(引擎)还有很多类引擎,这里只是简单的提一下INNO ...
- Django 06 Django模型基础1(ORM简介、数据库连接配置、模型的创建与映射、数据的增删改查)
Django 06 Django模型基础1(ORM简介.数据库连接配置.模型的创建与映射.数据的增删改查) 一.ORM系统 #django模型映射关系 #模型类-----数据表 #类属性-----表字 ...
- SQL SERVER中获取表间主外键关系
sql server 2008中的主外键关系获取方式: 转自:http://www.cnblogs.com/ke10/archive/2012/06/11/2544655.html SELECT OB ...
- 在PowerDesigner中设计物理模型1——表和主外键(转)
出处:http://www.cnblogs.com/studyzy/archive/2009/12/15/1624899.html 在PD中建立物理模型由以下几种办法: 直接新建物理模型. 设计好概念 ...
- day94:flask:Jinjia2模板引擎&flask中的CSRF攻击&Flask-SQLAlchemy的创建模型类和基本的增删改查
目录 1.Jinjia2模板引擎 1.Jinjia2加载模板并传递数据到模板中 2.Jinjia2的模板语句 3.模板中特有的变量和函数 4.模板中内置的过滤器 5.自定义过滤器 6.模板继承 2.在 ...
- SpringBoot+MyBatis中自动根据@Table注解和@Column注解生成增删改查逻辑
习惯使用jpa操作对象的方式,现在用mybatis有点不习惯. 其实是懒得写SQL,增删改查那么简单的事情你帮我做了呗,mybatis:NO. 没办法,自己搞喽! 这里主要是实现了通过代码自动生成my ...
随机推荐
- [LA_3938]最大连续动态和
Sample Input 3 1 1 2 3 1 1 Sample Output Case 1: 1 1 线段树 L,R表示该区间的左右端点,sum表示该区间值的总和 l,r表示该区间连续的最大和的左 ...
- 转 linux下cat命令详解
linux下cat命令详解 http://www.cnblogs.com/perfy/archive/2012/07/23/2605550.html 简略版: cat主要有三大功能:1.一次显示整个文 ...
- Linux之epoll详细解析实现
/* * fs/eventpoll.c (Efficient event retrieval implementation) * Copyright (C) 2001,...,2009 Davide ...
- hdu 5150(水题)
Sum Sum Sum Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- 树莓派3b入门教程
原文地址:传送门 这篇教程将带您一起玩转树莓派3(Raspberry Pi 3).和普通PC一样,拿到新设备第一件事就是要给它安装一个操作系统,并做一些初始化的操作.比PC简单的是,树莓派是一个固定配 ...
- codeforces-526B
题目连接:http://codeforces.com/contest/526/problem/B B. Om Nom and Dark Park time limit per test 1 secon ...
- 洛谷 P1506 拯救oibh总部【DFS/Flood Fill】
题目背景 oibh总部突然被水淹没了!现在需要你的救援…… 题目描述 oibh被突来的洪水淹没了>.<还好oibh总部有在某些重要的地方起一些围墙,用号表示,而一个封闭的号区域洪水是进不去 ...
- 【高精度】高精度数除以低精度数I
问题 G: [高精度]高精度数除以低精度数I 时间限制: 1 Sec 内存限制: 512 MB提交: 173 解决: 71[提交] [状态] [讨论版] [命题人:] 题目描述 修罗王聚集了庞大的 ...
- 【OpenJudge3531】【背包DP】【膜法交配律】判断整除
判断整除 总时间限制: 1000ms 内存限制: 65536kB [描述] 一个给定的正整数序列,在每个数之前都插入+号或-号后计算它们的和.比如序列:1.2.4共有8种可能的序列:(+1) + (+ ...
- MS SQL数据批量备份还原(适用于MS SQL 2005+)
原文:MS SQL数据批量备份还原(适用于MS SQL 2005+) 我们知道通过Sql代理,可以实现数据库的定时备份功能:当数据库里的数据库很多时,备份一个数据库需要建立对应的定时作业,相对来说比较 ...