Sybase数库培训教材
华 技 术 限 公 司
版权 侵权必究
目 录
第1章 Sybase数库简介 7
11 版 7
12 Sybase数库特点 7
13 Sybase数库组成 8
第2章 SYBASE关概念 10
21 数库设备 10
22 段 11
23 系统数库 11
24 户数库 14
25 数库象 14
第3章 SQL 查询语言 22
31 简单查询 22
32 连接查询 22
33 子查询 23
34 集函数分组排序 23
第4章 数库数库象增删改 25
41 数库 25
42 表 25
43 索引 26
44 默认 27
45 规 27
46 视图 28
47 存储程 28
48 触发器 29
第5章 批处理流控制语言 31
51 批处理 31
52 流控制语言 31
53 启动SQL Server 32
54 启动SQL Server单户模式 33
55 关闭效劳器 33
56 Sybase数库目录说明 33
第6章 SQL Server户权限 35
61 建立SQL效劳器户名〔登录帐号〕 35
62 增加数库户名 35
63 数库操作授权 37
第7章 数库备份恢复 39
71 系统软件障恢复 39
72 介质障恢复 39
第8章 实程序 44
81 bcp 44
82 isql 44
83 showserver 45
84 startserver 45
85 syman 45
86 dbcc 数库致性检查 46
第9章 Sybase客户端软件 47
91 安装 47
92 运行 47
第10章 附录 49
101 附录1:master数库中系统表 49
102 附录2:Sysusages 行记录分配数库磁盘分析 49
103 附录3: SQL Server提供系统程功执行权 50
104 附录4:常SQL命令 52
关键词:
SYBASE SQL 数库
摘 :
文介绍Sybase数库根底知识常维护操作工具N2000产品根底培训教材
第1章 Sybase数库简介
11 版
1984年Mark B HiffmanRobert Epstern创立Sybase公司1987年推出Sybase数库产品SYBASE三种版UNIX操作系统运行版二Novell Netware环境运行版三Windows NT环境运行版UNIX操作系统目前广泛应SYBASE 126
12 Sybase数库特点
〔1〕基客户效劳器体系结构数库
般关系数库基式模型式结构中应运行台机器户通终端发命令简单查应运行结果
客户效劳器结构中应分台机器运行台机器系统客户外机器效劳器机器通局域网广域网联接起
客户效劳器模型处:
● 支持享资源台设备间衡负载
● 允许容纳机环境充分利企业已种系统
〔2〕 真正开放数库
采客户效劳器结构应分台机器运行更进步运行客户端应必Sybase公司产品般关系数库语言编写应够访问数库提供预编译Sybase数库简单提供预编译公开应程序接口DBLIB鼓励第三方编写DBLIB接口开放客户DBLIB允许台完全相调访问DBLIB应程序容易台台移植
〔3〕 种高性数库
Sybase真正吸引方高性表达方面:
● 编程数库
通提供存储程创立编程数库存储程允许户编写数库子例程子例程预编译必次调进行编译优化生成查询规划查询速度快
● 事件驱动触发器
触发器种特殊存储程通触发器启动存储程确保数库完整性
● 线索化
Sybase数库体系结构创新处线索化般数库操作系统理数库连接户连接时系统性会幅度降Sybase数库操作系统理进程数库连接作局部理外Sybase数库引擎代操作系统理局部硬件资源端口存硬盘绕操作系统环节提高性
13 Sybase数库组成
Sybase数库三局部组成:
(1) 进行数库理维护联机关系数库理系统Sybase SQL Server
Sybase SQL Server编程数库理系统整Sybase产品核心软件起着数理高速缓理事务理作
(2) 支持数库应系统建立开发组前端工具Sybase SQL Toolset
ISQLSQL Server进行交互种SQL句法分析器ISQL接收户发出SQL语言发送SQL Server结果形式化方式显示户标准输出
DWB数工作台Sybase SQL Toolset组成局部作户够设置理SQL Server数库户提供种数库信息执行添加更新检索等操作简便方法DWB中完成ISQL功DWB基窗口菜单操作ISQL简单种方便实数库理工具
APTSybase客户软件局部产品事实际应开发环境APT工作台建立应程序工具集创立非常简单非常复杂应程序开发基表格〔Form〕应户界面采窗口菜单驱动方式通系列选择完成表格〔Form〕菜单处理开发
(3) 异构环境厂商应软件类型数连接起接口Sybase Open ClientOpen Server
通Open ClientDBLIB库应程序访问SQL Server通Open ServerSERVERLIB应程序访问数库理系统
第2章 SYBASE关概念
Sybase SQL Server库数库系统数库包括系统数库户数库 系统数库户数库建立数库设备
21 数库设备
数库创立数库设备谓数库设备指识物理设备指存储数库数库象磁盘原始分区操作系统文件增加新数库设备时必须设备初始化〞初始化程物理磁盘磁盘分区操作系统文件变SYBASE数库识设备初始化数库设备DISK INIT命令:
DISK INIT
NAME设备名
PHYSNAME物理设备名
VDEVNO虚拟设备号
SIZE块数
中NAME指数库设备名名CREATE DATABASEALTER DATABASE命令PHYSNAME原始磁盘分区操作系统文件名VDEVNO数库设备标识号SQL Server中必须唯SIZE单位2K块新创立数库SIZEmodel数库尺寸10242K块〔2M〕
例:*dev目录400M物理设备初始化SYBASE数库设备tele114_log01*
1>disk init
2>nametele114_log01〞
3>physnamedevrtelelog〞
4>vdevno4
5>size204800 *2Kbyte*204800400Mbyte*
6>go
22 段
数库设备逻辑划分数库段允许某特定象放置指定段〔创立象时指定〕数库设备拥达192段段255逻辑设备存储空间户创立数库时SQL SERVER 会动该数库中创立三段: SYSTEMLOGSEGMENT DEFAULT三段分存储数库系统表事务日志数库象
数库中创立段步骤:
先Disk init 初始化物理设备
通Create database alter database on 子句数库设备数库新设备动增加数库default system段
旦数库设备存数库存储程Sp_addsegment 定义数库段语法:
Sp_addsegment 段名数库名设备名
23 系统数库
安装Sybase数库时动生成系统数库:
● 数库master
● 模型数库model
● 系统程数库sybsystemprocs
● 时数库tempdb
选择数库:
● 安审核数库sybsecurity
● 例数库pubs2
● 命令语法数库sybsyntax
〔1〕 master数库
包含许系统表系统程总体控制户数库SQL Server操作构成SYBASE系统数字典MASTER数库记录信息:
● 登录帐号〔SQL效劳器户名〕sysloginssysremolelogins
● 正执行程sysprocesses
● 修改环境变量sysconfigures
● 系统错误信息sysmessages
● SQL效劳器数库信息sysdatabases
● 数库占存储空间sysusages
● 系统安装磁带磁带信息sysdevices
● 活动锁信息syslocks
〔2〕 model数库
提供新户数库初型次CREATE DATABASE命令 时SQL Server产生model数库拷贝然扩展命令求尺寸果修改model数库新创立数库改变面通常model数库改变:
● 增加户数库类型规缺省
● 存取SQL Server数库户sp_adduser增加model数库
● 缺省权限〔特guest帐号〕model中建立
● 诸select intobulkcopy样数库选项model中设置设置反映新创立数库中model中原始值关〔off〕
般情况数户权修改model数库没授权读取model中容已拷贝新数库中授权读model没什意义
use model
go
sp_help
go
Name Owner Object_type
sysalternates dbo system table
syscolumns dbo system table
syscomments dbo system table
sysconstraints dbo system table
sysdepends dbo system table
sysgams dbo system table
sysindexes dbo system table
syskeys dbo system table
syslogs dbo system table
sysobjects dbo system table
sysprocedures dbo system table
sysprotects dbo system table
sysreferences dbo system table
sysroles dbo system table
syssegments dbo system table
systhresholds dbo system table
systypes dbo system table
sysusermessages dbo system table
sysusers dbo system table
〔3〕 sybsystemprocs数库
库中存储系统程户执行存储程〔sp_开始〕时SQL 效劳器首先户前数库中搜索指定存储程果没相应程系统程数库中寻找假设没MASTER数库中寻找
〔4〕时数库tempdb
该数库时表时工作提供存储区域时数库SQL Server数库享工作空间表时户退出系统失败表消失
〔5〕安审核数库sybsecurity
数库中保存系统安审核信息踪记录户操作情况维护系统安提供控制手段
〔6〕例数库pubs2
户提供学SYBASE数库模型
〔7〕命令语法数库sybsyntax
库中保存SYBASE数库命令语法支持语言库
24 户数库
户数库指Create database 命令创立数库新户数库master数库中创立说存取master数库户权创立新数库SA创立数库权限授予户新建数库中存系统表sysusers表中少条记录该数库创立者数库创立时创立者该数库 owner 然创立者位权系统程授予户
25 数库象
〔1〕表(Tables)
关系数库中表重数库象应关系数库理中关系DBASEFOXPRO中DBF文件类似切数存放表中数库象户操作表中数表张二维表形式存中列称字段域行称记录项数
类表名字sys开头表称系统表系统表记录着关SQL Server信息master数库中表局部系统表表着master数库创立建立外户数库创立时系统表子集
例master数库中系统表:sysconfiguressysdatabasessysdevicessyslogins等户数库系统数库中系统表:sysalternatessyscolumnssysindexssyslogssysobjectssysusers等
例:
use master
go
sp_help
go
Name Owner Object_type
spt_committab dbo user table
spt_datatype_info dbo user table
spt_datatype_info_ext dbo user table
spt_monitor dbo user table
spt_server_info dbo user table
spt_values dbo user table
sysalternates dbo system table
syscharsets dbo system table
syscolumns dbo system table
syscomments dbo system table
sysconfigures dbo system table
sysconstraints dbo system table
syscurconfigs dbo system table
sysdatabases dbo system table
sysdepends dbo system table
sysdevices dbo system table
sysengines dbo system table
sysgams dbo system table
sysindexes dbo system table
syskeys dbo system table
syslanguages dbo system table
syslisteners dbo system table
syslocks dbo system table
sysloginroles dbo system table
syslogins dbo system table
syslogs dbo system table
sysmessages dbo system table
sysmonitors dbo system table
sysobjects dbo system table
sysprocedures dbo system table
sysprocesses dbo system table
sysprotects dbo system table
sysreferences dbo system table
sysremotelogins dbo system table
sysroles dbo system table
syssegments dbo system table
sysservers dbo system table
syssrvroles dbo system table
systestlog dbo system table
systhresholds dbo system table
systypes dbo system table
sysusages dbo system table
sysusermessages dbo system table
sysusers dbo system table
sp_configure dbo stored procedure
sp_dboption dbo stored procedure
sp_getmessage dbo stored procedure
sp_procxmode dbo stored procedure
sp_prtsybsysmsgs dbo stored procedure
sp_validlang dbo stored procedure
说明见附录表1
〔2〕视图(Views)
视图查张张表中数种方式通张张表中局部数进行组合视图视图表非常相象表着质区通视图数实际存放表中数库中仅存视图定义
视图处:
● 操作方便
● 安性
〔3〕索引(Index)
索引字段生成加快数检索Sybase数库中索引系统动理说Sybase索引操作户透明表索引旦建立系统会动进行更新维护相应表应致操作时户须指定索引系统会动确定否索引进行操作
Sybase支持三种类型索引复合索引包含列索引二唯性索引意两行中索引列相取值三簇类索引〔Clustered indexes〕非簇类索引(Nonclustered indexs)簇类索引SQL效劳器断重排表行物理序逻辑索引序相致非簇类索引需表行物理序逻辑序致表建立簇类索引非簇类索引建立非簇类索引相簇类索引检索速度快应建立非簇类索引前建立簇类索引
〔4〕存储程(Stored procedures)
存储程TSQL语言编写成SQL子例程存储SQL效劳器供户调执行般SQL语句批处理语句存储程预编译首次运行存储程时SQL Server查询处理器分析产生终执行方案查询处理局部工作已完成执行存储程时速度会快执行存储程时带参数调存储程执行完毕返回信息指示否成功完成相应操作存储程两种:种SQL效劳器安装时动建立系统存储程〔系统程〕种户创立存储程
系统程系统理户提供事数库理种途径系统程sp_开头放master数库中隶属sa(系统理员) 数库中运行系统程
常见系统程:
Sp_addgroup
前数库中建立数库户组
Sp_addlogin
建立SQL效劳器户
Sp_adduser
前数库中增加户
sp_changegroup
改变数库户组
Sp_dboption
查询改变数库系统设置
Sp_dropdevice
删设备
Sp_dropgroup
删组
Sp_droplogin
删帐号
Sp_help
查询数库象数库信息
Sp_helpdb
查询数库信息
Sp_helpdevice
查询设备信息
Sp_helpgroup
查询组信息
Sp_helpindex
查询定表信息
Sp_helpuser
查询户信息
Sp_lock
查询前加锁信息
Sp_monitor
查询SQL效劳器统计信息
Sp_password
改变登录帐号口令
Sp_spaceused
查询表中行数数页数空间
Sp_who
查询前户程信息
Sp_syntax
查询操作语法
Sp_configure
配置系统参数
例:
sp_helpdb
go
name db_size owner dbid created status
master 30 MB sa 1 Jan 01 1900 no options set
model 20 MB sa 3 Jan 01 1900 no options set
sybsystemprocs 100 MB sa 4 Oct 24 1997 trunc log on chkpt
tele114 3700 MB sa 5 Oct 24 1997 select intobulkcopy trunc log on chkpt
tempdb 220 MB sa 2 May 05 1998 select intobulkcopy
(0 rows affected return status 0)
例:
sp_monitor
go
last_run current_run seconds
May 5 1998 409PM May 5 1998 413PM 224
(0 rows affected)
cpu_busy io_busy idle
17(1)0 5(0)0 923(223)99
(0 rows affected)
packets_received packets_sent packet_errors
21(9) 51(23) 0(0)
(0 rows affected)
total_read total_write total_errors connections
947(1) 595(113) 0(0) 3(1)
(0 rows affected return status 0)
〔5〕触发器(Triggers)
触发器种特殊存储程维护表中相关数致性张表中插入删修改数时触发器会触发存储程保持数致性
〔6〕缺省规(Defaults and rules)
缺省数录入时假设户没输入数SQL Server动输入值
规理解数库某列某户数类型限制
第3章 SQL 查询语言
SQL仅包括查询数关命令包括创立数库象增删改数等功分定义数查询语言数定义语言数操作语言里先介绍数查询语言根句法:
Select select_list from table_list where search_conditions
31 简单查询
A选择假设干列
Select expression [expression] From table_list
B选择假设干行
查出 号码415头记录
Select * from code_1th where tel like '415'
查询中消值重复行
Select distinct tel from code_1th
Text char like 中通配符’’分代表字符单字符
常查询条件:(出text类型外)
拟
><><><
范围确定
between exp1 and exp2 net between exp1 and exp2
列表集合
in (exp1[exp2[]]) not in ()
谓词
like
重条件
and or not
32 连接查询
A等值连接等值连接:通’拟两表间数时称等值连接通拟符时称等值连接
等值连接:
Select * from publishers authors where publisherscityauthorscity
等值连接:
B然连接: 连接目标列中相名列保存
Select publisherspub_id publisherspub_name publishersstate authors*
From publishers authors where publisherscityauthorscity
33 子查询
A表达式子查询
Select au_lname au_fname from authors where city
(select city from publishers where pub_nameabcde)
切拟操作符操作符子查询间All any
B定谓词子查询
Select pub_name from publishers from publishers
Where pub_id in
(select pub_id from titles where type'abcde')
C相关查询
相关查询嵌套查询赖外部父查询值嵌套查询重复执行假设干次
Select distinct t1type from titles t1
Where t1type in ( select t2type from titles t2 where t1pub_idt2pub_id)
34 集函数分组排序
A查询结果进行聚集处理
聚集函数: Sum([all|distinct] expression)avg([all|distinct] exoression)
Count([all|distinct]expression) count(*) max(expression) min(expression)
Select count(*) from titles
BGroup by having 子句查询结果分组
Select type avg(advance) sum(total_sales) from titles group by type
Select type from titles group by type having count(*) >1
Having 类似where where 聚集函数
COrder by 查询结果进行排序
Select type avg(price) from titles group by type order by avg(price)
DCompute 子句
完成基组中值聚集运算聚集值作新行出现查询结果中
Select type price advance from titles order by type compute sum(price) sum(advance) by type
第4章 数库数库象增删改
41 数库
翻开数库
Use tele114
创立数库拥创立数库权利户创立数库
CREATE DATABASE tele114
ON tele114_def0110tele114_run01200tele114_idx01200
LOG ON tele114_log0180
删数库
Drop database tele114
修改数库
Alter database tele114 on tele114_run02100 tele114_idx02100
42 表
建表
create table spec_code
(
No tinyint not null *特编号(099)*
Name varchar(50) null *名称*
Addr varchar(50) null *址*
Tel varchar(8) null * 号码*
StaffNo varchar(4) not null *录入员工号*
)
on segrun *表放segrun段*
删表
Drop tabel tele114_1th
修改表表中增加新列(命令增加列必须允许null值)
Alter table friends_etc add country varchar(20 ) null
表级列级约束
Create table my_publishers
(pub_id char(4)
Pub_name carchar(40)
Constraint my_chk_constraint
Check (pub_id in ('1389''0736''0877'))
Or (pub_name not like 'bad news books'))
指定默认值
Create table ny_titles
(title_id char(6t)
Title varchar(80)
Price money default null
Total_sales int default (0))
指定Unique primary key 约束
Primary key 允许空值常产生唯聚集索引unique 允许空值常产生唯非聚集索引
Create table my_sales
(stor_id char(4)
Ord_num varchar(20)
Date datetime
Unique clustered(stor_idord_num))
43 索引
建立索引
create unique clustered index code1thidx1 on code_1th(Code1NameUnitNo1Used)
on segrun
Unique 建立唯性索引
Clustered 建立聚集索引数行逻辑序物理序致查询速度较快表仅允许建立唯性索引(非聚集索引nonclustered)
On segrun索引放segrun
删索引 drop index code_1thcode1thidx1
44 默认
户没显示某列赋值时SQL SERVER 该列插入值
创立默认值CA默认值CAfriends_etc表中State列
Creat default statedflt
Go
Sp_bindefault statedflt frends_etcstate
go
断离默认
Sp_unbindefault frends_etcstate
删默认
Drop default statedflt
45 规
理解数库某列某户数类型限制规中变量名必须冠@直接引列数库象
创立规关联户定义数类型P#
Create rule phonerule as @phone like 415[09][09][09][09]
Sp_bindrule phonerule p#
断离规
Sp_unbindrule p#
删规
Drop rule phonerule
46 视图
视图根表视图导出表视图进行增删改
创立视图
创立视图句法:
create view view_name
(column_1column_n)
as select_statements
例:authors表publishers表定义视图:
Create view cities (authorname acity publishername pcity)
As select au_lnameauthorscity pub_name publisherscity
From authors publishers
通Drop view 命令撤消视图
Drop view view_name
47 存储程
创立存储程
CREATE PROCEDURE procedure_name [(para1[para2 ])]
As sql_statements
存储工程参数名必须@开头包括@长30字符
执行存储程
EXEC[UTE] procedure_name [(para1[para2 ])]
存储程够返回整数指示存储程执行完全错误错误SQL SERVER 0指示成功返回1~99指示错误前01~14含义表示
值
含义
0
程执行错
1
丧失象
2
数类型错误
3
进程选作死锁牺牲品
4
权限错误
5
语法错误
6
种户错误
7
资源错误:空间错误
8
非严重部错误
9
触系统限制
10
严重部致
11
严重部致
12
表索引坏
13
数库坏
14
硬件错误
更改存储程名
Sp_rename objname newname
删存储程
DROP PROCEDURE procedure_name
48 触发器
创立触发器
CREATE TRIGGER [owner]trigger_name
ON [owner]table_name
{FOR INSERTUPDATEDELETE}
AS
SQL_statements
IF UPDATE 子句:
CREATE TRIGGER [owner]trigger_name
ON [owner]table_name
{FOR INSERTUPDATE}
AS
[IF UPDATE (column_name)
[{AND|OR} UPDATE (column_name)]}
SQL_statments
[IF UPDATE(column_name)
[{AND|OR} UPDATE column_name)]
SQL_statements]
触发器删
DROP TRIGGER [owner]trigger_name
第5章 批处理流控制语言
51 批处理
SYBASE系统允许户假设干条相关语句组成整体交系统时处理 批语句结束go语句标志严格讲单条SQL语句批处理
例:Select count(*) from titles
Select count(*) from authors
Go
组SQL命令放操作系统文件中文件交isql执行
52 流控制语言
流控制语句
批处理中参加流程控制语句达编程目TSQL语言中流控制语句:
ifElse
beginEnd
whilebreakContinue
declare局部变量全局变量
Goto
Return
Waitfor
printRaiserror
注释
例:
if exists(select * from zyl
where xm李军)
print ok
else
print no this one
批处理规:
CREATE PROCEDURECREATE RULE CREATE DEFAULT CREATE TRIGGER CREATE VIEWE 必须单独交SQL SERVER SQL语句起作批处理〔CREATE DATABASECREATE TABLE CREATE INDEX 语句组成批处理〕
规默认值组批处理中刚关联
USE命令必须引数库象语句前组批处理中提交
刚删〔DROP〕数库象批处理中重新创立
SET语句做选择设置批处理尾处发生作SET语句查询语句放入组批处理中SET选择项组批处理中
系统启动关闭
53 启动SQL Server
应SQL Server安装程序〔sybinit〕创立SQL ServerBackup Server 默认文件名RUN_SYBASE RUN_SYB_BACKUP放SYBASEINSTALL目录
Startserver 启动SQL Server Backup Server
Startserver f RUN_SYBASE
Startserver f RUN_SYB_BAKUP
通showserver查SQL ServerBackup Server否已启动SYASEINSTALL运行showserver 查SQL Server 否启动
UID PID PPID C STIME TTY TIME CMD
〔Backup Server已启动信息〕
sybase 831 830 0 172350 ttyp1 000000 sybasebinbackupserver 朣 SYB_BACKUP Isybaseinterfaces Msybasebinsybmul
〔SQL Server已启动信息〕
sybase 674 1 0 142911 ttyp0 000045 sybasebindataserver dsybasemasterdat 朹SYBASE esybaseinstallerrorlog
SQL Server启动程
master数库启动鄐ybsystemproces数库启动郷清空tempdb郷启动数库郷事务回滚
54 启动SQL Server单户模式
果恢复已损坏master数库必须启动SQL Server单户模式单户模式仅允许系统理员SQL Server注册
Startserver f RUN_SYBASE m
55 关闭效劳器
关闭SQL Serverisql中TSQL命令:
关闭SQL备效劳器
shutdown SYB_BACKUP
关闭SQL效劳器
shutdown [with nowait]
56 Sybase数库目录说明
usrsybase 目录
install 安装程序
bin 执行程序
include 库函数文件
lib 宿语言库
doc 联机文件
scripts SQL 动态描述文件
help 帮助信息
locales 语言限制文件
termdef 终端定义文件
charsets 字符集文件
第6章 SQL Server户权限
Sybase中户分两种:SQL效劳器户〔登录帐号〕数库户
安装完SQL效劳器系统动建立SQL效劳器户sa口令空系统理员整系统操作权户均系统理员建立
SQL Server中三种特殊户:系统理员户数库者〔建立相应数库数库户〕DBO般户系统理员整系统操作权户数库者建立数库具全部操作权利般户定数库授权操作权限
数库户般分户组数库建立赋予户组public
61 建立SQL效劳器户名〔登录帐号〕
作户SQL Server必须SQL ServerSQL效劳器户名〔登录帐号〕帐号系统理员通sp_addlogin增加
sp_addlogin 登录名口令库名语言全名
例:建立户zhang 口令zhangling(低六位)全名Zhang ling
sp_addlogin zhangzhanglingnullnullZhang ling
go
select * from syslogins
go
62 增加数库户名
样SQL Server数库必须数库中户名户名数库者通sp_adduser增加数库户名必户帐户样数库中户名户相SQL Server帐户样SQL Server帐户相数库名
sp_adduser 登录名名组名
登录名户SQL效劳器登录名名户数库中户名组名户属数库户组
例:户zhang增加tele114户名zhang1属户组china
1>sp_addgroup china
2>go
1>sp_adduser zhangzhang1china
2>go
sp_helpuser
go
*例:删名zhang1户组china登录名zhang
use tele114
go
sp_dropuser zhang1
go
sp_helpuser
go
1>sp_dropgroup china
2>go
sp_helpgroup
go
use master
go
sp_droplogin zhang
go
select * from syslogins
go
63 数库操作授权
grant 命令序列 to 户名
A 系统理员授予户CREATE DATABASE权限户成数库者
B 数库者拥数库中授予户权限:
CREATE TABLE 建表
CREATE DEFAULT 建缺省
CREATE RULE 建规
CREATE PROCedure 建存储程
CREATE VIEW 建视图
DUMP DATABASE 备份数库
DUMP TRANsaction 备份日志
C 数库象者授予户操作权限:
SELECT
UPDATE
INSERT
EXECute
DELETE
REFERENCE
例:授予zhang1数库tele114建表建视图建存储程表studentsselectreference权namenative字段update权
use tele114
go
grant creat tablecreate procedure create view to zhang1
go
grant selectreference on students to zhang1 with grant option
go
grant update on students(namenative) to zhang1
go
sp_helprotect
go
第7章 数库备份恢复
SQL Server提供两种类型恢复:类系统动完成恢复类工完成恢复
71 系统软件障恢复
系统动恢复系统软件出现障情况通重新启动SQL Server进行恢复
动恢复master数库开始然model数库temporary数库户数库数库恢复机制观察事务日志果日志写入数库更数前恢复数库果事务尚未完成回退
谓事务日志张系统表syslogs张表中记录着数库更新请求例插入修改删查询操作记入事务日志中
72 介质障恢复
旦介质发生障通前备份数库事务日志恢复数库需常备份数库事务日志备份数库事务日志dump命令恢复数库事务日志load命令
创立数库需数库设备类似备份数库事务日志需卸出设备增加卸出设备通系统程sp_addumpdevice实现卸出设备磁盘磁带操作系统文件
sp_addumpdevice typedevice_namephysicalname
例:
sp_addumpdevice disk db114 usrsybasezyl114bak1
〔1〕 备份数库事务日志
备份数库语法:
dump database database_name to dump_device
例:
dump database tele114 to db114
备份事务日志语法:
dump transaction database_name to dump_device
[with truncate_only | with no_log | with no_truncate]
前两项日志中删提交事务项删
备份数库前事务日志备份没意义般常备份数库常备份事务日志备份事务日志备份数库需更少时间存储空间
〔2〕恢复户数库
恢复已破坏数库步骤进行:
带no_truncate选项dump命令卸出户数库事务日志
破坏数库样结构建立新数库
load命令重新装入数库事务日志
装入数库语法:
load database database_name
from file_name
装入事务日志语法:
load transaction database_name
from file_name
例:数库备份
dump db_name to file_name
go
数库恢复
load db_name from file_name
go
日志备份
dump transaction db_name to file_name
go
日志恢复
load transaction db_name from file_name
go
日志删
dump transaction db_name with truncate_only
Go
〔3〕master数库恢复
A保存系统表拷贝:sysdatabasessysdevicessysusagessysloginrolesSyslogins
B转储设备户数库
C关闭SQL Serverbuildmaster建立新master数库设备
Buildmaster m 仅重建master数库
Buildmaster 重建设备
D已单户模式启动SQL Server( MasterRecover )
Startserver f RUN_效劳器名 m
E假设master数库alter database 命令扩展严格重建sysusages中分配
F假设Backup Server 网络名〔接口文件中名字〕SYB_BACKUPsysservers中改动网络名
Update sysservers set srvnetnamePRODUCTION_BSRV where srvnameSYB_BACKUP
Gshowserver查检查确保Backup Server正运行假设必重启Bakup Server
H装载master备份
Load database master from 'masterbak'
Load database执行成功SQL Server 动关闭
I假设master次转储增加数库设备执行disk reinit命令重建sysdevices
J假设执行disk reinit次转储create databasealter database执行disk refit 重建sysusagessysdatabases表执行完毕SQL Server动关闭
K检查致性:拟sysusagessysdatabases备份新联机版数库执行dbcc checkalloc 检查数库中重表假设发现错误重新执行disk reinitdisk refit
L假设恢复整设备恢复model数库
Cd SYBASEscripts
Setenv DSQUERY 效劳器名
Isql Usa P口令 S效劳器名
N恢复效劳器户ID
O户模式重新启动SQL Server
〔4〕恢复model 数库
Buildmaster d设备名 x
〔5〕恢复sybsystemproces数库
A删sybsystemproces数库〔假设物理磁盘损坏删设备Disk init 重建设备〕
B重建数库
Create database sybsystemporces on 设备名数库
C恢复数库
Cd SYBASEscripts
Setenv DSQUERY 效劳器名
Isql Usa P口令 S效劳器名
第8章 实程序
81 bcp
户指定形式数库表拷贝操作系统文件中操作系统文件中拷贝数库表提供数库表操作系统文件间传递数方便快速方法
bcp [[databasename]owner]table_name {in|out} datafile [种开关]
中table_name想拷贝数库表名{inout}拷贝方in表示文件数库拷贝out表示数库文件拷贝datafile操作系统文件全路径名
常开关:
f formatfile存次bcp处理表时应答文件全路径名格式文件名扩展名fmt格式文件省重复答复前面问题
U username允许户指定注册名
P password允许户指定前SQL Server口令果未P选项bcp提示输入口令
S Server允许户指定相连SQL Server名字
例:客户端备份tele114数库中code_1th表code_1thfmt格式
bcp tele114code_1th out code_1thtxt 杅code_1thfmt 朥sa 朠
82 isql
SQL Server交互SQL句法分析器
isql [种开关]
常开关:
U username允许户指定注册名
P password允许户指定前SQL Server口令
S Server允许户指定连接SQL Server名称
i输入文件
o输出文件
终止条命令:go
查询缓:reset
调编辑器:vi
执行条操作系统命令:命令
退出isql:quitexit
83 showserver
显示前机正运行SQL Server
showserver
84 startserver
启动SQL Server
startserver [种开关]
常开关:
f runserverfile指定运行效劳器文件名次重启SQL Server时文件参考实际机器文件名RUN_SYBASERUN_SYB_BACKUP
m 单户方式启动SQL Server方式恢复master数库
85 syman
显示联机库例程系统程实程序手册
syman [keyword]
syman实程序联机文文件存放SYBASEdoc子目录中
86 dbcc 数库致性检查
Dbcc 检查数库逻辑致性物理致性通常面情况dbcc
常规数库维护
确定系统错误损坏范围
备份数库前
疑心数库受损坏
dbcc两功:检查分配表结构〔命令checkalloctableallocIndexalloc)检查页链接页级行级数指针
表属checktablefixtextreindex选项执行dbcc命令数库属checkdbcheckalloccheckcatalogindexalloctablealloc选项系统理员dbrepair选项
dbcc命令完整语法格式:
Dbcc
{checktable({说明|表标识}[Skip_ncindex])|
Checkdb [(数库名[skip_ncindex])]|
Checkalloc [(数库名[fix|nofix])]|
Talbealloc 〔{说明|表标识}[{full|optimized|fast|null}[fix|nofix]]))|
Indexalloc 〔{说明|表标识}索引标识[{full|optimized|fast|null}[fix|nofix]]))|
Checkcatalog [〔数库名〕]
Dbrepair (数库名dropdb〕|
Reindex ({说明|表标识})|
fix_text({说明|表标识})}
第9章 Sybase客户端软件
91 安装
执行setupexe路继续安装完成没特殊选择
92 运行
Sybase Client应软件包常工具包含三局部:DseditSQL AdvantageSybase Central现假设连接台Sybase Server遵述简操作序
1〕运行Dsedit选择OK进入InterfacesDriver窗口模式Server子窗口中点击鼠标右键弹出菜单中选择Add输入效劳器名INET〔标识已〕Attributes子窗口中点击鼠标右键弹出菜单中选择Modify Attributes话框中执行Add操作协议类型缺省值TCPNetwork Address格式SybaseServerIPSybaseServer端口号〞10108114134100〞中端口号SybaseServer查
具体信息SYBASEinterfaces文件中文件中信息:
inet2
master tli tcp devtcp \x000210040a6c720d0000000000000000
query tli tcp devtcp \x000210040a6c720d0000000000000000
中inet2SybaseServer名称0X10044100SybaseServerTCP端口
设置完效劳器信息执行Ping Server操作果显示结果:
表示客户端已正确设置效劳器信息
2〕运行SQL Advantage进入工具时先登录相应效劳器菜单中选择server\connet操作话框中选择相应SybaseServerServer列表必须Dsedit工具中定义利工具方便操作Server数库工具Microsoft SQL Server 70Isql工具方法相
3〕运行Sybase Central点击相应效劳器名称弹出登录话框输入户口令进行数库设备户数库等方面理中mastermodelsybsystemprocstempdb系统数库余应系统数库
第10章 附录
101 附录1:master数库中系统表
系统表名
表中容
Sysconfigures
行记录户设置配置参数
Syscurconfigs
关SQL Server前正配置参数情况
Sysdatabases
行记录SQL Server中数库
Sysdevices
行记录数库磁带转储设备磁盘转储设备数库设备磁盘分区
设备磁盘分区
Syslocks
关动态锁情况
Syslogins
行记录效SQL Server户帐号
Sysmessages
行记录系统错误警告
Sysprocesses
关Server进程情况
Sysremotelogins
行记录远程户
Sysservers
行记录远程SQL Server
102 附录2:Sysusages 行记录分配数库磁盘分析
系统表名
表中容
Sysalternates
行记录SQL Server户前数库中标识
syscoumns
行记录表视图列存储程参数
syscomments
行行记录视图规缺省值触发器存储程
sysdepends
行记录程视图触发器参程视图表
Syskeys
行记录码外码公码
Syslogs
sysobjects
行记录表视图存储程日志规缺省值触发器时表〔仅tempdb中〕
sysprocedures
行记录视图规缺省触发器程
syprotects
记录户权限信息
sysegments
行记录片段〔命名磁盘分片聚集〕
systypes
行记录系统提供户定义数类型
sysusers
行记录数库合法户户组
103 附录3: SQL Server提供系统程功执行权
程名
功
执行权限
sp_addalias
数库中户映象户
数库者
sp_addgroup
数库增加分组授权撤权命令中分组作聚合名字
数库者
sp_addlanguage
效劳器定义换语言增加masterdbosyslanguages中
系统理员
sp_addlogin
通masterdbosyslogins中增加表项授权新SQL Server户
系统理员
sp_addremotelogin
通masterbosysremotelogins增添表项授权新远程效劳器户
系统理员
sp_addsegment
指定数库设备创立段
数库者系统理员
sp_addserver
定义远程效劳器定义效劳器名字
数库者系统理员
sp_addtype
创立户定义数类型
Public
sp_addumpdervce
SQL Server增加转储设备
系统理员
sp_adduser
前数库添加新户
数库者
sp_bindefault
列户义数类型定义缺省值
目标〔象〕者
sp_bindrule
列户定义数类型赋规
目标汽者
sp_changedbowner
改变数库者
数库者
sp_changegroup
改变户属分组
数库者
sp_checknames
检查前数库7位ASCII码集外字符名字
public
sp_commonkey
两表视图间定义公键--常连接列
两表〔视图〕者
sp_configure
显示改变配置变量
没参数第参数执行权属public否属系统理员
sp_dboption
显示改变数库选项
带参数属public带参数时属数库者
sp_defaultdb
改变户缺省数库
系统理员〔户改变缺省语言〕
sp_depends
显示数库目标相关性信息
public
sp_diskdefault
设备数库设备状态defaultondefaultoff〔说明数设备否数库岂省存储〕
系统理员
sp_dropalias
删sp_addalias建立户名名标识
数库者
sp_dropdevice
删SQL Server数库设备转储设备
系统理员
sp_dropgroup
数库中删分组
数库者
sp_droplanguage
效劳器中删换语言中删掉相应行
系统理员
sp_droplogin
通删掉户masterdbosyslogins中表项删SQL Server户
系统理员
sp_dropremotelogin
删远程户注册
系统理员
sp_dropsegment
数库中删段特定数库设备卸掉段映象
数库者
sp_dropserver
删远程效劳器
系统理员
sp_droptype
删户定义数类型
数库者数类型者
sp_dropuser
前数库中删户
数库属
sp_extendsegment
段区域扩充数库设备前数库设备进行扩充
数库属
sp_foreignkey
前数库表视图定义外部键
表属
sp_help
报告目标SQL Server提供户定义数库类型信息
public
sp_helpdb
报告--指定数库数库信息
public
sp_helpdevice
报告--指定设备SQL Server数库设备转储设备信息
public
sp_helpgroup
报告--特定组前数库组信息
public
sp_helpinde
报告--表中索引信息
public
sp_helpjoins
列出连接两表视图列
public
sp_helpkey
报告某特定表视图键外部键公键者前数库中键信息
public
sp_helplanguage
报告特换语言语言信息
public
sp_helplog
报告包括日志第页设备名
public
sp_helpremotelogin
报告特定远程效劳器远程效劳器注册信息
public
sp_helprotect
报告数库象户权限户选择象
public
sp_helpsegment
报告前数库中特定段段信息
public
sp_helpserver
报告特定远程效劳器远程效劳器信息
public
sp_helpsort
显示SQL Server缺省排列序字符集
public
sp_helptext
印系统程触发器视图缺省规定义文
public
sp_helpuser
报告前数库中户户信息
public
sp_lock
报告前锁进程信息
public
sp_logdevice
系统表syslogs〔中包括事务日志〕放分设数库设备中
数库属
sp_monitor
显示SQL Server统计数字
系统理员
sp_password
增加改变SQL Server注册口令
口令权限属public系统理员权修改户口令
sp_placeobject
特定中某表索引放置空间分配
表属数库属系统理员
sp_primarykey
定义表视图键〔码〕
表者
sp_recompile
生指定表存储程触发器次运行时重新编译
public
sp_remoteoption
显示改变远程注册选项
显示选项时属 public改变选项时属系统理员
sp_rename
改变前数库中户建立目标名称
特定目标权限属目标属数库象权限属数库者&
sp_renamedb
改变数库名
系统理员
sp_serveroption
显示改变效劳器选项
显示选项权限权限属 public改变选项权限属系统理员
sp_setlangalian
分配改变换语言名
系统理员
sp_spaceused
显示行数数页数前数库中某目标目标占空间
public
sp_unbindefault
列户定义数类型中解规
目标属〔者〕
sp_who
报告特定户SQL Server前户进程信息
public
104 附录4:常SQL命令
1load isql Usa P 进入ISQL环境
quit 退出ISQL环境
2shutdown (server_name) 关闭SYBASE效劳器
ex shutdown SYB_BACKUP
3use (database_name) 翻开数库
ex use tele114
4set rowcount (number) 设置显示记录条数
ex set rowcount 10 (0取消设置)
5select (select_list) from (table_name) where (search_conditions)
查符合求容
ex select max(UnitNo1) from code_1th
6update (table_name) set (column_name1)(value1)column_name2)value2)
where (search_conditions) 重新赋值
exupdate code_1th set Password'12345'
RevCode1substring(RevCode11datalength(rtrim(RevCode1))1)
where substring(Code111)'v' and substring(Code121)' '
7select (select_list) into (table_name1) from (table_name2)
where (search_conditions)
符合求table_name2中容存table_name1中
exselect * into sample from code_1th where substring(Code11 1)'V'
8truncate table (table_name) 删表
extruncate table sample
delete (table_name) where (search_conditions) 删表局部
ex delete example where County'5'
9sp_addumpdevice 'disk'(logicalname)(physicalname) 定义转储设备
exsp_addumpdevice 'disk''nbdump_1''vol1\nbdump\nbdumpdat'
10sp_dropdevice (device_name) 删转储设备
exsp_dropdevice nbdump_1
11dump tran (database_name) with truncate_only 删日志
exdump tran tele114 with truncate_only
12sp_configure (config_name)(config_value) 更改设置值
exsp_configure 'allow updates'1
13reconfigure with override 更改设置值效
14sp_who 数库户列表
15kill (spid) 删效数库户
exkill 9 删spid9数库户
16.sp_helpindex (tabel_name) 查索引情况
ex sp_helpindex code_2th
17sp_helpdb (database_name) 查数库占空间情况
ex sp_helpdb tele114
文档香网(httpswwwxiangdangnet)户传
《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
该内容是文档的文本内容,更好的格式请下载文档