初始SQLServer

创建数据库

  • create database 数据库名

创建表

  1. 选择数据库

    • USE MyDb;
  2. 创建表

    CREATE TABLE t_user
    (
    id INT,
    username VARCHAR(32),
    password VARCHAR(32),
    phone VARCHAR(11)
    )

使用主键约束

方式一:在定义列的同时指定主键

CREATE TABLE t_user
(
id INT primary key,
username VARCHAR(32),
password VARCHAR(32),
phone VARCHAR(11)
)

方式二:在定义完所有列之后,指定主键

CREATE TABLE t_user
(
id INT,
username VARCHAR(32),
password VARCHAR(32),
phone VARCHAR(11),
primary key(id)
)

多字段联合主键

CREATE TABLE t_emp2
(
name VARCHAR(32),
deptId INT,
salary FLOAT,
PRIMARY KEY(name,deptId)
)

外键约束

  1. constraint 外键名 foreign key 字段名 references 主表名(主键名) ,在以后,我们统一将外部关键字叫做外键,外键就是另一张表中的主键

    CREATE TABLE t_dept
    
    (
    deptId INT PRIMARY KEY,
    name VARCHAR(22),
    location VARCHAR(50)
    );
    CREATE TABLE t_emp
    (
    id INT PRIMARY KEY,
    name VARCHAR(22),
    deptId INT,
    CONSTRAINT fk_emp_dept1 FOREIGN KEY(deptId) REFERENCES t_dept(deptId)
    );

添加常用约束

唯一约束

  1. 怎么添加唯一约束;唯一约束可以确保一列或者几列不出现重复值。使用关键词 UNIQUE

    CREATE TABLE t_dept(
    id INT PRIMARY KEY,
    name VARCHAR(22) UNIQUE,
    location VARCHAR(50)
    )

非空约束

  1. 怎么添加非空约束; 关键词: NOT NULL 。

    CREATE TABLE t_dept(
    id INT PRIMARY KEY,
    name VARCHAR(22) NOT NULL,
    location VARCHAR(50)
    )

默认约束

  1. 怎么添加默认约束;默认约束:即给字段一个默认值。关键词: DEFAULT 。

    CREATE TABLE t_emp(
    id INT PRIMARY KEY,
    name VARCHAR(22),
    sex VARCHAR(2) DEFAULT '男'
    )

值自动增加

  1. 怎么设置字段的值自动增加。在数据库应用中,经常需要在每次插入新纪录时,系统自动生成字段的主键值,关键词:IDENTITY(1,1) 表示自动增长,初始值为 1 ,增量为 1

    CREATE TABLE t_tmp
    (
    id int PRIMARY KEY IDENTITY(1,1),
    name VARCHAR(32)
    )

数据的插入,删除,更改

插入

插入完整内容的行

INSERT INTO 表名 VALUES ('1000000006','Toy Land','New York',NULL)

插入选定内容的行

INSERT INTO 表名(cust_id,cust_name,cust_city) VALUES ('1000000006','Toy Land','New York')

删除

删除表中的指定行

DELETE FROM 表名 WHERE cust_id=1000000006

删除表中的所有行

DELETE FROM 表名

更改

更新表中的指定行

UPDATE 表名 SET cust_email = 'max@yahoo.com'  WHERE cust_id = '1000000005'

数据查询

基本SELECT语句

检索数据表中一个字段的内容

  • SELECT 字段名 FROM 表名

检索数据表中多个字段的内容

  • SELECT 字段名1, 字段名2, 字段名3 FROM 表名

检索数据表中所有字段的内容

  • 如果你仅仅是想要第一行的数据或者前几行的数据

  • SELECT * FROM 表名

带限制条件的查询

限制条件

  • 你想知道这一批的书打6折后都是多少钱?你想知道字段 A 和字段 B 加起来是多少?

  • SELECT TOP 行数 字段名 FROM 表名

表达式查询

  • SELECT 包含字段名的表达式 AS 新字段名 FROM 表名

使用Where语句进行检索

检索单范围数据

表 Customers 中找到消费大于 1000 的人
SELECT cust_name, cost FROM Customers WHERE cost > 1000

检索双范围数据

表 Customers 中找到消费在 1000~3000 之间的人
SELECT cust_name, cost FROM Customers WHERE cost BETWEEN 1000 AND 3000

检索不匹配某条件的语句

表 Customers 中找到消费者不在 New York 的人
SELECT cust_name, cust_city FROM Customers WHERE cust_city <> 'New York'

通配符的使用

通配符%的使用模糊匹配数据内容的后半部分

模式匹配是大小写敏感的,% 能匹配多个字符
SELECT 字段名 FROM 表名 WHERE 字段名 LIKE '数据%';

通配符%的使用模糊匹配数据内容的任意部分

SELECT * FROM Customers WHERE cust_email LIKE '%yahoo%'

通配符下划线 _ , 只能匹配一个字符!

SELECT 字段名  FROM 表名 WHERE  字段名 LIKE '数据和_的组合'

使用通配符[]模糊匹配数据内容

  • SELECT 字段名 FROM 表名 WHERE 字段名 LIKE '[数据]'
表 Customers 中,检索到所有 cust_name 以 a 和 t 开头的消费者的所有数据
SELECT * FROM Customers WHERE cust_name LIKE '[at]%'

