sqlserver基础
㈠ 学习sqlserver的条件
不要灰心,不要气馁!学习SQL SERVER不需要什么条件,况且你读过大专,关键是你要掌握好基础,sql靠的是一种思想,但是这种思想是建立在你具有一定sql基础上的,sql语句就那么多,但是演变出来的东西却无穷。
你要专心的去记住一些东西,就哪怕是一句简单的select * from tablename,你也要去分析它,比如:
select的执行顺序:它是先执行from后面的语句,再执行select,而不是select后在from。学东西要用心去学,不要什么都学,要培养出自己的一套思想。再给个复杂的select的语句给你:
select
O.name tablename,
C.name column_1 ,
isnull(X.xtname, isnull(get_xtypename(C.xtype,C.xdbid), T.name)) typename_1 ,
case isnull(X.xtname, isnull(get_xtypename(C.xtype,C.xdbid), T.name)) when 'decimal' then convert (varchar(4) ,C.prec)else convert (varchar(4) ,C.length ) end length_1 ,
case isnull(X.xtname, isnull(get_xtypename(C.xtype,C.xdbid), T.name)) when 'decimal' then convert (varchar(4) , C.scale )end scale_1 ,
case C.status when 8 then 'Y' ELSE 'N' end isnull_1 ,
(
select rtrim(ltrim((str_replace(str_replace( text, "DEFAULT'",'' ) , "'",''))))
FROM syscomments D,sysproceres P
WHERE D.id = C.cdefault AND P.id = D.id
AND P.sequence = 0 AND P.status & 4096 = 4096
)default_1 ,
(select 'PK' from
(
SELECT object_name(id) tabname, index_col( object_name(id) ,indid,1) columnname FROM sysindexes WHERE status & 2048=2048
union ALL
SELECT object_name(id), index_col( object_name(id) ,indid,2) FROM sysindexes WHERE status & 2048=2048
union ALL
SELECT object_name(id), index_col( object_name(id) ,indid,3) FROM sysindexes WHERE status & 2048=2048
union ALL
SELECT object_name(id), index_col( object_name(id) ,indid,4) FROM sysindexes WHERE status & 2048=2048
union ALL
select object_name(id), index_col( object_name(id) ,indid,5) FROM sysindexes WHERE status & 2048=2048
union ALL
SELECT object_name(id), index_col( object_name(id) ,indid,6) FROM sysindexes WHERE status & 2048=2048
) pk
where columnname is not null
and tabname = O.name
and columnname = C.name
)pk_1,
( select 'FK' from (
select a.name as tablename ,b.name as reftabname ,sysreferences.fokey1 fokey from sysreferences
LEFT OUTER join sysobjects a
on sysreferences.tableid = a.id
LEFT OUTER join sysobjects b
on sysreferences.reftabid = b.id
union all
select a.name , b.name ,sysreferences.fokey2 from sysreferences
LEFT OUTER join sysobjects a
on sysreferences.tableid = a.id
LEFT OUTER join sysobjects b
on sysreferences.reftabid = b.id
union all
select a.name , b.name ,sysreferences.fokey3 from sysreferences
LEFT OUTER join sysobjects a
on sysreferences.tableid = a.id
LEFT OUTER join sysobjects b
on sysreferences.reftabid = b.id
union all
select a.name , b.name as reftabname ,sysreferences.fokey4 from sysreferences
LEFT OUTER join sysobjects a
on sysreferences.tableid = a.id
LEFT OUTER join sysobjects b
on sysreferences.reftabid = b.id
)fk where fk.tablename= O.name and fokey =C.colid
) fk_1 ,
0 null_1,
0 no_1,
0 count_1
--into tab_struct
FROM syscolumns C, systypes T, sysxtypes X, sysobjects O
WHERE C.usertype *= T.usertype
AND C.xtype *= X.xtid
AND C.id = O.id
AND O.type = 'U'
㈡ SQL server2008基础语法具体怎么多去练习啊
第一步:点击数据库下的“可编程性”,选择“存储过程”,点击鼠标右键,选择“新建存储过程”
第二步:在create PROCEDURE 后 输入存储过程的名字,紧跟着的就是定义存储过程的参数,接下来就可以去编写自己所需要组装的存储过程语句了
第三步: 编译存储过程,在工具栏上按下执行按钮,如果没有错误,就编写成功了。
第四步:调用:在sqlserver的语句查询框中,输入exec 存储过程名 参数,执行就可以了。
基本语法格式如下:中括号带的是可选项
create proc | procere pro_name
[{@参数数据类型} [=默认值] [output],
{@参数数据类型} [=默认值] [output],
....
]
as
begin
SQL_statements
--业务处理
end
㈢ 跪求!!!sql server基础知识大全
创建数据库
if exists(select * from sysdatabases where name ='')
drop database ??
create database ''
[primary]
(
name='', filename='',size=?,filegrowth=?
)
log on
(
name='',filename=''.size=?,filegrowth=?,maxsize=?
)
创建表
create table ''
(
列名 类型 是否为空 自增长 键
)
添加约束
alter 表
add constraint df_, fk_,ck_.....
(foreign key() references list(cloumn))
增删改查
insert into ...
delete table ...
update list xx=xx where xx=xx...
select ...from..
查: 子查询 联表查询 (内联接,外联接,交叉联接)
in , not in , inner jion on , left outer jion on ,right outer jion on
存储过程
create proc proc_stu
@id int
as
select * from stuinfo where stuid=@id
㈣ sqlserver 基础问题
是清空还是把不要这个表了
如果是清空,truncate table book.item
如果是整个删除,drop table book.item
㈤ SQLServer2008基础教程的目录
第1章SQLServer2008概述和安装
1.1为什么选择SQLServer2008
1.2SQLServer的发展
1.3硬件要求
1.3.1CPU
1.3.2内存
1.3.3硬盘空间
1.3.4操作系统要求
1.4示例
1.5安装
1.5.1开始安装
1.5.2选择要安装的功能
1.5.3为实例命名
1.5.4选择服务账户
1.5.5选择身份验证模式
1.5.6确定数据目录的位置
1.5.7创建报表服务数据库
1.5.8配置错误和使用情况报告
1.6安全性
1.6.1服务账户
1.6.2身份验证模式
1.6.3sa登录
1.7小结
第2章SSMS
2.1SSMS概览
2.2SSMS的选项
2.2.1“环境”节点
2.2.2“源代码管理”节点
2.2.3“文本编辑器”节点
2.2.4“查询执行”节点
2.2.5“查询结果”节点
2.3查询编辑器
2.4小结
第3章设计和创建数据库
3.1数据库的定义
3.2SQLServer中的预建数据库
3.2.1master.
3.2.2tempdb
3.2.3mode1
3.2.4mSdb
3.2.5AdventureWorkS/Adventure-WorksDW
3.3选择数据库系统类型
3.3.1OLTP
3.3.2OLAP
3.3.3示例系统类型选择
3.4收集数据
3.5确定要存储在数据库中的信息
3.5.1金融产品
3.5.2客户
3.5.3客户地址
3.5.4股票
3.5.5交易
3.6外部信息和忽略的信息
3.7建立关系
3.7.1使用键
3.7.2创建关系
3.7.3关于外键的更多信息
3.8规范化
3.8.1每一个实体都应该有唯一的标识符
3.8.2只存储与实体直接有关的信息
3.8.3避免重复值或重复列
3.8.4范式
3.8.5非规范化
3.9创建示例数据库
3.9.1在SSMS中创建数据库
3.9.2在SSMS中删除数据库
3.9.3在查询编辑器中创建数据库一
3.10小结
第4章安全和遵从规范
4.1登录名
4.2服务器登录名和数据库用户
4.3角色
4.3.1固定服务器角色
4.3.2数据库角色
4.3.3应用程序角色
4.4架构
4.5在解决方案中进行下去之前
4.6陈述式管理框架
4.7小结
第5章定义表
5.1什么是表
5.2SQLServer数据类型
5.2.1表中的数据类型
5.2.2程序中的数据类型
5.3列不仅仅是简单的数据存储库
5.3.1默认值
5.3.2生成IDENTIIY值
5.3.3NULL值的使用
5‘3.4为什么要定义允许NULL值的列
5.4在SQLServer中存储图像和大型文本
5.5在SSMSq户创建表
5.6通过查询编辑器创建表
5.7创建表:使用模板
5.8创建模板和修改模板
5.9ALTERTABLE语句
5.10定义其余的表
5.11设置主键
5.12创建关系
5.12.1在创建时检查现有数据
5.12.2强制外键约束
5.12.3选择删除/更新规则
5.13通过T-SQL语句建立关系
5.14小结
第6章创建索引和数据库关系图
6.1什么是索引
6.1.1索引类型
6.1.2唯一性
6.2确定是什么创建了好的索引
6.2.1使用低维护列
6.2.2主键和外键
6.2.3找到指定记录
6.2.4使用覆盖索引
6.2.5查找信息范围
6.2.6保持数据的排序
6.3确定是什么导致了坏的索引
6.3.1使用了不合适的列
6.3.2选择了不合适的数据
6.3.3包含了过多的列
6.3.4表中包含的记录过少
6.4针对性能对索引进行审查
6.5创建索引
6.5.1用表设计器创建索引
6.5.2索引和统计信息
6.5.3CREATEINDEX语法
6.5.4在查询编辑器中创建索引:模板
6.5.5在查询编辑器中创建索引:SQL代码
6.6删除索引
6.7在查询编辑器中修改索引
6.8当索引不存在时
6.9为数据库生成关系图
6.9.1数据库关系图基础
6.9.2SQLServer数据库关系图工具
6.9.3默认的数据库关系图
6.9.4数据库关系图工具条
6.10小结
第7章数据库的备份、还原和维护
7.1事务日志
7.2备份策略
7.3当可能发生错误时
7.4让数据库脱机
7.5备份数据
7.5.1使用T-SQL备份数据库
7.5.2使用T.SQL进行日志备份
7.6还原数据库
7.6.1使用SSMS还原数据
7.6.2使用T-SQL进行还原
7.7分离和附加数据库
7.7.1使用SSMS进行分离和附加操作
7.7.2使用T.SQL进行分离和附加操作
7.8为数据库生成SQL脚本
7.9维护数据库
7.10创建数据库维护计划
7.11设置数据库邮件
7.12修改维护计划
7.13小结
第8章操作数据
8.1T-SQL的INSERT命令的语法
8.2SQL命令INSERT
8.2.1默认值
8.2.2使用NULL值
8.3DBCCCHECKIDENT
8.4列约束
8.5同时插入多条记录
8.6检索数据
8.7使用SSMS检索数据
8.8SELECT语句
8.9指定列
8.10第一批搜索
8.1l改变输出的显示
8.1.2限制搜索:NLIERE的使用
8.12.1SETROWCOUNTn
8.12.2TOPn
8.12.3TOPnPERCENT
8.13字符串函数
8.14顺序!顺序!
8.15LIKE运算符
8.16生成数据:SEL.ECTINT
8.17谁能添加、删除或选取数据
8.18更新数据
8.18.1JJPDAT命令
8.18.2在查询编辑器中更新数据
8.19事务
8.19.1BEGINTRAN
8.19.2COMMI:TTRAN
8.19.3ROLLBACKTRAN
8.19.4锁定数据
8.19.5更新数据:使用事务
8.19.6嵌套事务
8.20删除数据
8.20.1DFLETE的语法
8.20.2使用DELETE语句
8.21截断表(删除表中的所有行)
8.22删除表
8.23小结
第9章构建视图
9.1为什么要构建视图
9.2针对安全而使用查询
9.3加密视图定义
9.4创建视图:SSMS、
9.5使用视图来创建视图
9.6CREATEVIEW语法
9.7创建视图:查询编辑器窗格
9.8创建视图:SCFIEMABINDING
9.9为视图设置索引
9.10小结.
第10章存储过程和函数
10.1什么是存储过程.
10.2CREATPROCEDURE语法
10.3返回一系列记录
10.4创建存储过程:SSMS
10.5执行存储过程的不同方法
10.5.1不使用EXEC
10.5.2使用EXEC
10.6使用RETURN
10.7控制流程
10.7.1IFELSE
10.7.2BEGINEND
10.7.3NHILEBREAK语句
10.7.4CASF吾句
10.8综合应用
10.9用户定义函数.
10.9.1标量函数
10.9.2表值函数
10.9,3创建用户定义函数时要考虑的事项
10.10小结
第11章T-SQL基础
11.1使用多个表
11.2变量
11.3临时表
11.4聚合
11.4.1COUNT/COUNT_BIG
11.4.2SUH
11.4.3MAX/MIN
11.4.4AVG
11.5分组数据
11.6HAVINC
11.7独特值
11.8函数
11.8.1日期和时间函数
11.8.2字符串函数
11.8.3系统函数
11.9RAISTRROR
11.10错误处理
11.11@@ERROR
11.12TRYCATCH
11.13小结
第12章高级T-SQL
12.1子查询
12.1.1IN
12.1.2ExISTs
12.1.3了结未了之事
12.2APPLY运算符
12.2.1CROssAPPLY
12.2.2OUTERAPPI-Y
12.3公用表表达式
12.4透视数据
12.4.1PIVOT
12.4.2LINPIVOT
12.5排名函数
12.5.1ROWNUMBER
12.5.2RANK
12.5.3DENSERANK
12.5.4NTILE
12.6SQLServer中的PowerShell
12.7小结
第13章触发器
13.1什么是触发器
13.2DML触发器.
13.3针对DML触发器的CREATETRIGGFR语法
13.4为什么不使用约束
13.5对逻辑表进行删除和插入
13.6创建DMLFOR触发器
13.7检查特定的列
13.7.1使用UPDATE()
13.7.2使用COLUJMNS_JPDATED
13.8DDL触发器
13.8.1DDL_OATABAS_LFVELEVENT5
13.8.2删除DDL触发器
13.8.3EVENTDAT()
13.9小结
第14章SQLServer2008ReponingServices
14.1ReportingServices的架构
14.2配置ReportingServices
14.3使用报表设计器构建第一个报表
14.4.小结
㈥ SQLServer2008基础教程的内容简介
《SQLServer2008基础教程》全面阐述SQLServer2008的基础知识。书中首先概述了SQLServer2008的安装过程,并介绍了SQLServer2008的SSMS管理工具;然后以建立一个金融数据库系统为主线,从最基础的搜集信息入手,一步步地引导读者学会如何保证数据库的安全,如何创建表、主键、索引等,并掌握如何备份和还原数据库;之后以示例数据库为基础,深入讲解各种数据操作的方法,从数据检索、插入、更新、删除,到函数、触发器、存储过程的使用;最后,以一个实例讲述了SQLServerReportingServices。
《SQLServer2008基础教程》适合希望使用SQLServer2008的开发人员和管理员阅读,也可作为高等学校相关课程的教材。
㈦ SQL 基础
1 建立主键是为了给外表引用,主键必须非空、唯一,主键排好了序优化了查询速度;组合列做主键时,只要某几个列组合起来可以唯一标识一行,那这几个列就足够做主键了。一个表只能有一个主键。组合多个列的主键效率极差,扩展性也差,一般需要二个以上才能做主键时,还不如加一个自增长标识列做主键。
2 主键就是唯一的。其它的根据实际情况设,例如学生表的学号是唯一的,可以做主键。学生的身份证号也是唯一的。
3 在不想用组合主键的时候,用标识列。一个表只能有一个标识列。
4 性别列: default('男')
5 性别列; check (性别='男' or 性别='女')
6 分数表引用了学生表的学号,就要设置外键。外键强制引用的完整性。可能级联更新和删除。
㈧ 零基础想学习SQLserver有什么方法吗
给你一个我连续sql语句的地方吧,真的非常好 http://www.sqlzoo.cn/
求采纳
㈨ 学SQL SERVE要有什么基础 它用什么语言
SQL就是“结构化查询语言”,SQL Server是微软推出的一套数据库开发系统,和Oracle、MySQL、DB2等是一个类型的软件!
学习数据库最好学一下数据库基础,推荐一本《数据库基础概论》,高等教育出版社的书,非常好,因为你现在做毕业设计,所以不用都看完,只看一到三章就行了,尤其是SQL重点看!如果你以后有时间的话建议认真看一下,对从事数据库相关工作很有用!
再这个基础上在看一本SQL Server相关的教程就可以了,根据你用的SQL Server版本来确定这本教程!
你是学通信的,相关计算机的课程应该学过不少,如果你基础比较扎实,我感觉15天左右可以学会,至少做一个毕业设计应该可以了!