e股脑电脑教程网
  • 首 页
  • 操作系统
  • 应用软件
  • 下载工具
  • 影音视频
  • 办公软件
  • 媒体制作
  • 网站建设
  • 平面设计
  • 数据库
  • 程序开发
  • 视频教程
编辑推荐: | 文章搜索:
您现在的位置: e股脑 >> 数据库 >> Sybase教程 >> Sybase数据库简介 >> 教程正文
 
教程搜索
 
 
相关教程
  • Sybase数据库简介
  • 为什么有时候数据库事务日志满了,不能
  • 在LINUX下安装 Sybase ASE 11.0.3.3
  • Dealing with identity gaps (Freebo
  • 关于sybase数据库的锁
  • SYBASE内存和缓冲区管理(rekcah0)
  • sybase 临时数据库tempdb (Arnold)
  • SYBASE dbccdb的安装配置攻略
  • 从数据库应用系统查找解决阻塞问题
  • Sybase数据库的碎片整理( arnold )
  • SYBASE数据库用户管理基本概念 (howto
  • sybase 珍藏系列之三(from shanhan)
  • sybase 珍藏系列之四(from shanhan)
  • SYBASE补丁安装指南
  • 解决 Error 605 错误的方案
  • Sybase TraceFlag 定义
 
 

图文教程


  • Windows抢了谁的饭碗 非主流操作系统To

  • 地球还是火星 平常心看“非主流”

  • 综合运用Office 2007批量制作奖状

  • 没有系统盘如何才能修复受损系统?

  • 巧妙运用Excel中边界的附加功能!
 
 
赞 助 商
 
 
Sybase数据库简介
  • 来源:e股脑
  • 点击次数:
  • 更新时间:2007-8-9
4_run02=100, tele114_idx02=100

2、表

x 建表

create table spec_code

(

No tinyint not null, /*特编号(0--99)*/

Name varchar(50) null, /*名称*/

Addr varchar(50) null, /*地址*/

Tel varchar( null, /*电话号码*/

StaffNo varchar(4) not null /*录入员工号*/

)

on segrun /*将表放在segrun段上*/

x 删除表

Drop tabel tele114_1th

x 修改表,在表中增加新的列(用这个命令增加的列必须允许null值)

Alter table friends_etc add country varchar(20  null

x 表级或列级约束

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'))

x 指定默认值

Create table ny_titles


(title_id char(6t),

Title varchar(80),

Price money default null,

Total_sales int default (0))

x 指定Unique 和primary key 约束

Primary key 不允许空值,常用来产生唯一的聚集索引,unique 允许空值,常用来产生唯一的非聚集索引

Create table my_sales

(stor_id char(4),

Ord_num varchar(20),

Date datetime,

Unique clustered(stor_id,ord_num))

3、索引

x 建立索引

create unique clustered index code1thidx1 on code_1th(Code1,Name,UnitNo1,Used)

on segrun

Unique: 建立唯一性索引

Clustered : 建立聚集索引,使得数据行的逻辑顺序与物理顺序一致,查询速度较快;每个表仅允许建立一个唯一性索引。(非聚集索引nonclustered)

On segrun:将索引放在segrun上

x 删除索引: drop index code_1th.code1thidx1

4、 默认:当用户没有显示地为某一列赋值时,SQL SERVER 为该列插入的值

x 创建默认值CA,把默认值CA用到friends_etc表中的State列上

Creat default statedflt

Go

Sp_bindefault statedflt, "frends_etc.state"

go

x 断离默认

Sp_unbindefault "frends_etc.state"

x 删除默认

Drop default statedflt

5、规则:可以理解为对数据库、某一列、某用户数据类型的限制.规则中的任何变量名必须

冠以@,不能直接引用列或其他数据库对象。

x 创建规则并把他关联到用户定义的数据类型P#上

Create rule phonerule as @phone like 415[0-9][0-9][0-9][0-9]

Sp_bindrule phonerule ,"p#"

x 断离规则

Sp_unbindrule "p#"

x 删除规则

Drop rule phonerule

6视图:视图是从一个或多个基本表或其他视图上导出的表,可以在视图上进行增、删、改

x 创建视图

创建视图的句法为:

create view view_name

(column_1,...,column_n)

as select_statements

例:在authors表和publishers表上定义一个视图如下:


Create view cities (authorname, acity, publishername, pcity)

As select au_lname,authors.city, pub_name, publishers.city

From authors, publishers

x 通过使用Drop view 命令来撤消一个视图

Drop view view_name

7、存储过程

x 创建存储过程

CREATE PROCEDURE procedure_name [(para1[,para2, ...])]

As sql_statements

存储工程的参数名必须一@开头,包括@最长为30个字符。

x 执行存储过程

EXEC[UTE] procedure_name [(para1[,para2, ...])]

存储过程能够返回一个整数,用来指示存储过程执行是完全错误还是错误。SQL SERVER 用0指示成功的返回,-1~-99指示不同的错误。当前所用的0及-1~-14的含义如表所示。

值 含义

0 过程执行无错

-1 丢失对象

-2 数据类型错误

-3 进程被选作死锁的牺牲品

-4 权限错误

-5 语法错误

-6 各种用户错误

-7 资源错误:如空间错误

-8 非严重的内部错误

-9 触及系统限制

-10 严重的内部不一致

-11 严重的内部不一致

-12 表或索引坏了

-13 数据库坏了

-14 硬件错误

x 更改存储过程名

Sp_rename objname newname

x 删除存储过程

DROP PROCEDURE procedure_name

8 、触发器

x 创建触发器

CREATE TRIGGER [owner.]trigger_name

ON [owner.]table_name

{FOR INSERT,UPDATE,DELETE}

AS

SQL_statements

或使用IF UPDATE 子句:

CREATE TRIGGER [owner.]trigger_name

ON [owner.]table_name

{FOR INSERT,UPDATE}

AS

[IF UPDATE (column_name)

[{AND|OR} UPDATE (column_name)]...}

SQL_statments

[IF UPDATE(column_name)

[{AND|OR} UPDATE column_name)]...

SQL_statements]...

x 触发器的删除

DROP TRIGGER [owner.]trigger_name


五、批处理和流控制语言

1、批处理

SYBASE系统允许用户将若干条相关的语句组成一个整体,交给系统同时处理。 一批语

句的结束以go语句为标志。严格地讲,单条SQL语句也是一个批处理。

例:Select count(*) from titles

Select count(*) from authors

Go

也可以将一组SQL命令放在一个操作系统文件中,再将这个文件交给isql执行。

2、流控制语言

流控制语句

在批处理中,我们可以加入流程控制语句,从而达到编程的目的。在T-SQL语言中,

流控制语句有:

· if。。。Else。。。

· begin。。。End。。。

· while和break。。。Continue

· declare和局部变量以及全局变量

· Goto

· Return

· Waitfor

· print和Raiserror

· 注释

例:

if exists(select * from zyl

where xm="李军")

print "ok"

else

print "no this one"

使用批处理有以下规则:

x CREATE PROCEDURE、CREATE RULE、 CREATE DEFAULT 、CREATE TRIGGER 以及CREATE VIEWE 必须单独交给SQL SERVER, 他们不能和别的SQL语句一起作批处理(CREATE DATABASE、CREATE TABLE 和CREATE INDEX 能和其他语句组成批处理)。

x 规则和默认值都不能在一组批处理中刚关联就使用。

x USE命令必须在引用这个数据库的对象的语句的前一组批处理中提交。

上一页  1 2 3 4 5 6 7 8 9 下一页
  • 上一篇教程: 为什么有时候数据库事务日志满了,不能截断日志?
  • 下一篇教程: 没有了
  •  

    关于本站 | 广告联系 | 版权声明 | 使用帮助

    Copyright © 2004-2008 www.egunao.com All rights reserved.