创建数据库

  1. USE master;
  2. GO
  3. --日记数据库
  4. create database DiaryBase
  5. on
  6. (
  7. name=DiaryBase_Dat,--逻辑名称
  8. FILENAME='c:\DiaryBase.log',
  9. size=10MB,
  10. maxsize=50MB,
  11. FILEGROWTH=5MB
  12. )
  13. log on
  14. (
  15. name=DiaryBase_Log,
  16. FILENAME='c:\DiaryBase.mdf',
  17. size=10MB,
  18. maxsize=50MB,
  19. FILEGROWTH=5MB
  20. )
  21. go

创建表 (包含约束)

  1. --drop table users
  2. create table Users
  3. (
  4. id int identity(1,1) primary key,
  5. username nvarchar(20) unique not null,--唯一约束
  6. userPassword varchar(20) not null,
  7. gender char check (gender ='男' or gender ='女'),--check(这里是一个bool值)
  8. age int ,
  9. check (age>0 and age <100) --检查约束
  10. )
  11. go
  12. --drop table diaryinfo
  13. create table DiaryInfo
  14. (
  15. dId int identity(1,1) primary key,
  16. userId int foreign key references users ( id),--外键
  17. dInfo nvarchar(300) not null,
  18. dCreateTime datetime default (getdate()),--默认约束
  19. dTitle nvarchar(50)
  20. )
  21. go

修改表

  1. --增加和删除列
  2. alter table users add UserAddr nvarchar(30)
  3.  
  4. alter table users drop column useraddr
  5.  
  6. alter table users add UserPhoneNumber nvarchar(40)
  7. --add DF_Users_userPhoneDf constraint
  8. default ('')
  9.  
  10. --修改表的约束
  11. --删除和增加 默认约束
  12. alter table users drop constraint DF__Users__UserPhone__20C1E124
  13. alter table users add constraint DF__Users__UserPhoneNumber
  14. Default('') for UserPhoneNumber
  15. --增加删除 唯一约束(mssm中在索引分组里)
  16. alter table users drop constraint UQ__Users__F3DBC572276EDEB3
  17. alter table users add constraint UQ_users_UserName unique(UserName)
  18.  
  19. --增加和删除 主键约束
  20. alter table Users drop constraint PK__Users__3213E83F24927208
  21. alter table Users add constraint Pk_Users_id primary key(id)
  22.  
  23. --增加和删除 外键约束
  24. alter table DiaryInfo drop constraint FK__DiaryInfo__userI__30F848ED
  25. alter table DiaryInfo add constraint FK_DiaryInfo_userId
  26. foreign key (UserId) references Users(id)
  27.  
  28. --增加和删除 检查约束
  29. alter table Users drop constraint CK__Users__age__2A4B4B5E
  30. alter table Users add constraint CK_Users_age check(age<100 and age>0)

