sql基础――mssql2005-亲爱精诚、养天地正气,法古今完人-iteye技术网站
2011年08月01日
字符函数:
CHARINDEX
LEN返回字符串的长度
LOWER将字符串转换为小写
UPPER将字符串转换为大写
LTRIM清除字符串左边的空格
RTRIM清除字符串右边的空格
RIGHT从字符串右边返回
REPLACE
STUFF
数值函数:
日期函数:
GETDATE取得当前日期
DATEADD
DATEDIFF
DATENAME
DATEPART
转换函数:
通用函数: 1。什么是数据库设计
是将数据库中的数据对象及这些数据对象的之间的关系,进行规划和机构化的过程。
2.数据设计非常重要
良好的数据库设计应表现为一下几点
1)效率高节省空间
2)便于更近一步的扩展数据完整性(重)
3)使得应用程序开发变得更容易方便数据应用系统开发。
1、需求分析阶段
包括:
1收集信息 2标识对象
3标识每个对象需要存储的详细信息。
4标识对象之间的关系。
2。概要设计阶段
3,详细设计阶段
实体:是指现实世界中有区分其他事务的特征或属性,并与其他实体有联系的对象。
实体关系:
一对一:x中的一个实体最多与y中的一个实体关联,y中的一个实体最多只可与x中的一个实体关联。
一对多:x中的一个实体可以与y中的任意数量的实体关联,y中的实体最多与x中的一个实体关联。
多对一:x中的一个实体最多与y中的一个实体关联,y中的一个实体可以与x中的任意数量的实体关联。
多对多:x中的一个实体可以和y中的任意数量的实体关联,反之亦然。
实体关系图
矩形表示实体集
椭圆形表示属性
菱形表示关系集
直线用来连接属性和实体集,也用来连接实体集和关系集。
规范设计
1.第一范式:每列的原子性:不可再拆分。
2.第二范式:确保表中的每列都和主键相关。
3.第三范式:每列都和主键列直接相关,而不是间接相关。 主数据文件:db.mdf。(主要数据文件存放)
次要数据文件:db.ndf。(可以分批将数据文件保存)
日志文件:db.ldf。(记录什么时间,谁登陆,有些什么样的操作内容。可同日志文件恢复*.mdf)
(如果能算出数据文件有多大,就直接设为多大)
(日志文件会比数据文件大50%)
(文件增长个率。是相对文件初始大小增长的
)
if Exists用来查询结果集有没有,如果有返回真 (if)语句只作用与下一行。
创建登陆帐户
/*---添加windows登陆帐户
---*/
EXEC sp_grantlogin 'windows域名\域帐户'
/*---添加sql登陆帐户
---*/
EXEC sp_grantlogin '帐户名','密码'
创建数据库用户
/*----在stuDB数据库中添加两个帐户
----*/
EXEC sp_grantDBaccess '登陆帐户名','数据库用户' 声明局部变量
DECLARE @name varchar(8)
DECLARE @age int
局部变量赋值
set @name=value
select @name=value
全局变量 @@ERROR 最后一个T-sql错误的错误号 @@IDENTITY 最后一次插入的标识值 @@LANGUAGE 当前使用语言的名称 @@MAX_CONNECTIONS 可以创建的同时连接的最大数目 @@ROWCOUNT 受上一个sql语句影响的行数 @@SERVERNAME 本地服务器的名称 @@SERVICENAME 该计算机的sql服务的名称 @@TIMETICKS 当前计算机没刻度的微妙数 @@TRANSCOUNT 当请连接打开的事务数 @@VERSION sql server的版本信息 WHILE循环语句
while(条件)
begin [BREAK] end
CASE多分支语句
case
when 条件1 Then 结果1(bettween 60 and 69)between介于以知数中的未知数
when 条件2 Then 结果2
when 条件3 Then 结果3
end 什么是事务:
事务是一种机制,一个操作序列,他包含了一组数据库操作命令
1.原子性:事务是完整的操作,事务中的各个元素是不可再分的。
2.一致性:当事务完成时,数据必须处于一致状态。
3.隔离性:事务是独立的,它不应该以任何方式依赖或影响其他事务。
4.持久性:对系统的影响是永久性的,即使修改是系统出现故障,也一直保存。
开始事务:BEGIN TRANSACTION
提交事务:COMMIT TRANSACTION
回滚事务:ROLLBACK TANSACTION
什么是索引:
索引好比字典中的目录页给出的限定的查询范围。
索引可提高数据库的查询性能(过G以上的数据量才有感觉)
1.该列用于频繁搜索
2.该列用与对数据库的排序
3.数据量大
4.数据没有规则
主键索引:系统创建的
聚集索引:按一定的序列排列有规律的索引。非聚集索引:反之亦然。(自定义的)
填充因子:0-100值,表示每页4k中索引所占的半分比。(一般不写好)
唯一聚集非聚集索引名
CREATE [UNIQUE][CLUSTERED|NONCLISTRED]INDEXindex_name
表名列名
ONtable_name(writtenExam)
填充因子
with fillfactor=30
索引缺点:
1.占有磁盘空间。
视图
是一种虚拟表(一组封装的sql语句)
视图通常用来进行一下3种操作(一般我们针对5张表以上我们采用视图)
筛选表中的行。
防止未经许可的用户访问敏感数据。
将多个物理表抽象为一个逻辑数据表
优点:
针对用户:对结果更容易理解,获得数据更容易。
针对开发人员:限制数据检索更容易,维护应用程序更方便。
创建视图有两种方式
1.使用Microsoft SQL Server Management Studio创建视图
2.使用T-SQL语句创建
user sutDB
go
/*检查是否存在*/
if exists(select * from sysobjects where name='view_stuInfo_stumarks')
drop view vies_stuinfo_stuMarks
go
/*创建视图*/
create view view_stuInfo_stuMarks
as
select 姓名=stuName,学号=stuInfo.stuNo,笔试成绩=writtenExam,=labExam,=(writtenExam+labExam)/2
from stuIfo left join stuMarks on StuInfo.stuNo=stuMarks.stuNo
go
/*--查看视图--*/
select * form view_sutInfo_stuMarks 什么是存储过程
它是SQL语句和控制流语句的预编译集合,
存储过程包含逻辑控制语句和数据操作语句,包括接受参数,输出参数,返回单个或多个结果集及返回值。
存储过程在服务器上预编译,所以它比sql语句执行要快。
存储过程有以下优点:
1.允许模块化设计。
2.允许更快的执行。
3.减少网络流量。
4.可作为安全机制使用。
存储过程分为
系统存储过程:
用户自定义的存储过程:
常用的系统存储过程 Sp_databases 列出服务器上的所有数据库 Sp_helpdb 报告有关指令所有数据库信息 Sp_renamedb 更改数据库名称 Sp_tables 当前数据库可查询对象的列表 Sp_columns 查看某个表列的信息 Sp_help 查看摸个表的所有信息 Sp_helpconstraint 查看摸个表的约束 Sp_helpindex 查看某个表的索引 Sp_stored_procedures 列出当前环境下的所有存储过程 Sp_password 添加或修改登录账户的密码 Sp_helptext 查看指定对象的实际文本 Xp_cmdshell:sqlserver2005中完成DOS命令下的一些操作。
发表评论
-
Understand Swap in & mem_map
2012-01-20 08:22 1065Understand Swap in & mem_ma ... -
so库的性能注意事项
2012-01-20 08:22 665so库的性能注意事项 2010年09月07日 一个共享库 ... -
linux 进程编程
2012-01-20 08:21 647linux 进程编程 2010年06 ... -
Linux下文件I/O操作详解
2012-01-20 08:21 542Linux下文件I/O操作详解 2010年12月26日 ... -
linux HoN 运行不流畅解决
2012-01-19 13:34 942linux HoN 运行不流畅解决 2011年02月13日 ... -
我们专业要用到的软件-AutoCAD系统要求,给即将买电脑的亲爱滴童鞋们点参考建议
2012-01-19 13:34 581我们专业要用到的软件-AutoCAD系统要求,给即将买电脑的亲 ... -
新萝卜家园 Ghost XP SP3 电脑城装机专用版 10.5
2012-01-19 13:34 763新萝卜家园 Ghost XP SP3 ... -
Photoshop教程(二):首选项的基本设置
2012-01-19 13:34 580Photoshop教程(二):首选项的基本设置 2011年0 ... -
NIO
2012-01-17 03:24 970NIO 2011年07月27日 1 ... -
as3 xuexi
2012-01-17 03:24 606as3 xuexi 2011年08月20日 AS 调用外 ... -
教你怎么用IPHONE
2012-01-17 03:23 1312教你怎么用IPHONE 2011年04月09日 1. / ... -
回忆初中,回忆四班
2012-01-16 01:58 697回忆初中,回忆四班 2011 ... -
002销售奇书---建材家具就应该这样卖!!
2012-01-16 01:58 586002销售奇书---建材家具就应该这样卖!! 2010年06 ... -
关键讲述亚军背后的故事
2012-01-16 01:58 560关键讲述亚军背后的故 ... -
古代的吴越男人是找不到汉人老婆,甚至很难找到吴越老婆的
2012-01-16 01:57 1558古代的吴越男人是找不 ... -
log4j警告的解决办法-狂奔的蜗牛-iteye技术网站
2012-01-11 01:59 584log4j警告的解决办法-狂奔的蜗牛-iteye技术网站 2 ... -
asp另存为文件名-名称-类型
2012-01-11 01:58 621asp另存为文件名-名称-类型 2011年08月01日 ... -
HTML-4-css
2012-01-11 01:58 558HTML-4-css 2011年08月01日 0301 ... -
如何在GDM中添加Session
2012-01-11 01:58 668如何在GDM中添加Session 2011年08月01日 ...
相关推荐
这是我在iteye网站的技术博客
深入浅出CGlib-打造无入侵的类代理 - llying - ITeye技术网站
博文链接:https://kdisk-sina-com.iteye.com/blog/230775
eclipse开发环境(支持tomcat、maven、jetty、JBoss) - - ITeye技术网站
Spring的JdbcTemplate插入操作返回主键ID的方法 - - ITeye技术网站
java_web开发_高并发处理_-_-_ITeye技术网站.pdf
许多人为WINXP安装sqlserver2000企业版发愁。该补丁解决了此问题。祝大家顺利!
博文链接:https://dayone.iteye.com/blog/195546
NULL 博文链接:https://caohong286.iteye.com/blog/1197198
ice最简单实现 ruby调用ice接口 - Ruby - language - ITeye论坛
2. ... 3. }] 1. { 4. }, 6. } 2. didReceiveRemoteNotification:(NSDictionary *)use
js中escape对应的C#解码函数 - Corrinejtt - ITeye
MSSQL_拆分源文件_2000 博文链接:https://oxidy.iteye.com/blog/243947
javaMD5加密及登录验证(备忘) - Hibernate - Java - ITeye论坛.mhtjavaMD5加密及登录验证(备忘) - Hibernate - Java - ITeye论坛.mhtjavaMD5加密及登录验证(备忘
NULL 博文链接:https://jlwangjinshuang-163-com.iteye.com/blog/723614
NULL 博文链接:https://caohong286.iteye.com/blog/1260817
NULL 博文链接:https://caohong286.iteye.com/blog/1508023
tomcat6使用DBCP和blob出现ClassCastException解决方法
NULL 博文链接:https://caohong286.iteye.com/blog/1493368