sqlserver数据库 提纲
sqlserver数据库
一、体系结构
文件--服务--界面
文件---.maf .ldf .ndf
服务--MSSqlserver,别名(实例名)
界面--宋庆龄serve如何windouws身份验证,如何从windows身份严恒变为sqlserver验证
二、 创建
建库、改库、删除 create database alter database drop database
建表、改表、删表 create table alter table drop table
1 库:文件位置、初始大小、增长方式、次数据文件
表:列的类型
int,smallint,bigint
float ,real decimal numeric
bit
char, varchar,text
binary image
datetime smalldatetime
2 约束:
主键: 建立?primary key
特点: 唯一、不空、不重、排序、组合主键
外键:主表与从表。外键建在从表上。用主表约束从表
方式:2种 referrnces(列名)
级联更新与级联删除?设计 里面
非空:必须要填 。空与空字符串不一样。 not null
自增长: 类型 : 整理。起始值和步长。 identity
方法: 列的属性
任何视图向自增列中添加数据的行为都是错误的。
check:检查 check(表达式) 对填入的数据做进一步的规则检查
方法: 列上右击,选择check约束
唯一约束:unique。内容不能重,可以为空。一个表中可以有多个唯一约束
方法: 右击列 选择索引/键
默认值: 如果这一列不填内容,将用默认值填充 default
3 操作
1 、 sql语句
增 insert into 表名【(列,列,列··)】values (值,值,值)
删 delete from 表名 【where 条件】
改 update 表名 set 列=值,列=值 【where 条件】
查
简单查询 select top n *|列 from 表
投影
select 列名,列名·· from表
排序
order by 列 asc|desc,列 asc|desc··
筛选
where 子句
1.等值于不等值。where 列=值。 = != <> < >= <=
2.范围
where between··and··
where 列 in(值,值,值)
3多条件查询
and or
where 条件1 and 条件2 or 条件3
4 模糊查询
like % _ [4,5,6]
分组(count(),max(),min()avg(),sum()五个统计函数)
group by 列 having 条件(带统计函数)
注意:一旦使用 分组 select 后面只能跟两样东西: 1 groupby 后面的列名 2 统计函数
注意; 一般来说 我们使用分组的目的是为了统计。
复杂查询
连接:吧两个表 横向接起来
原理: 先求笛卡尔积,再根据两个表的相关列进行筛选
语法:
1. select * from 表1,表2···表n where 连接的条件
2. select 8 from 表1 join 表2 on 连接的条件 join 表3 on 连接条件
3 ,左联 left 右连 right 全连 full
联合 原理:求并集
union
吧2个查询用union连起来 ,要求2个查询的列 要一致。
嵌套(子查询)
在父查询里再包括子查询
原理: 分层查询
它的分方法:等量代换。
sql 函数
1.数学类: ceiling(),floor() round()
2.时间类 :year() month() day () getdate() datediff() datepart() dateadd()
3字符串:len() left() right() upper() lower()
4.转换函数cast(xxx as 类型)
四、 高级的内容:
索引
簇索引 ,非簇索引。
优势: 快 劣势 : 改
语法:create index···on 表
手动建索引; 与建 唯一约束相似
视图
视图就是一段查询语句的查询结果
视图本身并不装有数据,视图的结果是从相关的表中查出来的。
视图可以从表或其他的视图中建立起来。
视图的优势:查询方便
劣势: 增删改 不方便
语法: freate view··
手动: 表下方 视图 新建
存储过程
一段可能带有一定程序逻辑的sql语句。
它里面可以包含复杂的程序逻辑。
语法: 创建:create proc 存储过程名 @参数···as
调用:存储过程名 参数
触发器
也是一段带有逻辑的sql语句。
它不需用代码去调用,当相应的表执行相关操作时,会自动触发触发器的程序。
语法: create trigger···
事物
一段完整的工作,需要一次完整执行。
四个特点:ACID。 原子性,一致性,隔离性,持久性
语法 begin tran ---开始事物
rollback ----回滚事物
commit----提交事物
sqlserver数据库 提纲的更多相关文章
- PowerDesigner从SqlServer数据库中导入实体模型
PowerDesigner从SqlServer数据库中导入实体模型 时间 2013-06-28 10:26:34 CSDN博客 原文 http://blog.csdn.net/sxycxwb/art ...
- 批量解密SQLSERVER数据库中的各种对象的工具dbForge SQL Decryptor
批量解密SQLSERVER数据库中的各种对象的工具dbForge SQL Decryptor2.1.11 之前写过一篇文章,使用redgate公司的SQL PROMPT工具,但是不太方便 SQLPRO ...
- JAVA使用JDBC技术操作SqlServer数据库执行存储过程
Java使用JDBC技术操作SqlServer数据库执行存储过程: 1.新建SQLSERVER数据库:java_conn_test 2.新建表:tb_User 3.分别新建三个存储过程: 1>带 ...
- SQLServer数据库监控代码
SQLServer数据库监控代码: creation_time, total_worker_time, last_worker_time, max_worker_time, min_worker_ti ...
- SQLServer数据库转换成MySQL数据库
由于工作需要,系统原先的SQLServer数据库要转换成MYSQL数据库,所以这两天就一直在查阅这方面的资料.最开始,我尝试从SQLServer中导出SQL文件,然后导入到MYSQL数据库中,发现报错 ...
- ASP.net分别连接SQLserver数据库与连接Access数据库精英版
-------------------------连接access2003 字符串------------------------- Provider=Microsoft.Jet.OLEDB.4.0; ...
- (转)对SQLSERVER数据库事务日志的疑问
本文转载自桦仔的博客http://www.cnblogs.com/lyhabc/archive/2013/06/10/3130856.html 对SQLSERVER数据库事务日志的疑问 摸不透SQLS ...
- 将DBF文件导入Sqlserver数据库
项目中的问题:用户选择N个dbf文件导入sql2005数据库,由于每年dbf表结构都在变化,所以在sql2005中根本就不存在,需要每年根据dbf的结构自动建表.(文章来自http://blog.cs ...
- 采用Hibernate框架的研发平台如何能够真正兼容Oracle和sqlServer数据库
都说Hibernate框架的使用可以很容易的让你的研发平台支持多种不同类型的数据库,但实践表明,这里的“容易”,是相对的. 想让研发平台支持多种数据库,并不是一件简单的事,也可以这么说:并不是只要使用 ...
随机推荐
- js混淆 反混淆 在线
js反混淆地址:http://www.bm8.com.cn/jsConfusion/ 在线javascript 混淆http://www.moralsoft.com/jso-online/hdojso ...
- poj 1664 放苹果_整数拆分
题意:略 用手机敲的代码真是泪流满面,终于过了 #include<iostream> using namespace std; int dp[110][110]; void solve() ...
- 命令行运行命令时报错You don't have write permissions for the /Library/***
这是由于要运行这些操作时必须有管理员的权限(比方更新软件),比方更新cocoapods时报错 soindy:SmartThermo soindy$ gem install cocoapods Fetc ...
- linux系统关机与重新启动命令
在linux下关机和重新启动系统有shutdown.halt.reboot.init,对于他们来说他们的内部工作过程是不同样的. 1.shutdown命令 使用它能够安全地关闭系统.然而在关闭系统时. ...
- 【Android】Android实现截取当前屏幕图片并保存至SDCard
功能 1. 实现截取当前屏幕的功能. 2. 把截取的图片保存到SDCard中的某个目录文件夹下面. Java代码 package com.app.test01; import java.io.File ...
- 密码算法详解——DES
0 DES简介 在20世纪60年代后期,IBM公司成立了一个由Horst Feistel负责的计算机密码学研究项目.1971年设计出密码算法LUCIFER后,该项目宣告结束.LUCIFER被卖给了伦敦 ...
- 后台特殊字符处理,ajax
Dictionary<string, string> d = new Dictionary<string, string>(); d.Add("price" ...
- L9-1-安装Apache
一.安装Apache服务器: 安装apr [root@OCP soft]# tar -zxf apr-1.5.1.tar.gz [root@OCP apr-1.5.1]# ./configure -- ...
- size对齐
写了很多程序,在很多地方都要用到内存长度对齐,比如文件的大小,pe文件内存的对齐等等. 下面记下两种简单的方法,觉得没啥大用处. #include <IOSTREAM> #include ...
- .Net之托管堆资源分配
托管堆分配资源: 一:进程初始化是,CLR要保留一块联系的地址空间,这个地址空间最初并没有对应的物理存储空间.这个地址空间就是托管堆.托管堆还维护着一个指针,我把它称为NextObjPtr.它指向下个 ...