同时增加多条约束

  1. alter table Employees add
  2. constraint FK_Employees_Department foreign key(EmpDepId) references Department(DepId),
  3. constraint CK_Employees_EmpAge check(EmpAge>=0 and EmpAge<=120),
  4. 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中常用的创建表 约束 主外键 增删改查的语句的更多相关文章

  1. Django框架表关系外键-多对多外键(增删改查)-正反向的概率-多表查询(子查询与联表查询)

    目录 一:表关系外键 1.提前创建表关系 2.目前只剩 书籍表和 书籍作者表没创建信息. 3.增 4.删 5.修改 二:多对多外键增删改查 1.给书籍绑定作者 2.删 3.修改 4.清空 三:正反向的 ...

  2. SQL server 创建 修改表格 及表格基本增删改查 及 高级查询 及 (数学、字符串、日期时间)函数[转]

    SQL server 创建 修改表格 及表格基本增删改查 及 高级查询 及 (数学.字符串.日期时间)函数   --创建表格 create table aa ( UserName varchar(50 ...

  3. 在PowerDesigner中设计物理模型1——表和主外键

    原文:在PowerDesigner中设计物理模型1--表和主外键 在PD中建立物理模型由以下几种办法: 直接新建物理模型. 设计好概念模型,然后由概念模型生成物理模型. 设计好逻辑模型,然后由逻辑模型 ...

  4. 第二百七十七节,MySQL数据库-数据表、以及列的增删改查

    MySQL数据库-数据表.以及列的增删改查 1.创建一个表 CREATE(创建) TABLE(表) ENGINE(引擎) ENGINE=INNODB(引擎)还有很多类引擎,这里只是简单的提一下INNO ...

  5. Django 06 Django模型基础1(ORM简介、数据库连接配置、模型的创建与映射、数据的增删改查)

    Django 06 Django模型基础1(ORM简介.数据库连接配置.模型的创建与映射.数据的增删改查) 一.ORM系统 #django模型映射关系 #模型类-----数据表 #类属性-----表字 ...

  6. SQL SERVER中获取表间主外键关系

    sql server 2008中的主外键关系获取方式: 转自:http://www.cnblogs.com/ke10/archive/2012/06/11/2544655.html SELECT OB ...

  7. 在PowerDesigner中设计物理模型1——表和主外键(转)

    出处:http://www.cnblogs.com/studyzy/archive/2009/12/15/1624899.html 在PD中建立物理模型由以下几种办法: 直接新建物理模型. 设计好概念 ...

  8. day94:flask:Jinjia2模板引擎&flask中的CSRF攻击&Flask-SQLAlchemy的创建模型类和基本的增删改查

    目录 1.Jinjia2模板引擎 1.Jinjia2加载模板并传递数据到模板中 2.Jinjia2的模板语句 3.模板中特有的变量和函数 4.模板中内置的过滤器 5.自定义过滤器 6.模板继承 2.在 ...

  9. SpringBoot+MyBatis中自动根据@Table注解和@Column注解生成增删改查逻辑

    习惯使用jpa操作对象的方式,现在用mybatis有点不习惯. 其实是懒得写SQL,增删改查那么简单的事情你帮我做了呗,mybatis:NO. 没办法,自己搞喽! 这里主要是实现了通过代码自动生成my ...

随机推荐

  1. angularjs的service

    1.首先我们创建一个模块 var module = angular.module( "my.new.module", [] ); 2.然后写具体的service 可以看到它是一个很 ...

  2. (1)IIS

    1.选择控制面板-程序和功能 2.点击左侧“打开或关闭Windows功能 3.internet信息服务下的文件夹全勾 4.安装完成后,选择管理工具 5.选择IIS管理器 6.显示如下

  3. SQL DISTINCT 用法(去重)

    现在以下数据 查有出现的TeacherId SELECT TeacherID FROM Student 结果 有重复的ID出现 确实查法: SELECT TeacherID FROM Student ...

  4. COCOS2d 标准 android.MK

    LOCAL_PATH := $(call my-dir) include$(CLEAR_VARS) LOCAL_MODULE := game_shared PP_CPPFLAGS := -frtti ...

  5. Bean的实例化--静态工厂

    1,创建实体类User package com.songyan.demo1; /** * 要创建的对象类 * @author sy * */ public class User { private S ...

  6. Word中设置所有西文字体为新罗马

    如图所示,不用一个一个设置,在字体里直接设置细纹字体:Times New Roman ,中文字体不用管.

  7. [转] IplImage, CvMat, Mat 的关系

    拼装小火车 的原文 IplImage, CvMat, Mat 的关系 opencv中常见的 与图像操作有关的数据容器有Mat,cvMat和IplImage,这三种类型都可以代表和显示图像,但是,Mat ...

  8. JMeter之Ramp-up Period(in seconds)说明(可同时并发)(转载)

    Ramp-up Period(in seconds) [1]决定多长时间启动所有线程.如果使用10个线程,ramp-up period是100秒,那么JMeter用100秒使所有10个线程启动并运行. ...

  9. JAVA常见算法题(十五)

    package com.xiaowu.demo; /** * * 输入三个整数x,y,z,请把这三个数由小到大输出. * * @author WQ * */ public class Demo15 { ...

  10. [Android Traffic] 让android应用在传输网络数据的时候更省电

    到今年6月,我国的手机网民已经达到了3.88亿,超过了电脑终端.相信有智能机的同学都用过手机上网冲浪.但是手机的电量很快被用光了恐怕是每个人都不能忍受的一件事情.而打开数据连接进行网络数据的传输是很耗 ...