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 ...
随机推荐
- 生成DLL
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.R ...
- 使用srvany.exe把程序安装成windows服务
srvany.exe介绍 srvany.exe是Microsoft Windows Resource Kits工具集的一个实用的小工具,用于将任何EXE程序作为Windows服务运行.也就是说srva ...
- Git 新项目关联到远程仓库
最近前端学到小有成果,准备写一个新项目放在githup,结果没有提前在仓库创建项目,现在我把写好的项目推送到远程gitHup 1.先初始化本地仓库 Git init : 这样在项目里面都创建了一个隐藏 ...
- ReferenceError与undefined的区别
ReferenceError与undefined的区别 概述 ReferenceError 当尝试引用一个未定义的变量/函数时,就会抛出一个ReferenceError. undefined 当一个变 ...
- vifx.y-emu 和 vifx.y 和 tapx.y
xen 启动虚拟机后,domain0 可以看到虚拟网卡设备,但是有几种显示 tapx.y , vifx.y 或者 vifx.y-emu . 在我的实验里,同样的配置,如 vif = ["ty ...
- UVA 10079 Pizze Cutting
题意:N条直线最多把平面分成几个部分 ans=1+(N+1)*N/2; 直线数量 1 2 3 4 …………n把平面分成的块数 2 4 7 11 1+1 1+1+2 1+1+2+3 1+1+2+3+4 ...
- 小知识:SPI四种模式区别【转】
转自:http://home.eeworld.com.cn/my/space-uid-80086-blogid-119198.html spi四种模式SPI的相位(CPHA)和极性(CPOL)分别可以 ...
- java基础练习 20
import java.util.Scanner; public class Twentieth { /*某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都 ...
- 如何防止Android反编译
转自: http://my.eoe.cn/sandking/archive/19772.html http://www.cnblogs.com/zdz8207/archive/2012/01/28/d ...
- mogilefsd同步速度调优
#查看主从mogadm settings list #一点点调试mogadm settings listmogadm settings set internal_queue_limit 500moga ...