使用通配符[]和^模糊匹配取反的数据内容

  • 对检索内容进行“取反”。使用符号 ^ 后,我们可以成功的检索到 [] 中没出现的字符
SELECT 字段名  FROM 表名  WHERE  字段名 LIKE '[^数据]'
表 Customers 中,检索到所有 cust_name 不是以 a 和 t 开头的消费者的所有数据
SELECT * FROM Customers WHERE cust_name LIKE '[^at]%'

SQLServer的操作以及一些概念的更多相关文章

  1. 【转载】微软官方提供的Sqlserver数据库操作帮助类SQLHelper类

    在.NET平台中,C#语言一般使用ADO.NET组件来操作Sqlserver数据库,通过ADO.NET组件可以实现连接数据库.查询数据集.执行SQL语句以及关闭数据库连接等操作,为此网上有很多开发者自 ...

  2. Sqlserver日期操作

    Sqlserver日期操作 select GETDATE() as '当前日期', DateName(year,GetDate()) as '年', DateName(month,GetDate()) ...

  3. SQLserver数据库操作帮助类SqlHelper

    1 SqlHelper源码 using System; using System.Data; using System.Xml; using System.Data.SqlClient; using ...

  4. (转)SQLServer分区表操作

    原文地址:https://www.cnblogs.com/libingql/p/4087598.html 1. 分区表简介 分区表在逻辑上是一个表,而物理上是多个表.从用户角度来看,分区表和普通表是一 ...

  5. Apache Maven的入门使用之常用操作以及核心概念介绍(2)

    我们接着上篇文章,来继续介绍Maven中几个核心的概念: POM (Project Object Model) Maven 插件 Maven 生命周期 Maven 依赖管理 Maven 库 POM ( ...

  6. SQLServer数据操作(建库、建表以及数据的增删查改)

              SQLSever数据操作   一.建立数据库:   create database DB ---数据库名称 (          name=data1 --文件名,         ...

  7. C# 连接 SQLServer 及操作

    随笔:连接: // 将tb_User表数据添加到DataGridView中 string sqlconn = "Data Source=localhost;Initial Catalog=d ...

  8. sqlserver 表操作 SQL篇

    数据库知识点 1.数据库操作: 增:insert into 表名 values(值1,值2,值3) 删:delete 列名 from 表名 where 条件 改:update 表名 set =值 wh ...

  9. Spring第二天——IOC注解操作与AOP概念

    大致内容 spring的bean管理(注解实现) AOP原理 log4j介绍 spring整合web项目的演示 一.spring注解实现bean管理 注解: 代码中一些特殊的标记,使用注解也可以完成一 ...

  10. SQLServer数据操作(建库、建表以及数据的增删查改)[转]

    SQLSever数据操作   一.建立数据库:   create database DB ---数据库名称 (          name=data1 --文件名,          filename ...

随机推荐

  1. 使用systemctl管理服务(nginx)

    首先调整好路径信息,修改配置文件vim /usr/lib/systemd/system/nginx.service [Unit]Description=The nginx HTTP and rever ...

  2. 常回家看看之off_by_one

    off_by_one这个漏洞比较特殊,它不像上一期的堆溢出,可以溢出很多字节,它只能溢出一个字节,在栈里面也可以通过这个漏洞修改返回地址什么的,在堆里面我们主要利用它来修改堆块的大小,形成fake_c ...

  3. dpkg和rpm对比及常用命令

    dpkg(Debian Package)和rpm(RPM Package Manager)是两种不同的Linux包管理工具,它们各自在特定的Linux发行版中占据核心地位.两者之间对比如下: 所属发行 ...

  4. Java 对象的揭秘

    前言 作为一个 Java 程序员,我们在开发者最多的操作要属创建对象了.那么你了解对象多少?它是如何创建?如何存储布局以及如何使用的?本文将对 Java 对象进行揭秘,以及讲解如何使用 JOL 查看对 ...

  5. 大厂边缘组VS小厂核心组,要怎么选?

    有问必答 最近有粉丝提问:大厂边缘组VS小厂核心组,怎么选? 这确实是个好问题,读者老爷们可以先问下自己:如果有一份月薪2W在大厂边缘组打螺丝的Offer且不加班,另外还有一份月薪2W5,在小厂核心组 ...

  6. testArticle

    Test Article This is a test article for ArticleSync. Test Edit...... test Edit

  7. 惠普 HP 战66 AMD 4700U 烫手 发烫,使用 Ryzen Controller 温控

    由于战66只有单风扇,动不动就上80-90度. 下载:Ryzen Controller 并安装. Ryzen Controller Team / Ryzen Controller · GitLab 勾 ...

  8. Xcode 配置账号

    Xcode 配置开发者账号 简介:在iOS 开发过程中,要打包到手机上是需要登陆账号和配置对应证书的. 配置账号 打开Xcode -> Preferences -> Accounts -& ...

  9. restful接口返回JSONObject和父类抽象实现类设计,请求头获取sign和支付宝RSA签名验签工具类方法

    restful接口返回JSONObject和父类抽象实现类设计,请求头获取sign和支付宝RSA签名验签工具类方法 1.JSONObject可以通用数据的灵活性,类似Map数据,数据字段不清晰.具体返 ...

  10. 高德的API来查询行政区域查询

    高德的API来查询行政区域查询 1.api接口文档地址 https://lbs.amap.com/api/webservice/guide/api/district GET https://resta ...