<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>温室小花.技术.博客 --纯粹的unix技术博客 &#187; sybase</title>
	<atom:link href="http://www.evanjiang.net.cn/archives/category/database/sybase/feed" rel="self" type="application/rss+xml" />
	<link>http://www.evanjiang.net.cn</link>
	<description>红颜弹指老，刹那芳华，与其天涯思君，恋恋不舍，莫若相忘于江湖！</description>
	<lastBuildDate>Sun, 05 Sep 2010 14:51:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>db2与oracle 与informix与sybase数据库的比较</title>
		<link>http://www.evanjiang.net.cn/archives/916.html</link>
		<comments>http://www.evanjiang.net.cn/archives/916.html#comments</comments>
		<pubDate>Thu, 16 Apr 2009 12:43:02 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[db2]]></category>
		<category><![CDATA[informix]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[sybase]]></category>
		<category><![CDATA[db2与oracle 与informix数据库的比较]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=916</guid>
		<description><![CDATA[<p>


 <p>DB2与Oracle比较
特性        DB2        Oracle
开放性/可移植性        IBMDB2UDB在各层面，从网络协议的支持到应用开发程序的编程接口，数据库存储程序及触发器，服务器之间的分布式运作，都是基于最新的国际标准，以 确保其开放性及移植性。        ORACLE的许多功能都是使用其私有的，非开放性的技术。例如：ORACLEPL/SQL语言是ORACLE私有的。其存储程序语句也不符合 ANSISQL及ISOSQL的标准，客户机/服务器的编程接口，ORACLE的SQL*NET也不是根据标准定义的。
处理性能        IBM发明了关系型数据库以及其优化技术，并不断发展，所以DB2在各种性能测试中均占领先地位。IBM有信心能在各种标准的测试环境下超越 ORACLE。DB2在高端应用具有过硬的技术，有众多超过1Tera-bytes数据量的用户实例。        由于ORACLE限制用户在未经许可的情况下不能公布他们所作的性能测试，故一般用户不易取得ORACLE的比较资料。Oracle超过1Tera- bytes数据量的客户实例很少。
并行能力  [...]]]></description>
			<content:encoded><![CDATA[<p style="float: left;margin: 4px;"><script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 160x600, 创建于 10-2-7 */
google_ad_slot = "8970910006";
google_ad_width = 160;
google_ad_height = 600;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p> <p>DB2与Oracle比较<br />
特性        DB2        Oracle<br />
开放性/可移植性        IBMDB2UDB在各层面，从网络协议的支持到应用开发程序的编程接口，数据库存储程序及触发器，服务器之间的分布式运作，都是基于最新的国际标准，以 确保其开放性及移植性。        ORACLE的许多功能都是使用其私有的，非开放性的技术。例如：ORACLEPL/SQL语言是ORACLE私有的。其存储程序语句也不符合 ANSISQL及ISOSQL的标准，客户机/服务器的编程接口，ORACLE的SQL*NET也不是根据标准定义的。<br />
处理性能        IBM发明了关系型数据库以及其优化技术，并不断发展，所以DB2在各种性能测试中均占领先地位。IBM有信心能在各种标准的测试环境下超越 ORACLE。DB2在高端应用具有过硬的技术，有众多超过1Tera-bytes数据量的用户实例。        由于ORACLE限制用户在未经许可的情况下不能公布他们所作的性能测试，故一般用户不易取得ORACLE的比较资料。Oracle超过1Tera- bytes数据量的客户实例很少。<br />
并行能力        DB2的并行版支持位图索引和对象关系，因此，DB2有更好的扩展性和性能；        Oracle触发器无法支持并行：在一些特殊的引用完整性(referentialintegrity)的限制下，并行也无法运用：如果表格中有大对象， 由于前述的限制(表不能分割)，并行也无法运用。总之，Oracle在并行系统中没有实现位图索引和对象关系，<br />
分布式数据库        DB2分布式数据库的处理(如两阶段提交)及连接功能是建立在DB2的核心中，不需要使用其它的产品附件。性能好，易使用，减少开支。        ORACLE的分布式功能需要另外购买DistributedOption以及SQL*NET等产品才能实现分布式数据库的连接。<br />
异构平台支持        在异构的环境中，IBM数据库方案简单、更加无缝而且比Oracle的成本低；        Oracle的异构网关性能差，当访问异构数据库时，Oracle缺乏全局的优化，导致了过多的数据及网络传输。<br />
复制能力        DB2提供业界最佳效率的和最开放的复制方案；DB2提供自动冲突检测和解决方法。        Oracle只提供自动冲突检测和解决方法的例子程序，用户须对例子程序做定制后来解决复制冲突<br />
对电子商务支持        IBM的Java技术为业界所公认，DB2公认为电子商务基石。DB2提供的JDBC接口，还可用Java语言写储存过程和用户自定义函数        Oracle的Java技术仅局限于数据库和ERP应用。<br />
对商业智能支持        DB2OLAPServer远比Express更易使用和实现。DB2OLAPServer提供读/写能力-这对一些关键性的多维分析扩展应用如：预测和 预算，是非常有用的(Express只支持读)。IBM的商业智能解决方案中，拥有数据挖掘(IntelligentMiner)工具。        OracleExpress只支持读的能力，不利于支持预测和预算。Oracle缺乏数据挖掘方面的工具。<br />
软件质量与可靠性        DB2的软件开发实验室早在1994年便已通过ISO9000国际质量管理标准的验证与认可。故DB2的软件质量是所有数据库厂家中可靠性最高，故障率最 低的数据库。        ORACLE版本6及版本7在推出后皆需经过无数次修订版升级才能达到一定程度的可用度，这给用户带来极大的不便，并且严重影响到投产系统的可用性及可靠 性。<br />
<span id="more-916"></span></p>
<p>DB2与Sybase比较</p>
<p>特性        DB2        Sybase<br />
开放性/可移植性        IBMDB2的编程接口遵照ANSI、X/OPEN标准的CLI(CallLevelInterface)及ANSISQL的嵌入式SQL等开放标准。 IBMDB2的存储程序和触发器机制则使用最新的SQL国际标准并支持标准的开放语言如C/C++。在DB2CommonServerV2.1.2 (1996)以及DB2UDB(1997)中更加入了用Java语言开发存储程序和触发器的功能。        1.编程接口：SYBASE使用的编程接口不是开放的，因为他使用的是自己的OpenClient/OpenServer接口，而不是基于某一标准的接 口。2.存储程序(StoredProcedure)：由于SYBASE的CLIENT/SERVER技术是80年代开发的，没有使用SQL92等相关的 标准，因此编制存储程序和触发器所用的Transact-SQL也是它们自己专用的。<br />
处理性能        IBM发明了关系型数据库以及其优化技术，并不断发展，所以DB2在各种性能测试中均占领先地位。DB2在高端应用具有过硬的技术，有众多超过1Tera -bytes数据量的用户实例。        SYBASE的优化器(OPTIMIZER)不能有效的支持复杂的查询(ComplexQueries)。应用程序中稍微复杂一些的SQL语句， SYBASE的优化器就无法妥善优化处理。SYBASE刚刚进入海量多处理器MPP的领域，缺乏这方面的经验及先例，Sybase大于一个TB数据量的客 户实例很少。<br />
并行能力        DB2的并行版支持位图索引和对象关系，因此，DB2有更好的扩展性和性能；        SYBASE数据库核心结构较陈旧，尤其在多处理器(SMP)的服务器上无法做到软硬件相配合的延伸与扩展(scale)，无法发挥多处理器的优势。其单 进程多线索的结构就无法象DB2的多进程多线索的结构更能有效地在SMP等机器上运行。<br />
高可用性        DB2可以用数据库及表空间两种粒度(granularity)对数据作备份与恢复(BACKUP及RESTORE)，并且备份可以在联机方式 (ONLINE)下进行，不影响多用户的同时使用。这使得DB2能真正地满足一天24小时、一星期七天的全天候使用。        SYBASE在BACKUP数据库及RESTORE数据库时，需要将系统转为单一用户模式以保证数据库中数据的完整性及一致性，并且在BACKUP之后， 要运行DBCC检查数据的一致性，这使得SYBASE数据库在可用性方面受到限制。<br />
数据完整与可管理性        IBMDB2中数据库可自动的维持两表间的一致性，无需再由DBA编程。        SYBASE在其数据库技术中引入RI(ReferentialIntegrity数据引用完整性)较晚，而且功能有限。例如，当表A中的列A是另一个表 B中列B的ForeignKey时，若要删掉表A中的一个记录，在SYBASE中是不允许的，只有通过触发器(Trigger)及存储过程 (StoredProcedure)，才能删掉表A中的一个记录，同时删掉表B中的相关记录，或把其值设置为NULL。<br />
异构平台支持        在异构的环境中，IBM数据库方案简单、更加无缝而且成本低；        Oracle的异构网关性能差，当访问异构数据库时，Oracle缺乏全局的优化，导致了过多的数据及网络传输。<br />
复制能力        DB2提供业界最佳效率的和最开放的复制方案；DB2支持对数据做预处理后再复制到远端，更有效率且网络流量少。        Sybase是立即复制交易，数据和网络流量大，据用户反映，Sybase的复制难以实施。SybaseAdaptiveServerAnywhere和 AdaptiveServerEnterprise之间的数据复制不是无缝连接，且要求整合工作。<br />
对电子商务支持        IBM的Java技术为业界所公认，DB2公认为电子商务基石。DB2提供的JDBC接口，还可用Java语言写储存过程和用户自定义函数        Oracle的Java技术仅局限于数据库和ERP应用。<br />
对商业智能支持        DB2WarehouseManager内置了数据仓库管理功能。IBM的商业智能解决方案中，拥有数据挖掘(IntelligentMiner)工具。         Sybase数据集市(datamart)没有提供仓库(Warehouse)管理与自动化的功能。<br />
软件质量与可靠性        DB2的软件开发实验室早在1994年便已通过ISO9000国际质量管理标准的验证与认可。故DB2的软件质量是所有数据库厂家中可靠性最高，故障率最 低的数据库。数据在IBM系统内被腐化(corrupted)不但是前所未闻，也是IBM传统用户所不可能忍受的。        SYBASE中的数据需要小心的维护，因为数据在数据库中有可能被“腐化(corrupted)”而无法继续使用。在没有事先修补的情形下，若这些数据被 备份了，则它们无法再被使用。为此SYBASE不得不为客户提供一个检查程序(DBCC)。<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
</p>
<p>DB2与Informix比较</p>
<p>特性        DB2        Informix<br />
开放性/可移植性        IBMDB2UDB在各层面，从网络协议的支持到应用开发程序的编程接口，数据库存储程序及触发器，服务器之间的分布式运作，都是基于最新的国际标准，以 确保其开放性及移植性。        INFORMIX私有4GL编写的程序只能局限在INFORMIX上运行。<br />
处理性能        IBM发明了关系型数据库以及其优化技术，并不断发展，所以DB2在各种性能测试中均占领先地位。DB2在高端应用具有过硬的技术，有众多超过1Tera -bytes数据量的用户实例。        由于INFORMIX是以小型数据库起家，所以其产品设计到目前为止仍有许多小型数据库的限制。许多用户都曾遇到INFORMIX在数据存储、日志管理、 备份、恢复等方面的问题。Informix的扩展并行选项在支持多用户并发访问时存在困难。INFORMIX由于缺乏对大量数据的管理经验，所以其优化器 技术也不能针对大量数据做优化。<br />
并行能力        DB2EEE能利用HACMP自动接替故障节点正常工作，Informix做不到。DB2EEE已经有多年的历史，颁布了最高的TPC-D和TPC-H基 准测试值。DB2EEE支持动态位图索引完成Star-jion，从而既提高了性能又不增加数据库系统管理员的维护量。        在并行机SP上，当SP的高性能开关(switch)不能通讯时，InformixXPS数据库将处于瘫痪状态.当并行机的节点出现故障时， InformixXPS数据库将处于瘫痪状态，停机时间为4到24小时；InformixXPS没有备份和恢复。InformixXPS没有对查询的监控 机制，有可能某一个用户的一个查询耗尽系统的所有资源而不让其他用户使用。<br />
分布式数据库        DB2则是通过核心直接支持XA接口，并且提供许多其它厂商所没有的XA先进功能，例如工商银行山东分行的DB2应用就大量地使用了DB2XA接口，实现 了与CICS结合的大型联机事物处理系统(OLTP)来支持全省通存通兑等应用。        INFORMIX对异构分布式数据库的支持是通过X/OPEN、XA实现的。虽然INFORMIX声称它能够支持X/OPEN、XA接口，但只是在某几个 版本通过附加选件完成。并且在这方面，INFORMIX很少有使用先例，也没有这方面的技术支持。<br />
异构平台支持        在异构的环境中，IBM数据库方案简单、更加无缝而且成本低；        INFORMIX在数据库与数据库之间的连接方面很弱。例如INFORMIX没有连接其他数据库如bbORACLE、SYBASE等数据库的产品.<br />
复制能力        DB2提供业界最佳效率的和最开放的复制方案；DB2提供自动冲突检测和解决方法。        Informix只支持Informix数据库间的复制，若要同其它数据库相互复制，则必须购买第三方支持软件。<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
成功案例<br />
DB2在国内、国际的用户群<br />
DB2的用户不胜枚举。它在全球有一百万以上的License和超过四千万的用户，它在全世界有一万一千个企业级用户。全世界70％公司的数据储存在IBM的数据库里。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/916.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ASE SyBase 12.5.4_x86_64在rhel5上的安装配置</title>
		<link>http://www.evanjiang.net.cn/archives/725.html</link>
		<comments>http://www.evanjiang.net.cn/archives/725.html#comments</comments>
		<pubDate>Thu, 05 Mar 2009 07:34:20 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[redhat linux]]></category>
		<category><![CDATA[sybase]]></category>
		<category><![CDATA[ASE SyBase 12.5.4_x86_64在rhel5上的安装配置]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=725</guid>
		<description><![CDATA[<p style="float: right;margin: 4px;">


</p> <p>1、
tar -xvf ase12.5.4_linux_x86_64.zip
2、安装openmotif包，否则后面srvbuildres的时候会出现提示libXm.so.3无法找到错误。
rpm -ivh openmotif-2.3.0-0.3.el5.i386.rpm
rpm -ivh openmotif-2.3.0-0.3.el5.x86_64.rpm
ln -s /usr/lib64/libXm.so.4 /usr/lib64/libXm.so.3</p>
<p>3、 修改/etc/sysctl.conf文件调整操作系统共享内存参数。加入：
kernel.shmmax = 1024*1024*1024*0.75(75%计算)*8(8G内存)
(num为需要分配的共享内存大小，以字节为单位，一般设置为总内存的50％－70％，本例为8G)(在rhel5上已经自动按这样配置了,本步骤不需要)
4、 运行sysctl -p，使共享内存配置生效(在rhel5上已经自动按这样配置了,本步骤不需要)
5、 修改hosts文件，加入服务器内网IP：192.168.1.51
db
6、 创建sybase用户。
useradd -d /opt/sybase-12.5.4 sybase
passwd sybase
7、创建数据库存放目录：mkdir /sda/data
8、更改/sda/data目录的所有者为sybase用户
chown -R sybase:sybase /sda/data
9、切换到sybase用户 su -sybase
9、进入12.5.4安装目录，执行：./setup -console
10、安装到配置服务器时，退出安装

11、为了以后操作方便，可建立OCS-12_5和ASE-12_5的映射：
ln -s ASE-12_5 ASE，ln -s OCS-12_5 OCS
12、修改sybase用户的.bash_profile文件。
vi ~/.bash_profile
输入vi命令行命令，:r ~/SYBASE.sh，会自动将内容添加到文件末尾。
13、在.bash_profile最后再加入LANG=
14、在.bash_profile最后再加入export LD_POINTER_GUARD=0,否则在后面srvbuildres的时候会出现“segmentation fault”错误。
16、重启服务器
17、在sybase用户目录下新建目录rs，用来存放配置文件。
mkdir ~/rs
18、从ASE-12_5/init/sample_resource_files目录下拷贝例子到rs目录下。
cp ~/ASE-12_5/init/sample_resource_files/srvbuild.adaptive_server.rs ~/rs/db.rs
cp ~/ASE-12_5/init/sample_resource_files/srvbuild.backup_server.rs ~/rs/backup.rs
19、本例配置如下：
db.rs：
sybinit.release_directory: /opt/sybase-12.5.4
sybinit.product: sqlsrv
sqlsrv.server_name: db
sqlsrv.new_config: yes
sqlsrv.do_add_server: yes
sqlsrv.network_protocol_list: tcp
sqlsrv.network_hostname_list: 192.168.1.51
sqlsrv.network_port_list: 5000
sqlsrv.server_page_size: [...]]]></description>
			<content:encoded><![CDATA[<p>1、<br />
tar -xvf ase12.5.4_linux_x86_64.zip<br />
2、安装openmotif包，否则后面srvbuildres的时候会出现提示libXm.so.3无法找到错误。<br />
rpm -ivh openmotif-2.3.0-0.3.el5.i386.rpm<br />
rpm -ivh openmotif-2.3.0-0.3.el5.x86_64.rpm<br />
ln -s /usr/lib64/libXm.so.4 /usr/lib64/libXm.so.3</p>
<p>3、 修改/etc/sysctl.conf文件调整操作系统共享内存参数。加入：<br />
kernel.shmmax = 1024*1024*1024*0.75(75%计算)*8(8G内存)<br />
(num为需要分配的共享内存大小，以字节为单位，一般设置为总内存的50％－70％，本例为8G)(在rhel5上已经自动按这样配置了,本步骤不需要)<br />
4、 运行sysctl -p，使共享内存配置生效(在rhel5上已经自动按这样配置了,本步骤不需要)<br />
5、 修改hosts文件，加入服务器内网IP：192.168.1.51<br />
db<br />
6、 创建sybase用户。<br />
useradd -d /opt/sybase-12.5.4 sybase<br />
passwd sybase<br />
7、创建数据库存放目录：mkdir /sda/data<br />
8、更改/sda/data目录的所有者为sybase用户<br />
chown -R sybase:sybase /sda/data<br />
9、切换到sybase用户 su -sybase<br />
9、进入12.5.4安装目录，执行：./setup -console<br />
10、安装到配置服务器时，退出安装<br />
<span id="more-725"></span><br />
11、为了以后操作方便，可建立OCS-12_5和ASE-12_5的映射：<br />
ln -s ASE-12_5 ASE，ln -s OCS-12_5 OCS<br />
12、修改sybase用户的.bash_profile文件。<br />
vi ~/.bash_profile<br />
输入vi命令行命令，:r ~/SYBASE.sh，会自动将内容添加到文件末尾。<br />
13、在.bash_profile最后再加入LANG=<br />
14、在.bash_profile最后再加入export LD_POINTER_GUARD=0,否则在后面srvbuildres的时候会出现“segmentation fault”错误。<br />
16、重启服务器<br />
17、在sybase用户目录下新建目录rs，用来存放配置文件。<br />
mkdir ~/rs<br />
18、从ASE-12_5/init/sample_resource_files目录下拷贝例子到rs目录下。<br />
cp ~/ASE-12_5/init/sample_resource_files/srvbuild.adaptive_server.rs ~/rs/db.rs<br />
cp ~/ASE-12_5/init/sample_resource_files/srvbuild.backup_server.rs ~/rs/backup.rs<br />
19、本例配置如下：<br />
db.rs：<br />
sybinit.release_directory: /opt/sybase-12.5.4<br />
sybinit.product: sqlsrv<br />
sqlsrv.server_name: db<br />
sqlsrv.new_config: yes<br />
sqlsrv.do_add_server: yes<br />
sqlsrv.network_protocol_list: tcp<br />
sqlsrv.network_hostname_list: 192.168.1.51<br />
sqlsrv.network_port_list: 5000<br />
sqlsrv.server_page_size: 8k<br />
sqlsrv.force_buildmaster: yes<br />
sqlsrv.master_device_physical_name: /sda/data/master.dat<br />
sqlsrv.master_device_size: 180<br />
sqlsrv.master_database_size: 160<br />
sqlsrv.errorlog: /opt/sybase-12.5.4/ASE-12_5/install/db.log<br />
sqlsrv.do_upgrade: no<br />
sqlsrv.sybsystemprocs_device_physical_name: /sda/data/sysprocs.dat<br />
sqlsrv.sybsystemprocs_device_size: 250<br />
sqlsrv.sybsystemprocs_database_size: 200<br />
sqlsrv.sybsystemdb_device_physical_name: /sda/data/sybsystemdb.dat<br />
sqlsrv.sybsystemdb_device_size: 50<br />
sqlsrv.sybsystemdb_database_size: 50<br />
sqlsrv.default_backup_server: SYB_BACKUP</p>
<p>
<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
</p>
<p>backup.rs：<br />
sybinit.release_directory: /opt/sybase-12.5.4<br />
sybinit.product: bsrv<br />
bsrv.server_name: SYB_BACKUP<br />
bsrv.new_config: yes<br />
bsrv.do_add_backup_server: yes<br />
bsrv.do_upgrade: no<br />
bsrv.network_protocol_list: tcp<br />
bsrv.network_hostname_list: 192.168.1.51<br />
bsrv.network_port_list: 5001<br />
bsrv.language: USE_DEFAULT<br />
bsrv.character_set: USE_DEFAULT<br />
bsrv.tape_config_file: USE_DEFAULT<br />
bsrv.errorlog: USE_DEFAULT<br />
sqlsrv.related_sqlsrvr: db<br />
sqlsrv.sa_login: sa<br />
sqlsrv.sa_password: USE_DEFAULT<br />
20、编译资源配置文件。<br />
srvbuildres -r ~/rs/db.rs<br />
srvbuildres -r ~/rs/backup.rs<br />
21、修改数据库字符集：<br />
cd ~/charsets/cp936/<br />
charset<br />
-Sda -Usa -P binary.srt cp936<br />
isql -Sda -Usa -P<br />
select id from syscharsets where name=&#8217;cp936&#8242;<br />
go<br />
@REM 找到 cp936对应的id，如171<br />
sp_configure &#8220;default character set id&#8221;,171<br />
go<br />
@REM 执行完成后退出isql，重启server两次<br />
@REM （注:第一次启动后，server会自动当掉，需要第二次重启后才能使用）</p>
<p>22、修改本地字符集：<br />
编辑sybase用户home目录下的locales目录下的locales.dat文件。<br />
vi ~/locales/locales.dat<br />
将[linux]段内的locale = default,us_english,cp936中的设置修改为指定设置即可。<br />
23、      使ASE与Linux操作系统一起启动：<br />
在/etc/rc.local中增加<br />
su -c &#8220;/opt/sybase-12.5.4/ASE-12_5/install/startserver -f /opt/sybase-12.5.4/ASE-12_5/install/RUN_db&#8221; &#8211; sybase &#038;<br />
sleep 10<br />
su -c&#8221;/opt/sybase-12.5.4/ASE-12_5/install/startserver -f /opt/sybase-12.5.4/ASE-12_5/install/RUN_SYB_BACKUP &#8221; &#8211; sybase &#038;<br />
sleep 1<br />
24、<br />
disk init name<br />
= &#8216;tempdb&#8217;,physname = &#8216;/sda/data/tempdb.dat&#8217;,size<br />
= &#8217;1024M&#8217;,cntrltype= 0,dsync = false<br />
go<br />
alter database tempdb on tempdb=1024 with override<br />
go</p>
<p>附sybase ase在linux上的支持情况及在rhel上安装时候的注意事项。</p>
<p>http://certification.sybase.com/ucr/platformResult.do;jsessionid=f29d5bc3AAB2xrPY=+dnbrkHaFM3wQ?platformId=117&#038;productId=2</p>
<p>ID 	Product 	Prod<br />
Version 	Prod<br />
Word Size 	OS Version 	Status<br />
1692 	Adaptive Server Enterprise 	12.5 	64-bit 	Red Hat EL 5.0 (AMD64/EM64T) 	Certified<br />
  
<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
General Notes:  	  	Due to recent changes in glibc, the environment variable LD_POINTER_GUARD should be set to 0 for ASE to function properly. This variable should be set before starting any ASE binary. Note that there is known bug with the configuration step of the ASE installer. Please use &#8220;srvbuild&#8221; or &#8220;srvbuildres&#8221; to configure devices. This bug will be fixed in a future release of ASE.<br />
Minimum Product Level :  	  	12.5.4<br />
Minimum Required OS Level :  	  	Redhat 5.0 (kernel-2.6.18-8.el5, glibc-2.5-12, compat-libstdc++-33-3.2.3-61)<br />
Following patches are required for GUI components to work correctly:<br />
xorg-x11-libs-6.7.0-2 (both x86_64 and i386)<br />
(http://rpm.pbone.net/index.php3/ &#8230; 7.0-2.i386.rpm.html and http://rpm.pbone.net/index.php3/ &#8230; 0-2.x86_64.rpm.html)<br />
openmotif-2.2.3-6.x86_64 (both x86_64 and i386) </p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/725.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ASE Sybase for Unixware安装步骤</title>
		<link>http://www.evanjiang.net.cn/archives/723.html</link>
		<comments>http://www.evanjiang.net.cn/archives/723.html#comments</comments>
		<pubDate>Thu, 05 Mar 2009 07:31:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[sco unix]]></category>
		<category><![CDATA[sybase]]></category>
		<category><![CDATA[Sybase for Unixware  安装步骤]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/archives/723.html</guid>
		<description><![CDATA[<p>一、        Unixware 7.1.1安装（CDROM安装）
1、        从CDROM安装引导启动Unixware CD-1（CDROM必须是Slot1或Slot2的Master）
2、        安装语言，选择Proceed with installation in English，回车继续
3、        Choose a zone for this system and press ;，选择Americas(Latin-1)，F10继续
4、        Choose [...]]]></description>
			<content:encoded><![CDATA[<p>一、        Unixware 7.1.1安装（CDROM安装）<br />
1、        从CDROM安装引导启动Unixware CD-1（CDROM必须是Slot1或Slot2的Master）<br />
2、        安装语言，选择Proceed with installation in English，回车继续<br />
3、        Choose a zone for this system and press <F10>;，选择Americas(Latin-1)，F10继续<br />
4、        Choose a Locale for this system and press <F10>;，选择C(English) ，F10继续<br />
5、        Keyboard，选择United States，F10继续<br />
6、        输入License Number、License Code、License Data，F10继续<br />
7、        提示插入HBA盘，将服务器的特殊设备驱动（如Raid、SCSI、网卡等，必须是Unixware的HBA格式软盘）插入A盘，选择Install HBA diskette，按F10装入驱动，重复此步骤直到所有的附加驱动装载完毕，选择Proceed with installation，F10继续<br />
8、        DCU设置，选择Do not enter the DCU(auto-configure drivers) ，F10继续<br />
9、        System Node Name，在Name:后输入本服务器的主机名称（必须字母打头，长度3-63个字符），F10继续<br />
10、        选择Install from CD-ROM，F10继续（如果此时仅出现Install from TCP network server、Install from SPX network server等，说明安装程序没有识别出CDROM，检查步骤7装载的CDROM驱动是否正确，并选择Cancel installation and shut down，重新启动后重复上述步骤，在步骤7的时候装入正确的CDROM驱动）<br />
11、        Disk Configuration，在Action处用F2选择Use whole disk for UNIX，指定所有硬盘空间用于Unixware，F10继续<br />
12、        文件系统配置，选择Customize filesystem and slices，按以下表格修改Swap slice的大小：<br />
服务器物理内存（MB）        Swap空间（MB）<br />
16        32<br />
64        75<br />
256        200<br />
1024        430<br />
4096        1330<br />
8192        2530<br />
在Filesystem and Raw Disk Slices表的Swap slice一行上，将Size的内容改为所需要的Swap空间尺寸（以MB为单位），F10继续<br />
<span id="more-723"></span><br />
13、        磁盘配置，选择Use default disk options，F10继续<br />
14、        Choose System Profile，选择Full (All Packages) ,F10继续<br />
15、        Select Network Adapter，如果屏幕已列出服务器所使用的网卡，选择Use network adapter list above，否则，选择Select from the full list of supported adapters，在随后的网卡列表中选择，F10继续<br />
16、        TCP/IP配置，输入服务器IP地址，其余均可为空，F10继续<br />
17、        IPX配置，按F8跳过<br />
18、        NIS配置，按F8跳过<br />
19、        输入当前的日期与时间，在Timezone上按F2选择Asia/Australasia，在后续屏幕上用PgDn翻到第二页，选择China，F10继续<br />
20、        安全级配置，选择Traditional，F10继续<br />
21、        System owner配置，System Owner name输入root，System Owner login name输入root，输入System Owner password，再次输入System Owner password，F10继续<br />
22、        确定root密码，输入并确认root密码，F10继续<br />
23、        有关License协议提示，选择Accept，F10继续<br />
24、        系统接着提示将进行安装，此时可按F3将以前所有的配置存入软盘，以后重新安装时，在步骤3之前可按F3读入该配置，以节省安装回答选择时间<br />
25、        系统安装完CD-1之后，将提示取出CDROM和软盘，并重新启动<br />
26、        启动完成后，选择响应的鼠标类型，然后提示继续安装CD-2，在安装过程中，系统系统将提示插入步骤7所使用的HBA软盘。CD-3上是一些附加的应用程序，当CD-2安装完成后可跳过CD-3的安装<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
二、        Unixware 7.1.1安装（软盘引导安装）<br />
1、        从Unixware 7.1.1 Boot Disk 1引导系统<br />
2、        安装语言，选择Proceed with installation in English，回车继续<br />
3、        Disk 1引导完成后，按系统提示，插入Unixware 7.1.1 Boot Disk 2，继续安装<br />
4、        Choose a zone for this system and press <F10>;，选择Americas(Latin-1)，F10继续<br />
5、        Choose a Locale for this system and press <F10>;，选择C(English) ，F10继续<br />
6、        Keyboard，选择United States，F10继续<br />
7、        输入License Number、License Code、License Data，F10继续<br />
8、        提示插入HBA盘，此时必须插入Unixware自带的默认HBA软盘，并选择Install HBA diskette，按F10装入，否则后继操作将无法继续<br />
9、        以后的安装步骤从CDROM安装的步骤7开始<br />
三、        Sybase安装前准备<br />
1、        用SCO Admin→Hardware→Video Manager将屏幕分辨率调整到1024&#215;768<br />
2、        通过控制面版的字体设置将屏幕字体调整为3号<br />
3、        用SCO Admin→Account Manager加入一个sybase用户组<br />
4、        用SCO Admin→Account Manager加入一个sybase用户，默认home directory为/home/sybase，login group为sybase<br />
5、        用sybase用户登录<br />
6、        通过控制面版的字体设置将屏幕字体调整为3号<br />
7、        用root登录<br />
8、        设置sybase用户登录选项：<br />
编辑并修改 /home/sybase/.env，增加两行：<br />
SYBASE /sybase<br />
DSQUERY sybserver        （其中sybserver代表SYBASE服务器名字，需要按实际情况修改，一般情况下SYBASE服务器名字与服务器主机名字相同）<br />
编辑并修改 /home/sybase/.dtprofile，将最后一行内容之前的#号去掉：<br />
# DTSOURCEPROFILE=true                                （将此行之前的#号去掉）<br />
编辑并修改 /home/sybase/.profile，在PATH=$PATH……行最后增加以下内容：<br />
 SYBASE SYBASE/install SYBASE/bin，修改后该行内容可能为：<br />
PATH=$PATH:/usr/sbin:/usr/java/bin:. SYBASE SYBASE/install SYBASE/bin<br />
并将该行以及该行之后的EXPORT PATH行移动到文件最后<br />
9、        设置root用户登录选项：<br />
编辑并修改 /.dtprofile，是其最后几行的内容如下所示：<br />
# DTSOURCEPROFILE=true<br />
SYBASE=/sybase<br />
DSQUERY=sybserver        （其中sybserver代表SYBASE服务器名字，需要按实际情况修改，一般情况下SYBASE服务器名字与服务器主机名字相同）<br />
PATH=$PATH SYBASE SYBASE/install SYBASE/bin<br />
export SYBASE DSQUERY PATH<br />
10、        建立SYBASE目录<br />
#cd /<br />
#mkdir /sybase<br />
#chown sybase /sybase<br />
#chgrp sybase /sybase<br />
11、        建立SYBASE安装目录（如果直接从CDROM安装SYBASE，可跳过此步骤）<br />
#cd /<br />
#mkdir /sybsetup<br />
#chown sybase /sybsetup<br />
#chgrp sybase /sybsetup<br />
以下步骤将使root具有FTP访问权限：<br />
a、        在SCO admin→Networking→FTP Server Manager中，选择View/Denied users，在列表中单击root行，选择Edit/Delete，删除该行<br />
b、        编辑并修改 /etc/shells，将其中 /sbin/sh 一行前的#号去掉<br />
在后台PC上用FTP登录服务器（用户为sybase），并将SYBASE安装盘所有文件及目录上传到 /sybsetup目录<br />
执行以下命令改变文件属性<br />
#cd /sybsetup<br />
#chmod 777 sybsetup<br />
#chmod 777 sybload<br />
12、        建立SYBASE数据文件目录（以后SYBASE系统内数据设备文件均存放在此目录下）<br />
#cd /<br />
#mkdir /sybdata<br />
#chown sybase /sybdata<br />
#chgrp sybase /sybdata<br />
13、        改变系统文件属性<br />
#cd /dev<br />
#chown sybase async<br />
#chgrp sybase async<br />
14、        系统参数调整，编辑并修改 /etc/conf/cf.d/stune，增加以下内容：<br />
SHMMNI        100<br />
SHMSEG        15<br />
SHMMAX        256000000        （该值为Unixware最大共享内存尺寸，以字节为单位，在SYBASE中所设置的“Total Memory”的值必须比该值略小，因此该数值一般为系统物理内存的70%~80%）<br />
SHMALL        2048<br />
NPROC        500<br />
ARG_MAX        51200<br />
SFNOLIM        400<br />
SFSZLIM        0x7FFFFFFF<br />
HFSZLIM        0x7FFFFFFF<br />
SDATLIM        0x7FFFFFFF<br />
HDATLIM        0x7FFFFFFF<br />
SCORLIM        0x7FFFFFFF<br />
HCORLIM        0x7FFFFFFF<br />
SVMMLIM        0x7FFFFFFF<br />
HVMMLIM        0x7FFFFFFF<br />
SSTKLIM        0x7FFFFFFF<br />
HSTKLIM        0x7FFFFFFF<br />
15、        重建内核<br />
#/etc/conf/bin/idbuild<br />
16、        重新启动系统<br />
#cd /<br />
#shutdown –y –g0 –i6<br />
四、        SYBASE安装<br />
1、        如果通过FTP已完成SYBASE安装盘的上传，可直接跳到步骤4<br />
2、        用root登录<br />
3、        建立CDROM映射（执行命令前必须先放入光盘）<br />
#mount /dev/cd0 /sybsetup<br />
4、        用sybase登录<br />
5、        执行安装<br />
%cd /sybsetup<br />
%sybsetup<br />
6、        检查SYBASE Directory下输入行内是否为 /sybase，如果不是，检查上述步骤关于环境变量SYBASE=/sybase的设置是否正确<br />
7、        选择Unload SYBASE Products from CD-ROM or tape<br />
8、        检查SYBASE安装目录是否为 /sybase，继续<br />
9、        选择Device Media为CDROM，并输入SYBASE安装文件为：<br />
/sybsetup/sybimage<br />
Installation Source Machine选择为Local，继续<br />
10、        选择安装产品为11.9.2 Adaptive Server Enterprise，继续<br />
11、        安装完成后，回到sybsetup主窗口<br />
12、        选择Build New Servers<br />
13、        选择Adaptive Server以及Backup Server，注意其名字默认为主机名称，一般情况下不要修改<br />
14、        按以下内容输入Adaptive Server安装选项，然后继续<br />
Master Device Path: /sybdata/master.dat<br />
Sybsystemprocs Device Path: /sybdata/systemprocs.dat<br />
Port number: 5000<br />
15、        按以下内容输入Backup Server安装选项，然后按Build Server继续<br />
Port number: 5001<br />
16、        安装完成后，回到sybsetup主窗口<br />
17、        选择Localize Adaptive Server，并选择Adaptive Server名称，按OK继续<br />
18、        输入sa密码（默认为空），继续<br />
19、        选择安装语言为Us English，字符集为Code Page 850，排序方式为Binary Sort Order for Code Page 850 (cp850)<br />
20、        编辑并修改/sybase/SYBSERVER.cfg（其中SYBSERVER为SYBASE服务器名称）<br />
total memory = xxxxx        (设置SYBASE可用内存，2KB单位，通常设为物理内存的50%~60%)<br />
enable cis = 1<br />
max cis remote connections = 0<br />
number of locks = 20000<br />
default network packet size = 2048<br />
number of user connections = 100<br />
max network packet size = 2048<br />
cpu grace time = 500<br />
max network listerns = DEFAULT<br />
number of open indexes = 2000<br />
number of open objects = 1000<br />
21、        停止并重新启动sybase服务器<br />
22、        用isql验证登录<br />
23、        用showserver显示Backup Server的名字，显示为……/sybase/bin/backupserver –Sxxxxx_back，其中的xxxxx_back即为Backup Server的名字<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
24、        启动isql，执行以下命令<br />
sp_configure ‘allow updates to system tables’,1<br />
go<br />
checkpoint<br />
go<br />
use master<br />
go<br />
update sysservers set srvnetname=’xxxxx_back’<br />
      where srvnetname=’SYB_BACKUP’<br />
go<br />
sp_configure ‘allow updates to system tables’,0<br />
go<br />
checkpoint<br />
go<br />
25、        如果配有磁带机，首先检查/dev/rmt目录是否存在，如果不存在需要安装SCSI驱动<br />
26、        启动isql，执行以下命令配置磁带机并验证<br />
sp_addumpdevice “tape”, tapedev, “/dev/rmt/ntape1”, x<br />
        (其中x为单盘磁带容量，M为单位，比实际容量略小一些)<br />
go<br />
dump database master to tapedev with init<br />
go</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/723.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sybase 11.0.3在SCOUNIX505C的安装步骤</title>
		<link>http://www.evanjiang.net.cn/archives/278.html</link>
		<comments>http://www.evanjiang.net.cn/archives/278.html#comments</comments>
		<pubDate>Wed, 21 Jan 2009 10:20:57 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[sco unix]]></category>
		<category><![CDATA[sybase]]></category>
		<category><![CDATA[scounix 安装sybase 步骤]]></category>

		<guid isPermaLink="false">http://www.hunttech.com.cn/wpblog/?p=278</guid>
		<description><![CDATA[<p>首先必须确定网卡已正确地配置在系统上。
2.以root登录，用scoadmin命令创建Sybase用户，组属为Sybase
确定上述二部骤无误之后，我们可以转入一阶段地安装工作。
3.login:root
# divvy
系统 子分区表（试举例）
+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;+-+&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+
&#124;Name    &#124;Type        &#124;New Fs&#124;#&#124;Fist Block &#124; Last Block &#124;
+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;+-+&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+
&#124;boot    &#124; EAFS       &#124;no    &#124;0&#124;0          &#124;19999       &#124;
&#124;swap  [...]]]></description>
			<content:encoded><![CDATA[<p>首先必须确定网卡已正确地配置在系统上。<br />
2.以root登录，用scoadmin命令创建Sybase用户，组属为Sybase<br />
确定上述二部骤无误之后，我们可以转入一阶段地安装工作。<br />
3.login:root<br />
# divvy<br />
系统 子分区表（试举例）<br />
+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;+-+&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+<br />
|Name    |Type        |New Fs|#|Fist Block | Last Block |<br />
+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;+-+&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+<br />
|boot    | EAFS       |no    |0|0          |19999       |<br />
|swap    | NON FS     |no    |1|20000      |109999      |<br />
|root    | HTFS       |no    |2|1100000    |709999      |<br />
|/u      | HTFS       |no    |3|7100000    |1309999     |<br />
|raw1    | NON FS     |no    |4|－         |－          |<br />
|raw2    | NON FS     |no    |5|－         |－          |<br />
|recover | NON FS     |no    |6|2110454    |2110463     |<br />
|hd0     | WHOLE DISK |no    |7|0          |2111471     |<br />
+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;+-+&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+<br />
raw1和raw2是Sybase的数据库设备实际存放的物理设备名称。raw1用来存放数据库，raw2用来存放事务日志。<br />
在这里我们正确地分配raw1和raw2的大小：<br />
假设我们定义raw1=600M, raw2=200m。<br />
<span id="more-278"></span><br />
nName or renawe a divishon<br />
cCredit a new file system on this divison<br />
tSelect or change filesystem type on new filesystem<br />
pPrevent a new file system from being crented on the division<br />
sStart a division on a different block<br />
eEnd a division on a different block<br />
rRestore the original division table<br />
Enter you choice or q to Quit_____ n ↙<br />
Whick division (o through 7)： 4 ↙<br />
What do your want to call it?：raw1 ↙<br />
定义起始块，按需要设定起始块：<br />
Enter you choice or q Quit： S ↙<br />
Whick division ? ：4 ↙<br />
Start number block：1310000 ↙<br />
（建议：boot 的大小为20MB，u文件系统的大小为500MB）<br />
同上，如此类推定义raw2后，屏幕应提示 </p>
<p>+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;+-+&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+<br />
|Name    |Type        |New Fs|#|Fist Block | Last Block |<br />
+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;+-+&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+<br />
|boot    | EAFS       |no    |0|0          |19999       |<br />
|swap    | NON FS     |no    |1|20000      |109999      |<br />
|root    | HTFS       |no    |2|1100000    |709999      |<br />
|/u      | HTFS       |no    |3|7100000    |1309999     |<br />
|raw1    | NON FS     |no    |4|1310000    |1910000     |<br />
|raw2    | NON FS     |no    |5|1910001    |2110001     |<br />
|recover | NON FS     |no    |6|2110454    |2110463     |<br />
|hd0     | WHOLE DISK |no    |7|0          |2111471     |<br />
+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;+-+&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;+<br />
Enter you choice or q to Quit q ↙<br />
系统提示：<br />
iInstall the division set_up shown<br />
rRetarn to the previous menu<br />
eexit without installing a division table<br />
Enter your choice or q to Quit i ↙<br />
然后，准备物理设备raw1, raw2，在root下将raw1, rraw1, raw2, rraw2的属性及组名更改为sybase，并且权限为666<br />
# cd dev ↙<br />
# chown sybase raw* rraw* ↙<br />
# chgrp sybase raw* rraw* ↙<br />
# chmod 666 raw* rraw* ↙<br />
然后退出以Sybase用户登录系统<br />
$ mkdir install ↙<br />
$ cd install ↙<br />
$ tar xv6 sco_kernel.scr ↙<br />
把光盘插入CD_ROM将它安装进文件系统，以root登录。<br />
# mount /dev/cd0 /mnt ↙<br />
再次以Sybase用户登录：<br />
$ cd /mnt<br />
$ sybload －D ↙<br />
current directory is &#8220;/mnt&#8221;设置安装的路径<br />
Is this the correct directory for installation?<br />
If so, Please enter &#8216;y&#8217; or &#8216;n&#8217; : n ↙<br />
Please specify the correct installation directory here<br />
A null entry will terminate this installation: /u/sybase ↙<br />
Current directory is &#8220;/u/Sybase&#8221;<br />
Is this the correct directory for installation?<br />
If so, Please enter &#8216;Y&#8217; or &#8216;Y&#8217; : y<br />
设置安装的方式：Is this a local or Remote in installation, as defined in your installation Guide?<br />
Please enter L for Local or R for Remote.<br />
> L ↙<br />
Please enter the full name of the disk file of the global archive : > /mnt/sybimage ↙<br />
Yor specified /mnt/sybimage for the media device, Is this correct? Please enter &#8216;y&#8217; or &#8216;Y&#8217; to continue: y<br />
紧跟随着系统将会提示你输入Sybase产品的序列号（CAS）：<br />
CAS：DVBYBY SOKOBY BYBYBD BYBKBK BZTWLO BJVL ↙<br />
正确输入序列号后，会提供一串可供安装的菜单项<br />
选择1：Sybase 11.0之后回车<br />
可把光盘上的Sybase安装至/u/Sybase之下。<br />
至此，Sybase已安装至硬盘上面，我们可以进行设置方面地工作。<br />
$ pwd ↙ $/mnt<br />
$ cd.. ↙ 退出mnt目录。<br />
首先, 要把在/mnt下的sybase拆卸掉,我们以root登录,执行# umount /dev/cd0 ↙ 即可<br />
然后# cd /u/sybase/install ↙ “设置环境变量”<br />
# SYBASE = /u/sybase; export SYBASE ↙<br />
增大SHMMAX的大小<br />
# 重新链接内核 sh ./sco_kernel.scr sybase ↙<br />
# cd /etc/conf/cf.d ↙<br />
# vi stune<br />
删掉MAXPMEM 0该行后，存盘退出<br />
# vi mtune<br />
修改NAIOHBUF该行，将50修改成500后，存盘退出<br />
# cd /etc/conf/pack.d /itimer ↙<br />
# cp space.c.presyb space.c ↙<br />
# vi space.c<br />
修改该行int alarm_accuracy设为等于-1；<br />
# cd /usr/lib<br />
# cp aiomemlock. presyb aiomemlock ↙<br />
# vi aiomemlock （在该文件末增加一行sybase 28000000）<br />
# cd /etc/conf/sdevice.d<br />
# vi aio<br />
将该文件重覆的两行删掉一行后，存盘退出<br />
# vi suds<br />
将suds该行的N，改为Y后存盘退出<br />
# cd /etc/rc2.d<br />
# vi S99*<br />
在#字符下一行的行首加入一句： /etc/suds_ctrl -a 100<br />
该100为Sybase的组号，做完此步之后<br />
链接内核重新启动后，重新进入Sybase用户<br />
$ cd install<br />
$ sybinit<br />
此时，请参考附页1，将参数设置正确，提示安装成功即可。 </p>
<p>附页1 </p>
<p>注：在下文中每屏信息由横线隔开，在<>中在值为输入值，MASTER设备为raw1.<br />
Sybase的主目录为/u/sybase </p>
<p>SYBINIT </p>
<p>1. Release directory: /u/sybase </p>
<p>2. Edit / View Interfaces File </p>
<p>3. Configure a Server product<br />
4. Configure an Open Client/Server product<br />
5. Configure a Front End product </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return: <3><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>CONFIGURE SERVER PRODUCTS </p>
<p>Product Date Installed Date Configured<br />
1. SQL Server Jun 09 96 14:35 Jun 13 96 17:30<br />
2. Backup Server Jun 09 96 14:35 Jun 13 96 17:32 </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return: <1><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
NEW OR EXISTING SQL SERVER </p>
<p>1. Configure a new SQL Server<br />
2. Configure an existing SQL Server </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return: <1><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>ADD NEW SQL SERVER </p>
<p>1. SQL Server name:SYBASE </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the name of the new SQL Server (default is &#8216;SYBASE&#8217;): <SYBASE><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>ADD NEW SQL SERVER </p>
<p>1. SQL Server name:SYBASE </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>SQL SERVER CONFIGURATION </p>
<p>1. CONFIGURE SERVER&#8217;S INTERFACES FILE ENTRY Incomplete </p>
<p>2. MASTER DEVICE CONFIGURATION Incomplete<br />
3. SYBSYSTEMPROCS DATABASE CONFIGURATION Incomplete<br />
4. SET ERRORLOG LOCATION Incomplete<br />
5. CONFIGURE DEFAULT BACKUP SERVER Incomplete </p>
<p>6. CONFIGURE LANGUAGES Incomplete<br />
7. CONFIGURE CHARACTER SETS Incomplete<br />
8. CONFIGURE SORT ORDER Incomplete </p>
<p>9. ACTIVATE AUDITING Incomplete </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<1><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>SERVER INTERFACES FILE ENTRY SCREEN </p>
<p>Server name: SYBASE </p>
<p>1. Retry Count: 0<br />
2. Retry Delay: 0 </p>
<p>3. Add a new listener service </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<1><br />
Enter the retry count (default is &#8217;0&#8242;): <3><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>SERVER INTERFACES FILE ENTRY SCREEN </p>
<p>Server name: SYBASE </p>
<p>1. Retry Count: 3<br />
2. Retry Delay: 0 </p>
<p>3. Add a new listener service </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<2><br />
Enter the delay interval between retries (default is &#8217;0&#8242;): <3><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>SERVER INTERFACES FILE ENTRY SCREEN </p>
<p>Server name: SYBASE </p>
<p>1. Retry Count: 3<br />
2. Retry Delay: 3 </p>
<p>3. Add a new listener service </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<3><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>EDIT TCP SERVICE </p>
<p>1. Hostname/Address: credit.credit.COM<br />
2. Port:<br />
3. Name Alias: </p>
<p>4. Delete this service from the interfaces entry </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<2><br />
Enter the port number to use for this entry (default is &#8221;):<7371><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
EDIT TCP SERVICE </p>
<p>1. Hostname/Address: credit.credit.COM<br />
2. Port: 7371<br />
3. Name Alias: </p>
<p>4. Delete this service from the interfaces entry </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
Is this information is correct? <y><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>SERVER INTERFACES FILE ENTRY SCREEN </p>
<p>Server name: SYBASE </p>
<p>1. Retry Count: 3<br />
2. Retry Delay: 3 </p>
<p>3. Add a new listener service </p>
<p>Modify or delete a service </p>
<p>Listener services available: </p>
<p>Protocol Address Port Name Alias<br />
4. tcp credit.credit.COM 7371 </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
Write the changes to the interfaces file now?<y><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>SQL SERVER CONFIGURATION </p>
<p>1. CONFIGURE SERVER&#8217;S INTERFACES FILE ENTRY Complete </p>
<p>2. MASTER DEVICE CONFIGURATION Incomplete<br />
3. SYBSYSTEMPROCS DATABASE CONFIGURATION Incomplete<br />
4. SET ERRORLOG LOCATION Incomplete<br />
5. CONFIGURE DEFAULT BACKUP SERVER Incomplete </p>
<p>6. CONFIGURE LANGUAGES Incomplete<br />
7. CONFIGURE CHARACTER SETS Incomplete<br />
8. CONFIGURE SORT ORDER Incomplete </p>
<p>9. ACTIVATE AUDITING Incomplete </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<2><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>MASTER DEVICE CONFIGURATION </p>
<p>1. Master Device: </u/sybase/master.dat> </p>
<p>2. Size (Meg): 29.299805<br />
(建议：Master Device最好放在裸设备/dev/rraw1下) </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<1><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>MASTER DEVICE CONFIGURATION </p>
<p>1. Master Device: </u/sybase/data/master.dat><br />
2. Size (Meg): 29.299805 </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<2><br />
Enter the size of the SQL sever&#8217;s master device in megabutes：40<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>MASTER DEVICE CONFIGURATION </p>
<p>1. Master Device: </u/sybase/data/master.dat><br />
2. Size (Meg): 40 </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
SQL SERVER CONFIGURATION </p>
<p>1. CONFIGURE SERVER&#8217;S INTERFACES FILE ENTRY Complete </p>
<p>2. MASTER DEVICE CONFIGURATION Complete<br />
3. SYBSYSTEMPROCS DATABASE CONFIGURATION Incomplete<br />
4. SET ERRORLOG LOCATION Incomplete<br />
5. CONFIGURE DEFAULT BACKUP SERVER Incomplete </p>
<p>6. CONFIGURE LANGUAGES Incomplete<br />
7. CONFIGURE CHARACTER SETS Incomplete<br />
8. CONFIGURE SORT ORDER Incomplete </p>
<p>9. ACTIVATE AUDITING Incomplete </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<3><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p>
<p>SYBSYSTEMPROCS DATABASE CONFIGURATION </p>
<p>1. sybsystemprocs database size (Meg): 16 </p>
<p>2. sybsystemprocs logical device name: sysprocsdev </p>
<p>3. create new device for the sybsystemprocs database: yes </p>
<p>4. physical name of new device: </p>
<p>5. size of the new device (Meg): 16 </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<4><br />
Enter the physical device name for the sybsystemprocs database: </u/sybase/data/sysprocs.dat><br />
（建议：sybsystemprocs database放在裸设备/dev/rraw2下）<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p>
<p>SYBSYSTEMPROCS DATABASE CONFIGURATION </p>
<p>1. sybsystemprocs database size (Meg): 16 </p>
<p>2. sybsystemprocs logical device name: sysprocsdev </p>
<p>3. create new device for the sybsystemprocs database: yes </p>
<p>4. physical name of new device: /u/sybase/data/sysprocs.dat </p>
<p>5. size of the new device (Meg): 16 </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>SQL SERVER CONFIGURATION </p>
<p>1. CONFIGURE SERVER&#8217;S INTERFACES FILE ENTRY Complete </p>
<p>2. MASTER DEVICE CONFIGURATION Complete<br />
3. SYBSYSTEMPROCS DATABASE CONFIGURATION Complete<br />
4. SET ERRORLOG LOCATION Incomplete<br />
5. CONFIGURE DEFAULT BACKUP SERVER Incomplete </p>
<p>6. CONFIGURE LANGUAGES Incomplete<br />
7. CONFIGURE CHARACTER SETS Incomplete<br />
8. CONFIGURE SORT ORDER Incomplete </p>
<p>9. ACTIVATE AUDITING Incomplete </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<4><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p>
<p>SET ERRORLOG LOCATION </p>
<p>1. SQL Server errlrlog: /u/sybase/install/errorlog </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p>
<p>SQL SERVER CONFIGURATION </p>
<p>1. CONFIGURE SERVER&#8217;S INTERFACES FILE ENTRY Complete </p>
<p>2. MASTER DEVICE CONFIGURATION Complete<br />
3. SYBSYSTEMPROCS DATABASE CONFIGURATION Complete<br />
4. SET ERRORLOG LOCATION Complete<br />
5. CONFIGURE DEFAULT BACKUP SERVER Incomplete </p>
<p>6. CONFIGURE LANGUAGES Incomplete<br />
7. CONFIGURE CHARACTER SETS Incomplete<br />
8. CONFIGURE SORT ORDER Incomplete </p>
<p>9. ACTIVATE AUDITING Incomplete </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<5><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p>
<p>SET THE SQL SERVER&#8217;S BACKUP SERVER </p>
<p>1. SQL Server Backuup Server name: SYB_BACKUP </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>SQL SERVER CONFIGURATION </p>
<p>1. CONFIGURE SERVER&#8217;S INTERFACES FILE ENTRY Complete </p>
<p>2. MASTER DEVICE CONFIGURATION Complete<br />
3. SYBSYSTEMPROCS DATABASE CONFIGURATION Complete<br />
4. SET ERRORLOG LOCATION Complete<br />
5. CONFIGURE DEFAULT BACKUP SERVER Complete </p>
<p>6. CONFIGURE LANGUAGES Incomplete<br />
7. CONFIGURE CHARACTER SETS Incomplete<br />
8. CONFIGURE SORT ORDER Incomplete </p>
<p>9. ACTIVATE AUDITING Incomplete </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<6><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p>
<p>CONFIGURE LANGUAGES </p>
<p>Current default language: us_english<br />
Current default character set: ISO 8859-1 (Latin-1) &#8211; Westen European<br />
8-bitcharacter set.<br />
Current sort order: Binary ordering, for the ISO 8859/1 or Latin-1<br />
character set (iso_1). </p>
<p>Select the language you want to install, remove, or designate as the default<br />
language. </p>
<p>Language Installed? Remove Install Make default<br />
1. us_english yes no no yes </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a> </p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>SQL SERVER CONFIGURATION </p>
<p>1. CONFIGURE SERVER&#8217;S INTERFACES FILE ENTRY Complete </p>
<p>2. MASTER DEVICE CONFIGURATION Complete<br />
3. SYBSYSTEMPROCS DATABASE CONFIGURATION Complete<br />
4. SET ERRORLOG LOCATION Complete<br />
5. CONFIGURE DEFAULT BACKUP SERVER Complete </p>
<p>6. CONFIGURE LANGUAGES Complete<br />
7. CONFIGURE CHARACTER SETS Incomplete<br />
8. CONFIGURE SORT ORDER Incomplete </p>
<p>9. ACTIVATE AUDITING Incomplete </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<7><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p>
<p>CONFIGURE CHARACTER SETS </p>
<p>Current default language: us_english<br />
Current default character set: ISO 8859-1 (Latin-1) &#8211; Westen European<br />
8-bitcharacter set.<br />
Current sort order: Binary ordering, for the ISO 8859/1 or Latin-1<br />
character set (iso_1). </p>
<p>Select the character set you want to install, remove, or designate as the<br />
default character set. </p>
<p>Character set Installed? Remove Install Make default<br />
1. ASCII, for use with unsp yesno no no<br />
2. Code Page 437, (United S nono no no<br />
3. Code Page 850 (Multiling nono no no<br />
4. ISO 8859-1 (Latin-1) &#8211; W yesno no yes<br />
5. Macintosh default charac nono no no<br />
6. Hewlett-Packard propriet nono no no </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>SQL SERVER CONFIGURATION </p>
<p>1. CONFIGURE SERVER&#8217;S INTERFACES FILE ENTRY Complete </p>
<p>2. MASTER DEVICE CONFIGURATION Complete<br />
3. SYBSYSTEMPROCS DATABASE CONFIGURATION Complete<br />
4. SET ERRORLOG LOCATION Complete<br />
5. CONFIGURE DEFAULT BACKUP SERVER Complete </p>
<p>6. CONFIGURE LANGUAGES Complete<br />
7. CONFIGURE CHARACTER SETS Complete<br />
8. CONFIGURE SORT ORDER Incomplete </p>
<p>9. ACTIVATE AUDITING Incomplete </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<8><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p>
<p>CONFIGURE SORT ORDER<br />
Current default language: us_english<br />
Current default character set: ISO 8859-1 (Latin-1) &#8211; Westen European<br />
8-bitcharacter set.<br />
Current sort order: Binary ordering, for the ISO 8859/1 or Latin-1<br />
character set (iso_1). </p>
<p>Select a sort order. </p>
<p>SortOrder Chosen<br />
1. Binary ordering, for the ISO 8859/1 or Latin-1 characterset set (is yes<br />
2. General purpose dictionary ordering. no<br />
3. Dictionary order, case insensitive, accent insensitive. no<br />
4. Dictionary order, case insensitive. no<br />
5. Dictionary order, case insensitive with preference. no </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p>
<p>SQL SERVER CONFIGURATION </p>
<p>1. CONFIGURE SERVER&#8217;S INTERFACES FILE ENTRY Complete </p>
<p>2. MASTER DEVICE CONFIGURATION Complete<br />
3. SYBSYSTEMPROCS DATABASE CONFIGURATION Complete<br />
4. SET ERRORLOG LOCATION Complete<br />
5. CONFIGURE DEFAULT BACKUP SERVER Complete </p>
<p>6. CONFIGURE LANGUAGES Complete<br />
7. CONFIGURE CHARACTER SETS Complete<br />
8. CONFIGURE SORT ORDER Complete </p>
<p>9. ACTIVATE AUDITING Incomplete </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<9><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p>
<p>ACTIVATE AUDITING </p>
<p>1. Install auditing: no </p>
<p>2. sybsecurity database size (Meg): 5 </p>
<p>3. sybsecurity logical device name: sybsecurity </p>
<p>4. creat new device for the sybsecurity database: no </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a> </p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p>
<p>SQL SERVER CONFIGURATION </p>
<p>1. CONFIGURE SERVER&#8217;S INTERFACES FILE ENTRY Complete </p>
<p>2. MASTER DEVICE CONFIGURATION Complete<br />
3. SYBSYSTEMPROCS DATABASE CONFIGURATION Complete<br />
4. SET ERRORLOG LOCATION Complete<br />
5. CONFIGURE DEFAULT BACKUP SERVER Complete </p>
<p>6. CONFIGURE LANGUAGES Complete<br />
7. CONFIGURE CHARACTER SETS Complete<br />
8. CONFIGURE SORT ORDER Complete </p>
<p>9. ACTIVATE AUDITING Complete </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
Execute the SQL Server Configuration now?<y><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p>
<p><在这需要等5分钟,可出如下提示> </p>
<p>Running task to create the master device.<br />
Building the master device<br />
&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;..Done<br />
Task to create the msster device succeeded.<br />
Running task jto boot the SQL Server.<br />
Task to boot the SQL Server succeeded.<br />
Running task to create the sybsystemprocs database.<br />
sybsystemprocs database created.<br />
Task to created the sybsystemprocs database succeeded.<br />
Running task to install system stored procedures.<br />
&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;.<br />
&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;..<br />
Task to install system stored procedures succeeded.<br />
Running task to set permissions for the &#8216;model&#8217; database.<br />
.Done<br />
Task to set permissions for the &#8216;model&#8217; database succeeded.<br />
Running task to set the default character set and/or default sort order for the<br />
SQL Server.<br />
Setting the default character set to iso_1<br />
Sort order &#8216;binary&#8217; has already been installed.<br />
Character set &#8216;iso_1&#8242; is already is default.<br />
Sort order &#8216;binary&#8217; is already the default.<br />
Task to set the default character set and/or default sort order for the SQL<br />
Server succeeded.<br />
Running task to set the default language.<br />
Setting the default language to us_english.<br />
Language &#8216;us_english&#8217; is already the default.<br />
Task to set the default language succeeded. </p>
<p>Configuration completed successfully.<br />
Press <return> to continue.<CR> </p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; </p>
<p>NEW OR EXISTING SQL SERVER </p>
<p>1. Configure a new SQL Server<br />
2. Configure an existing SQL Server </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; </p>
<p>CONFIGURE SERVER PRODUCTS </p>
<p>Product Date Installed Date Configured<br />
1. SQL Server Jun 09 96 14:35 Jun 13 96 17:30<br />
2. Backup Server Jun 09 96 14:35 Jun 13 96 17:32 </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return: <2><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>NEW OR EXISTING BACKUP SERVER </p>
<p>1. Configure a new Backup Server<br />
2. Configure an existing Backup Server </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return: <1><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>ADD NEW BACKUP SERVER </p>
<p>1. Backup Server name:SYB_BACKUP </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return: <ctrl-a><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>BACKUP SERVER CONFIGURATION </p>
<p>1. Backup Server errorlog: /u/sybase/install/backup.log<br />
2. Enter / Modify Backup Server interfaces file information </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return: <2><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
SERVER INTERFACES FILE ENTRY SCREEN </p>
<p>Server name: SYB_BACKUP </p>
<p>1. Retry Count: 0<br />
2. Retry Delay: 0 </p>
<p>3. Add a new listener service </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<1><br />
Enter the retry count (default is &#8217;0&#8242;): <3><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>SERVER INTERFACES FILE ENTRY SCREEN </p>
<p>Server name: SYB_BACKUP </p>
<p>1. Retry Count: 3<br />
2. Retry Delay: 0 </p>
<p>3. Add a new listener service </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<2><br />
Enter the delay interval between retries (default is &#8217;0&#8242;): <3><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>SERVER INTERFACES FILE ENTRY SCREEN </p>
<p>Server name: SYB_BACKUP </p>
<p>1. Retry Count: 3<br />
2. Retry Delay: 3 </p>
<p>3. Add a new listener service </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<3><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>EDIT TCP SERVICE </p>
<p>1. Hostname/Address: credit.credit.COM<br />
2. Port:<br />
3. Name Alias: </p>
<p>4. Delete this service from the interfaces entry </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<2><br />
Enter the port number to use for this entry (default is &#8221;):<7372><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>EDIT TCP SERVICE </p>
<p>1. Hostname/Address: credit.credit.COM<br />
2. Port: 7372<br />
3. Name Alias: </p>
<p>4. Delete this service from the interfaces entry </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
Is this information is correct? <y><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>SERVER INTERFACES FILE ENTRY SCREEN </p>
<p>Server name: SYB_BACKUP </p>
<p>1. Retry Count: 3<br />
2. Retry Delay: 3 </p>
<p>3. Add a new listener service </p>
<p>Modify or delete a service </p>
<p>Listener services available: </p>
<p>Protocol Address Port Name Alias<br />
4. tcp credit.credit.C 7372 </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
Write the changes to the interfaces file now?<y><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>BACKUP SERVER CONFIGURATION </p>
<p>1. Backup Server errorlog: /u/sybase/install/backup.log<br />
2. Enter / Modify Backup Server interfaces file information </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
Execute the Backup Server configuration now?<y><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>Running task to update the Backup Server runserver file.<br />
Task jto update the Backup Server runserver file succeeded.<br />
Running task to boot the Backup Serve.<br />
waiting for server &#8216;SYB_BACKUP&#8217; to boot&#8230;<br />
Task to boot the Backup Server succeeded. </p>
<p>Configuration completed successfully. </p>
<p>Press <return> to continue. </p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>NEW OR EXISTING BACKUP SERVER </p>
<p>1. Configure a new Backup Server<br />
2. Configure an existing Backup Server </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ?Help </p>
<p>Enter the number of your choice and press return:<ctrl-a><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; </p>
<p>CONFIGURE SERVER PRODUCTS </p>
<p>Product Date Installed Date Configured<br />
1. SQL Server Jun 09 96 14:35 Jun 13 96 17:30<br />
2. Backup Server Jun 09 96 14:35 Jun 13 96 17:32 </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return: <ctrl-a><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p>
<p>SYBINIT </p>
<p>1. Release directory: /u/sybase </p>
<p>2. Edit / View Interfaces File </p>
<p>3. Configure a Server product<br />
4. Configure an Open Client/Server product<br />
5. Configure a Front End product </p>
<p>Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help. </p>
<p>Enter the number of your choice and press return: <ctrl-a><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </p>
<p>Exiting.<br />
The log file for this session is &#8216;/u/sybase/init/logs/log0613.024&#8242;.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/278.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>sybase 数据库知识</title>
		<link>http://www.evanjiang.net.cn/archives/138.html</link>
		<comments>http://www.evanjiang.net.cn/archives/138.html#comments</comments>
		<pubDate>Fri, 19 Dec 2008 13:55:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[sybase]]></category>
		<category><![CDATA[sybase 数据库 知识]]></category>

		<guid isPermaLink="false">http://www.hunttech.com.cn/wpblog/?p=138</guid>
		<description><![CDATA[<p> </p>
<p class="MsoNormal" align="left">Sybase11.5数据库介绍4
1．基本概念4
1.1、Sybase11.54
1.2、数据库服务器、数据库4
1.3、物理设备、逻辑设备4
1.4、系统表、系统存储过程5
2．常用命令6
2.1、isql6
2.2、Select7
3．数据库启动7
3.1、自动启动7
3.2、手工启动7
3.3、检查数据库系统是否启动7
4．数据库关闭7
4.1、自动关闭7
4.2、手工关闭8
5．备份9
6．恢复9
7．日志文件9
7.1、数据库事务日志(transactionlog)9
7.2、数据库错误日志&#8211;$SYBASE/install/*.log10
7.3、网管日志（告警、性能、操作、系统日志）10
8．常见错误10
9．习题10
</p>
<p class="MsoNormal" align="left">
Sybase11.5数据库介绍
1．基本概念
1.1、Sybase11.5
Sybase11.5是Sybase公司的最新版关系数据库，具有先进的技术、优异的性能和可靠的安全性。SBSTMMN-RMS网管系统选用了Sybase11.5作为后台数据库系统，管理和处理网管系统的数据。
由于数据库系统管理的是一个动态的数据集合，必须对数据库进行一些日常维护操作，如备份、恢复等。
1.2、数据库服务器、数据库
安装在SunSolaris操作系统上的Sybase-11.5数据库系统通常是由数据库服务器和备份服务器组成的。数据库是安装在数据库服务器上的数据集合，包括系统数据库和用户数据库，如系统安装完以后缺省安装了master、model、tempdb、和sybsystemprocs数据库，网管系统的数据库是mib。其中master数据库存放系统表，决定数据库的整体表现和用户数据库的信息；model是建立新的用户数据库的摸板；tempdb存放临时表和查询时产生的临时数据；sybsystemprocs存放数据库的系统存储过程。
备份服务器用于数据库的备份。
1.3、物理设备、逻辑设备
数据库服务器管理着许多逻辑设备，系统数据库和用户数据库就建立在这些逻辑设备上。逻辑设备对应与操作系统的物理设备。物理设备有字符设备（也叫裸设备，没有缓冲，如/dev/rdsk/c0t3d0s5）和块设备（经过了缓冲，如/usr/local/sybase/master.dat）。一般选用没有缓冲的字符设备。
1.4、系统表、系统存储过程
master数据库存放着一些决定系统整体表现的系统表，sybsystemprocs存放系统存储过程。这些系统表和系统存储过程是我们进行数据库维护的手段和工具。
1.4.1、重要的系统表
信息系统表
用户帐号syslogins
当前进程sysprocesses
配置信息sysconfigures
系统错误信息sysmessages
数据库服务器里的数据库sysdatabases
每个数据库分配的空间和使用sysusages
系统的设备sysdevices
当前激活的锁syslocks
字符集syscharsets
语言syslanguages</p>
<p>1.4.2、重要的系统存储过程
sp_addlogin
sp_addumpdevice
sp_adduser
sp_configure
sp_gropdevice
sp_help
sp_helpdb
sp_helpindex
sp_helpdevice
sp_monitor
sp_password
sp_who
2．常用命令
2.1、isql
isql是sybase的一个前台工具，所有的sql查询语言和系统存储过程必须在isql下执行。在Unix的命令行下可以启动isql，命令格式如下：
isql–S&#60;数据库服务器&#62;;-U&#60;用户名&#62;;-P&#60;口令&#62;;
数据库服务器、用户名和口令可以从$RMSROOT/ini/rms.ini的文件中查到，下面是这个文件内容的示例：
LANGUAGE=en
RESOURCE=RMSAppE
DATASERVERTYPE=Sybase
DATASERVERNAME=SYB
DBADMINUSER=sa
DBADMINUSERPASSWD=sybaseadm
DBUSER=rmsuser
DBUSERPASSWD=password
DBNAME=mib
MSQKEY=1997
其中SYBDNP是数据库服务器，sa,sybaseadm分别是数据库超级用户的用户名和口令，rmsuser,password分别是一般用户的用户名和口令。</p>
<p class="MsoNormal">
sybase数据库知识</p>
<p class="MsoNormal" align="left">2.2、Select
从数据库的表中查询数据用select，它是在isql下执行的。
如：
select*fromsysdatabaseswheredbid=1
查询master数据库的信息。
3．数据库启动
3.1、自动启动
数据库在操作系统启动时，一般能够自动启动。
3.2、手工启动
在异常情况下，或者对数据库进行维护时，可以用手工启动数据库：
/etc/rc3.d/SxxSYBASE.server
3.3、检查数据库系统是否启动
用下面的命令可以检查数据库服务器是否启动：
$SYBASE/install/showserver
如果数据库服务器和备份服务器已经启动，则应该输出两条记录，如：
UIDPIDPPIDCSTIMETTYTIMECMD
root25625507月20?5:01/usr/local/sybase/bin/dataserver-sSYBDNP
root25725507月20?5:01/usr/local/sybase/bin/backupserver-SSYBDNP
4．数据库关闭
4.1、自动关闭
当操作系统关闭时，数据库服务器也会自动关闭
4.2、手工关闭
4.2.1、用shutdown命令手工在isql下
在isql下用select*fromsysservers找出运行的数据库服务器，如：
1&#62;;select*fromsysservers
2&#62;;go
srvidsrvstatussrvname
srvnetnamesrvclass
srvsecmech
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;
18SYB_BACKUP
SYBDNP_back1
NULL
28local
SYBDNP1
NULL








(2rowsaffected)
则用：
shutdownSYB_BACKUP
和
shutdown
分别关闭备份服务器和数据库服务器。
4.2.2、用kill杀掉数据库的进程
这是数据库运行不正常，用shutdown不能关闭情况下的紧急办法，不推荐该办法。
如在Unix命令行下运行：
kill255
kill256
5．备份
数据库备份用来周期性地备份系统使用的数据库，以便在出现系统故障或意外事故时，能顺利地将系统恢复到备份时的状态。
dumpdatabase&#60;数据库&#62;;to&#8221;&#60;设备名&#62;;&#8221;capacity=&#60;设备容量&#62;;,dumpvolume=&#60;卷标&#62;;withinit
6．恢复
一般情况下不使用该操作，如果因系统故障或者意外事故破坏了数据库，或者在重装系统后希望恢复到重装前的状态，则通过采用以前的备份来恢复数据库。
loaddatabase&#60;数据库&#62;;from&#8221;&#60;设备名&#62;;&#8221;
7．日志文件
日志文件(log)是记录系统运行情况的重要文件，在系统维护中起着重要作用。
7.1、数据库事务日志(transactionlog)
是数据库运行过程产生的，所有对数据库的写操作，都会在数据库事务日志里做记录。这样就可以保证数据的完整性，也是数据库备份和恢复的基础。该日志的内容对用户不可见，但其容量回随着系统的运行逐步增加，当其容量接近满时，就会阻塞系统的运行。
网管系统设置了对数据库事务日志的自动清除，当数据库事务日志的容量接近满时，就自动清除。
7.2、数据库错误日志&#8211;$SYBASE/install/*.log
记录数据库运行中的错误，对于用户可见。
7.3、网管日志（告警、性能、操作、系统日志）
记录网关运行中的情况。</p>
<p>8．常见错误
Q:数据库阻塞，报告数据库日志满
dumptransaction[数据库名]withtrancate_only
如果还不行，可用：
dumptransaction[数据库名]withno_log
Q:数据库不能正常启动，报告共享内存不够
A:删除$SYBASE下的*.krg,*.srg0文件
9．习题
9.1数据库服务器上的master、sybsystemprocs和mib数据库分别起什么作用？
Master数据库控制整个数据库服务器的运行，并且存储其他用户数据库极其设备信息。Master数据库是在一些系统表里面存储这些信息的。
Sybsystemprocs数据库存放系统存储过程。
Mib是存储和处理SBSRMS网管信息的数据库。
9.2数据库的物理设备是选用字符设备还是块设备好？为什么？
数据库的物理设备选用没有缓冲的字符设备好。这样能减少数据库损坏的可能。
9.3查看数据库服务器上的数据库、逻辑设备、设备使用情况分别需要查询什么系统表？并写出其中一个查询命令。
分别查询sysdatabases,sysdebices,sysusages系统表。如：
select*fromsysdatases
9.4如何手工启动数据库服务器？如何检查数据库服务器是否启动？
用/etc/rc3.d/SxxSYBASE.server启动数据库服务器。用$SYBASE/install/showserver可以检查数据库是否启动。
9.5如何手工关闭数据库服务器？
用shutdown或kill可以手工关闭数据库服务器
9.6如何备份数据库？
dumpdatabase[数据库名]to&#8221;设备名&#8221;
9.7如何查询数据库的错误？需要查询哪个日志文件？
可以检查$SYBASE/install/*.log
9.8如何在数据库事务日志满后手工清除？
dumptransactionmibwithtruncate_only或
dumptransactionmibwithno_log</p>
<p class="MsoNormal" align="left">sybase数据库知识</p>
<p class="MsoNormal" align="left">目录</p>
<p>一、数据库系统（DATABASESYSTEM）的组成
1．计算机系统
2．数据库
3．数据库管理系统（DBMS）
4．应用程序和用户
二、数据模型的基本概念
1.关系数据模型
2.层次数据模型
3．网状数据模型
三、SYBASE数据库简介
1．版本
2．SYBASE数据库的特点
3．SYBASE数据库的组成
四、SYBASE有关概念
1．数据库设备
2．系统数据库
（1）master数据库
（2）model数据库
（3）sybsystemprocs数据库
（4）临时数据库tempdb
（5）安全审核数据库sybsecurity
（6）示例数据库pubs2
（7）命令语法数据库sybsyntax
3．数据库对象
（1）表(Tables)
（2）视图(Views)
（3）索引(Index)
（4）存储过程(Storedprocedures)
（5）触发器(Triggers)
（6）缺省与规则(Defaultsandrules)
4．SQLSERVER的用户及权限
（1）建立SQL服务器用户名（登录帐号）
（2）增加数据库用户名
5．SQLSERVER的启动与关闭
(1)启动
(2)关闭
(3)启动过程
(4)Sybase数据库目录说明
五、T-SQL语言
1．标准的SQL语言
(1)数据定义语句（DLL）
(2)数据操作语句(DML)
(3)数据控制语言(DCL)
2．函数
六、数据库备份与恢复
1．系统软件故障恢复
2．介质故障的恢复
（1）备份数据库和事务日志
（2）恢复数据库
七、几个实用程序
1.BCP
2.ISQL
3．SHOWSERVER
4．STARTSERVER
5．SYMAN
6．SYBINIT
八、SQL客户端软件
1.DOS状态下SQL客户端软件
2．WINDOWS3.2状态下SQL客户端软件
练习题
附录
附录1只有在MASTER数据库中才能有的系统表
附录2在用户数据库和系统数据库中都有的系统表
附录3由SQLSERVER提供的系统过程功能和执行权限
附录4常用SQL命令
附录5例子数据库
附录6练习题答案</p>
<p>SYBASE数据库
一、数据库系统（Databasesystem）的组成
数据库系统是用于组织和存取大量数据的管理系统，方便多用户使用计算机软、硬件资源组成的系统。它与文件系统的重要区别是数据的充分共享、交叉访问以及与应用（程序）的高度独立性。
数据库系统由计算机系统、数据库、数据库描述、数据库管理系统、数据库应用程序和用户组成。
1．计算机系统
计算机系统指的是用于数据库管理的计算机硬件资源和基本软件资源。硬件资源包括CPU，大容量内存（用于存放操作系统，数据库管理系统、应用程序、数据库等），直接存取的外部存储设备（硬盘）。软件资源包括操作系统，应用程序。
2．数据库
数据库是数据处理的新技术，也是一种先进的软件工程。
什么是数据库？
数据库是提供数据的基地。它能保存数据并让用户从它这里访问有用的数据。
数据库中的业务数据是以一定的组织方式存储在一起的相互有关的数据整体。数据库中保存的数据是相关数据，是一种相对稳定的中间数据。为了便于管理和处理这些数据，将这些数据存入数据库时必须具有一定的数据结构和文件组织形式（顺序文件、索引文件）。
“相关数据”、“一定的组织方式”和“共享”是关系数据库的三个基本要素。
3．数据库管理系统（DBMS）
DBMS是DataBaseManagementSystem的缩写。它包括面向用户的接口功能和面向系统的维护功能两大方面。前者为用户存取数据库提供必要的手段，包括处理能力。后者为数据库管理者提供数据库的维护工具。具体为数据库定义，数据装入，数据库操作、控制、监督、维护、恢复、通信等。DBMS通常由三部分组成：数据库描述语言(DLL)、数据操纵(DML)或查询程序、数据库管理例行程序。
4．应用程序和用户
数据库管理员（DBA）是系统工作人员，负责对整个数据库系统进行维护。
应用程序员是后台专业用户，对数据库进行检索、插入、删除或更新等操作。
非程序员是终端用户，通过联机终端设备，由基本命令组成的询问语言对数据库进行检索、插入、删除或更新等操作。例如话务员，管理员，质检员。
总之，信息的集合是数据库，而DBMS的软件可用于完成信息的存储和检索。
二、数据模型的基本概念
数据模型是数据库系统的核心，是对客观事物及其联系的数据的描述，即实体模型的数据化。数据模型是表示实体与实体之间联系的模型。当前流行的数据模型有关系、层次、网状三种模型。
1.关系数据模型
这种模型是新的DBMS,将数据简单地表示为一个或多个表格的内容。其是由表格形式体现，这种“表”在数学上称为关系。表中的每一行称为记录，每个记录由若干字段组成，一个记录描述一个事物，它的各字段是该事物各种性质的描述，在关系数据库中这些字段称为属性。如下图所示：（记录，字段，属性说明）
terchers:
============================================================
teacher#teacher_namephonesalary
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;
303Dr.Horn257-304927540.000000
290Dr.Lowe257-239031450.000000
430Dr.Engle257-462138200.000000
180Dr.Cooke257-808829560.000000
560Dr.Olsen257-808631778.000000
784Dr.Sacango257-304632098.000000
最典型的关系系统产品是DB2,DBASE，Foxpro，SYBASE，ORACLE系列。关系系统流行的一个重要原因，是容易支持由计算机程序或直接由人访问数据的能力，非常适宜作查询语言。
其中，表中每列都有一固定数据类型。常用SQLServer数据类型如下：</p>
<p>数据类型说明串长度
CHAR(长度)定长字符串255
VARCHAR(长度)变长字符串2000
NUMBERIC(精度，比例)数字
DATE日期时间
LONG(长度)大型可变长度字符串21亿
INT，SMALLINT整数
FLOAT实数</p>
<p>2.层次数据模型
也称树状模型，是一个以记录类型为结点的有根的定向树。层次数据模型的特点为：有且仅有一个实体，向上不与任何实体联系称为根；有若干实体，向下不与任何实体联系称为叶，其余的实体向下可以与若干实体联系，但向上只与唯一的一个实体联系（一对多联系），称为中间节点。所有节点都处在某一层上。根节点在最高层，即第一层。同一层上的节点之间没有联系。具有这些特点的数据结构称为层次结构。例如大学行政组织结构。典型例子是IBM的IMS。</p>
<p>层次数据模型举例图
3．网状数据模型
网状模型是以记录类型为结点网状结构，网络与树（层次结构）的区别主要有如下两点：(1)一个子结点可以有两个或多个父结点；
(2)在两个结点之间可以有两种或多种关系。</p>
<p class="MsoNormal" align="left">sybase数据库知识</p>
<p class="MsoNormal" align="left">在网络模型中用“系”表示这种关系，所谓系是一个二级树，它的根结点称为主节点，它的叶称为从结点。学生选课实体模型是网络数据模型如图。其数据库的直接用户是程序员，访问存储信息的方法是通过特殊的来自程序设计语言的调用，进行简单的特定查询，通常是不容易。</p>
<p>网状数据模型举例图</p>
<p>三、Sybase数据库简介
1．版本
1984年，MarkB.Hiffman和RobertEpstern创建了Sybase公司，并在1987年推出了Sybase数据库产品。SYBASE主要有三种版本，一是UNIX操作系统下运行的版本，二是NovellNetware环境下运行的版本，三是WindowsNT环境下运行的版本。对UNIX操作系统目前广泛应用的为SYBASE10及SYABSE11forSCOUNIX。
2．Sybase数据库的特点
（1）客户/服务器系统
在客户/服务器结构中，应用被分在了多台机器上运行。一台机器是另一个系统的客户，或是另外一些机器的服务器。这些机器通过局域网或广域网联接起来。
客户/服务器模型的好处是：
●它支持共享资源且在多台设备间平衡负载
●将处理工作分配在两个系统上，在网络上信息流通量将大大减少。</p>
<p>（2）应用程序接口DB-LIB和NET-LIB
DB-LIB：其它语言的连接；
NET-LIB：各种网络和通讯协议的连接
通过引入DB-LIB，NET-LIB，SYBASE使整个Client/Server应用与网络和平台无关。</p>
<p>（3）高性能
Sybase真正吸引人的地方还是它的高性能。体现在以下几方面：
●可编程数据库
通过提供存储过程，创建了一个可编程数据库。存储过程允许用户编写自己的数据库子例程。这些子例程是经过预编译的，因此不必为每次调用都进行编译、优化、生成查询规划，因而查询速度要快得多。
●触发器
触发器是一种特殊的存储过程。通过触发器可以启动另一个存储过程，从而确保数据库的完整性。
●多线索化
Sybase数据库的体系结构的另一个创新之处就是多线索化。一般的数据库都依靠操作系统来管理与数据库的连接。当有多个用户连接时，系统的性能会大幅度下降。Sybase数据库不让操作系统来管理进程，把与数据库的连接当作自己的一部分来管理。此外，Sybase的数据库引擎还代替操作系统来管理一部分硬件资源，如端口、内存、硬盘，绕过了操作系统这一环节，提高了性能。</p>
<p>3．Sybase数据库的组成</p>
<p>sybase数据库的组成图</p>
<p>Sybase数据库主要由三部分组成：</p>
<p>(1)SybaseSQLServer
SybaseSQLServer是进行数据库管理和维护的一个联机的关系数据库管理系统，是整个Sybase产品的核心软件，起着数据管理、高速缓冲管理、事务管理的作用。</p>
<p>(2)SybaseSQLToolset
数据库应用系统的建立与开发的一组前端工具。由ISQL，DWB和APT组成。
ISQL是与SQLServer进行交互的一种SQL句法分析器。ISQL接收用户发出的SQL语言，将其发送给SQLServer，并将结果以形式化的方式显示在用户的标准输出上。
DWB是数据工作台，是SybaseSQLToolset的一个主要组成部分，它的作用在于使用户能够设置和管理SQLServer上的数据库，并且为用户提供一种对数据库的信息执行添加、更新和检索等操作的简便方法。在DWB中能完成ISQL的所有功能，且由于DWB是基于窗口和菜单的，因此操作比ISQL简单，是一种方便实用的数据库管理工具。
APT是Sybase客户软件部分的主要产品之一，也是从事实际应用开发的主要环境。APT工作台是用于建立应用程序的工具集，可以创建从非常简单到非常复杂的应用程序，它主要用于开发基于表格（Form）的应用。其用户界面采用窗口和菜单驱动方式，通过一系列的选择完成表格（Form）、菜单和处理的开发。</p>
<p>(3)SybaseOpenClient/OpenServer
通过OpenClient的DB-LIB库，应用程序可以访问SQLServer。而通过OpenServer的SERVER-LIB，应用程序可以访问其它的数据库管理系统。其是任何应用软件和任何类型的数据连接在一起的接口。
四、SYBASE有关概念
SybaseSQLServer是一个多库数据库系统。这些数据库包括系统数据库和用户数据库。而不论是系统数据库还是用户数据库，都建立在数据库设备上。
1．数据库设备
所有的数据库都创建在数据库设备上。所谓数据库设备，不是指一个可识别的物理设备，而是指用于存储数据库和数据库对象的磁盘原始分区或操作系统文件。增加一个新的数据库设备时，必须对这些设备“初始化”。初始化的过程就是将物理磁盘、磁盘分区或操作系统文件变为SYBASE数据库可以识别的设备。初始化数据库设备使用DISKINIT命令：</p>
<p>DISKINIT
NAME=设备名，
PHYSNAME=物理设备名，
VDEVNO=虚拟设备号，
SIZE=块数</p>
<p>其中，NAME指数据库设备名，此名将用于CREATEDATABASE和ALTERDATABASE命令。PHYSNAME是原始磁盘分区或操作系统文件名。VDEVNO是数据库设备的标识号，在SQLServer中，它必须是唯一的。SIZE的单位是2K的块，对于新创建的数据库，最小的SIZE是model数据库的尺寸，即1024个2K的块（2M）。</p>
<p>例如：/*将/dev目录下400M的物理设备初始化为SYBASE的数据库设备tele114_log01*/
1&#62;;diskinit
2&#62;;name=“tele114_log01”,
3&#62;;physname=“/dev/rtelelog”
4&#62;;vdevno=4
5&#62;;size=204800/*2Kbyte*204800=400Mbyte*/
6&#62;;go
2．系统数据库
安装Sybase数据库时自动生成的下列系统数据库：
●主数据库master；
●模型数据库model；
●系统过程数据库sybsystemprocs；
●临时数据库tempdb。
也可选择下列数据库：
●安全审核数据库sybsecurity；
●示例数据库pubs2；
?命令语法数据库sybsyntax。</p>
<p>（1）master数据库
包含许多系统表和系统过程，从总体上控制用户数据库和SQLServer的操作，构成了SYBASE系统的数据字典。MASTER数据库主要记录信息为：
●登录帐号（SQL服务器用户名）；syslogins,sysremolelogins
●正在执行的过程；sysprocesses
●可修改的环境变量；sysconfigures
●系统错误信息；sysmessages
●SQL服务器上每个数据库的信息；sysdatabases
●每个数据库占用的存储空间；sysusages
●系统上安装的磁带及磁带信息；sysdevices
●活动锁信息；syslocks
在执行createdatabase,alterdatabase和diskinit等命令时，必须在master数据库。</p>
<p>（2）model数据库
提供了新用户数据库的初型。当我们每次用creatdatabase命令时，SQLServer都产生一个model数据库的拷贝，然后把它扩展到命令要求的尺寸。如果我们修改了model数据库，那么以后新创建的数据库都将随它而改变。下面是几个通常用到的对model数据库的改变：
●增加用户数据库类型、规则或缺省；
●可存取SQLServer上所有数据库的用户用sp_adduser增加到model数据库上；
●缺省权限（特别是guest帐号）可在model中建立；
●诸如selectinto/bulkcopy那样的数据库选项可在model中设置。这些设置反映到所有新创建的数据库中。它们在model中最原始的值是关（off）。
在一般情况下，大多数用户无权修改model数据库，又没被授权读取。因为model中所有内容已拷贝到新数据库中，授权读model没什么意义。
例：查询model数据库中的表文件名
1&#62;;usemodel
2&#62;;go
1&#62;;sp_help
2&#62;;go
NameOwnerObject_type
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-
sysalternatesdbosystemtable
syscolumnsdbosystemtable
syscommentsdbosystemtable
sysconstraintsdbosystemtable
sysdependsdbosystemtable
sysgamsdbosystemtable
sysindexesdbosystemtable
syskeysdbosystemtable
syslogsdbosystemtable
sysobjectsdbosystemtable
sysproceduresdbosystemtable
sysprotectsdbosystemtable
sysreferencesdbosystemtable
sysrolesdbosystemtable
syssegmentsdbosystemtable
systhresholdsdbosystemtable
systypesdbosystemtable
sysusermessagesdbosystemtable
sysusersdbosystemtable</p>
<p>（3）sybsystemprocs数据库
库中存储系统过程，当用户执行一存储过程（以sp_开始）时，SQL服务器首先在用户当前数据库中搜索指定的存储过程，如果没有相应过程，则到系统过程数据库中寻找，若没有，再到MASTER数据库中寻找。</p>
<p>（4）临时数据库tempdb
该数据库为临时表和临时工作提供了一个存储区域。临时数据库是SQLServer上所有数据库共享的工作空间。由于这些表都是临时的，所以每当用户退出或系统失败，这些表都将消失。</p>
<p>（5）安全审核数据库sybsecurity
数据库中保存系统的安全审核信息，它可跟踪记录每个用户的操作情况，为维护系统安全提供控制手段。</p>
<p>（6）示例数据库pubs2
为用户提供一个学习SYBASE的数据库模型。</p>
<p>（7）命令语法数据库sybsyntax
库中保存SYBASE数据库的命令语法及支持的语言库。
3．数据库对象
（1）表(Tables)
在一个关系数据库中，表是最重要的数据库对象,对应于关系数据库理论中关系，与DBASE或FOXPRO中的DBF文件是类似。一切数据都存放在表中。其它数据库对象都是为了用户很好地操作表中的数据。表都以一张二维表的形式存在。其中，每一列称之为一个字段，或一个域；而每一行称之为一个记录，也就是一项数据。
有一类表，它们的名字都是以sys开头的，这些表称为系统表，系统表记录着有关SQLServer的信息。在master数据库中的表大部分为系统表，这些表是随着master数据库的创建而建立的。另外，每个用户数据库在创建时都有一个系统表的子集。
例如，只有在master数据库中才有的系统表有：sysconfigures、sysdatabases、sysdevices、syslogins等；在用户数据库和系统数据库中都有的系统表有：sysalternates、syscolumns、sysindexs、syslogs、sysobjects、sysusers等。
例：查询master数据库中表文件名
1&#62;;usemaster
2&#62;;go
3&#62;;sp_help
4&#62;;go
NameOwnerObject_type
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;
spt_committabdbousertable
spt_datatype_infodbousertable
spt_datatype_info_extdbousertable
spt_monitordbousertable
spt_server_infodbousertable
spt_valuesdbousertable
sysalternatesdbosystemtable
syscharsetsdbosystemtable
syscolumnsdbosystemtable
syscommentsdbosystemtable
sysconfiguresdbosystemtable
sysconstraintsdbosystemtable
syscurconfigsdbosystemtable
sysdatabasesdbosystemtable
sysdependsdbosystemtable
sysdevicesdbosystemtable
sysenginesdbosystemtable
sysgamsdbosystemtable
sysindexesdbosystemtable
syskeysdbosystemtable
syslanguagesdbosystemtable
syslistenersdbosystemtable
syslocksdbosystemtable
sysloginrolesdbosystemtable
sysloginsdbosystemtable
syslogsdbosystemtable
sysmessagesdbosystemtable
sysmonitorsdbosystemtable
sysobjectsdbosystemtable
sysproceduresdbosystemtable
sysprocessesdbosystemtable
sysprotectsdbosystemtable
sysreferencesdbosystemtable
sysremoteloginsdbosystemtable
sysrolesdbosystemtable
syssegmentsdbosystemtable
sysserversdbosystemtable
syssrvrolesdbosystemtable
systestlogdbosystemtable
systhresholdsdbosystemtable
systypesdbosystemtable
sysusagesdbosystemtable
sysusermessagesdbosystemtable
sysusersdbosystemtable
sp_configuredbostoredprocedure
sp_dboptiondbostoredprocedure
sp_getmessagedbostoredprocedure
sp_procxmodedbostoredprocedure
sp_prtsybsysmsgsdbostoredprocedure
sp_validlangdbostoredprocedure</p>
<p>说明见附录表1</p>
<p class="MsoNormal" align="left">sybase数据库知识</p>
<p class="MsoNormal" align="left">（2）视图(Views)
视图是查看一张或几张表中的数据的一种方式。通过将一张或几张表中的一部分数据进行组合得到视图。视图看上去与表非常相象，但与表还是有着本质的区别。通过视图看到的数据实际上都是存放在表中的，在数据库中仅存在视图的定义。
使用视图的好处是：
●操作方便
●安全性</p>
<p>（3）索引(Index)
索引是对字段生成的，用于加快数据的检索。在Sybase数据库中，索引是由系统自动管理的，也就是说，Sybase的索引操作对用户是透明的。表的索引一旦建立，系统会自动对其进行更新维护以使它与相应表对应一致；操作时，用户无须指定索引，系统会自动确定是否使用索引进行操作。
Sybase支持三种不同类型的索引，一是复合索引，即包含几个列的索引；二是唯一性索引，即任意两行中的索引列不能有相同的取值；三是簇类索引（Clusteredindexes）和非簇类索引(Nonclusteredindexs)，簇类索引使SQL服务器不断重排表行的物理顺序以使其与逻辑索引顺序相一致，非簇类索引则不需要表行的物理顺序与逻辑顺序一致。每个表最多只能建立一个簇类索引，非簇类索引则可建立多个。与非簇类索引相比，簇类索引的检索速度要快。应当在建立任何非簇类索引以前建立簇类索引。</p>
<p>（4）存储过程(Storedprocedures)
存储过程是用T-SQL语言编写成的SQL子例程，它存储于SQL服务器上供用户调用执行。与一般的SQL语句和批处理语句不同的是，存储过程是经过预编译的。当首次运行一个存储过程时，SQLServer的查询处理器将对其分析，并产生最终的执行方案。由于查询处理的大部分工作已经完成，所以以后执行存储过程时速度将会很快。执行存储过程时可带参数并可调用其他存储过程，执行完毕后返回信息以指示是否成功完成相应操作。存储过程有两种：一种是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_helpindexcode_3th
sp_helpuser查询用户信息
sp_lock查询当前加锁信息
sp_monitor查询SQL服务器统计信息
sp_password改变登录帐号口令
sp_spaceused查询表中的行数、数据页数及空间大小
sp_who查询当前用户及过程信息
sp_syntax查询操作语法
sp_configure配置系统参数</p>
<p>例：查询数据库信息
1&#62;;sp_helpdb
2&#62;;go
namedb_sizeownerdbidcreatedstatus
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;
master3.0MBsa1Jan01,1900nooptionsset
model2.0MBsa3Jan01,1900nooptionsset
sybsystemprocs10.0MBsa4Oct24,1997trunclogonchkpttele114370.0MBsa5Oct24,1997selectinto/bulkcopy,trunclogonchkpttempdb22.0MBsa2May05,1998selectinto/bulkcopy(0rowsaffected,returnstatus=0)</p>
<p>例：查询SQL服务器统计信息
1&#62;;sp_monitor
2&#62;;go
last_runcurrent_runseconds
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;
May519984:09PMMay519984:13PM224</p>
<p>(0rowsaffected)
cpu_busyio_busyidle
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;
17(1)-0%5(0)-0%923(223)-99%</p>
<p>(0rowsaffected)
packets_receivedpackets_sentpacket_errors
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;
21(9)51(23)0(0)</p>
<p>(0rowsaffected)
total_readtotal_writetotal_errorsconnections
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;
947(1)595(113)0(0)3(1)</p>
<p>(0rowsaffected,returnstatus=0)</p>
<p>（5）触发器(Triggers)
触发器是一种特殊的存储过程，用来维护不同表中的相关数据的一致性。当在一张表中插入、删除和修改数据时，触发器就会触发另一个存储过程，从而保持数据的一致性。</p>
<p>（6）缺省与规则(Defaultsandrules)
缺省是在数据录入时，若用户没有输入数据，SQLServer自动输入的值。
规则是指对特定的列的输入限制,即是否允许用户向给定列输入已定义的数据类型。
4．SQLServer的用户及权限
SQL=StructuredQueryLanguage结构查询语言，是新一代数据库查询语言。
Sybase中的用户分为两种：SQL服务器用户（登录帐号）和数据库用户。
安装完SQL服务器后，系统自动建立一个SQL服务器用户sa，口令为空，即系统管理员，他对整个系统有操作权，其他用户均由系统管理员建立。
在SQLServer中有三种特殊的用户：系统管理员、用户数据库所有者（建立相应数据库的数据库用户）DBO、一般用户。系统管理员对整个系统有操作权；用户数据库所有者对他所建立的数据库具有全部操作权利；一般用户对给定的数据库只有被授权的操作权限。
数据库用户一般可分为用户组，任一数据库在建立后即被赋予一个用户组public。</p>
<p>（1）建立SQL服务器用户名（登录帐号）
作为一个用户，为了使用SQLServer，他必须在SQLServer上有一个SQL服务器用户名（登录帐号）。这个帐号是系统管理员通过sp_addlogin来增加的。
sp_addlogin登录名，口令，库名，语言，全名
例：建立用户zhang,口令为zhangling(最低六位)，全名为Zhangling
1&#62;;sp_addloginzhang,zhangling,null,null,&#8221;Zhangling&#8221;
2&#62;;go
3&#62;;select*fromsyslogins
4&#62;;go</p>
<p>（2）增加数据库用户名
同样，为了使用SQLServer上的数据库，他必须在数据库中有一个用户名，这个用户名是数据库所有者通过sp_adduser来增加的。数据库用户名不必和用户帐户一样，而且在不同的数据库中用户名可以不同。多个用户可以有相同的SQLServer帐户。同样，多个SQLServer帐户可以有相同的数据库名。
sp_adduser登录名，别名，组名
登录名为用户的SQL服务器登录名；别名为用户在数据库中的用户名；组名为用户所属的数据库用户组。</p>
<p>例：用户zhang增加为tele114的用户，别名为zhang1,属于用户组china
1&#62;;usetele114
2&#62;;go
3&#62;;sp_helpgroup
4&#62;;go
5&#62;;select*fromsysusers
6&#62;;go
1&#62;;sp_addgroupchina
2&#62;;go
1&#62;;sp_helpgroup
2&#62;;go
1&#62;;sp_adduserzhang,zhang1,china
2&#62;;go
1&#62;;sp_helpuser
2&#62;;go</p>
<p>*例：删除别名zhang1,用户组china,登录名zhang
1&#62;;usetele114
2&#62;;go
3&#62;;sp_dropuserzhang1
4&#62;;go
5&#62;;sp_helpuser
6&#62;;go
1&#62;;sp_dropgroupchina
2&#62;;go
1&#62;;sp_helpgroup
2&#62;;go
3&#62;;usemaster
4&#62;;go
5&#62;;sp_droploginzhang
6&#62;;go
7&#62;;select*fromsyslogins
8&#62;;go</p>
<p>5．SQLServer的启动与关闭
(1)启动
对于安装在UNIX操作系统中的SybaseSQLServer，都有一个登录名。在我们的实际系统中，这个登录名为sybase，登录的口令为sybase10。以sybase登录到服务器后，进入install子目录。用实用工具showserver查看已经运行了的SQLServer。如果还没有SQLServer在运行，则可以用以下命令启动SQLServer：</p>
<p>$startserver-fRUN_SYBASE（RUN_主服务器名）
$startserver-fRUN_SYB_BACKUP（RUN_备服务器名）
$showserver</p>
<p>(2)关闭
关闭SQLServer可以在isql中使用T-SQL命令：</p>
<p>关闭SQL备服务器
1&#62;;shutdownSYB_BACKUP
2&#62;;go</p>
<p>关闭SQL主服务器
1&#62;;shutdown[withnowait]
2&#62;;go</p>
<p>关闭UNIX服务器
$shutdown杫–g0</p>
<p>（3）启动过程
master数据库启动&#8212;&#8212;&#8212;&#8211;鄐ybsystemproces数据库启动&#8212;&#8212;&#8212;&#8211;嗲蹇誸empdb&#8212;&#8212;&#8212;嗥舳渌菘&#8212;&#8212;-嗍挛竦幕毓</p>
<p>（4）Sybase数据库目录说明
/usr/sybase=..主目录
../install安装程序
../bin执行程序
../include库函数文件
../lib宿主语言库
../doc联机文件
../scriptsSQL动态描述文件
../help帮助信息
../locales语言限制文件
../termdef终端定义文件
../charsets字符集文件
五、T-SQL语言
1．标准的SQL语言
标准的SQL语言包括数据定义语句（DLL），数据操作语句（DML）和数据控制语句（DCL）。熟悉附录中五个表结构（enrolls,teachers,courses,sections,students）</p>
<p>（1）数据定义语句（DLL）
用来建立、更改和删除数据库对象</p>
<p>a．建立对象create
这里只介绍表和索引的创建与删除
(a)．创建表：</p>
<p>createtabletable_name(column_1datatype,&#8230;,column_ndatatype)
例：建表teachers
1&#62;;createtableteachers(teacher#SMALLINTNOTNULLUNIQUE,
2&#62;;teacher_nameCHAR(1,
3&#62;;phoneCHAR(10),
4&#62;;salaryFLOAT)
5&#62;;go</p>
<p>(b).创建索引：</p>
<p>createindexindex_nameontable_name(column_1,&#8230;,column_n)
例：建表teachers中teacher_name字段的索引文件names
1&#62;;createindexnamesonteahers(teacher_name)
2&#62;;go</p>
<p>b.删除对象drop</p>
<p>(a)．删除表：</p>
<p>droptabletable_name
例：删除表teachers
1&#62;;droptableteachers
2&#62;;go</p>
<p>(b)删除索引：</p>
<p>dropindextable_name.index_name
例：删除表teachers的索引文件names
1&#62;;dropindexteachers.names
2&#62;;go</p>
<p>(2)数据操作语句(DML)
包括对数据查询、插入、修改和删除</p>
<p>a.查询select
2
selectcolumn_1,&#8230;,column_nfromtable_namewhereconditions</p>
<p>例：列出所有课程名、系名及其学分
1&#62;;selectcourse_name,
2&#62;;department,
1&#62;;num_creditsfromcourses
2&#62;;go</p>
<p>例：列出所有学分为3的课程名、系名及学分
1&#62;;selectcourse_name,department,num_creditsfromcourses
2&#62;;wherenum_credits=3
3&#62;;go</p>
<p>例：找出所有男性学生
1&#62;;selectstudent_namefromstudentswheresex=&#8217;M&#8217;
2&#62;;go</p>
<p>例：哪些算术课程具有3分以上的学分
1&#62;;selectcourse_name,department,num_creditsfromcourses
2&#62;;wheredepartment=&#8217;Math&#8217;andnum_credits&#62;;=3
3&#62;;go</p>
<p>例：列出所有不来自IL州的学生的姓名和州名
1&#62;;selectstudent_name,statefromstudentswherenot(state=&#8217;IL&#8217;)
2&#62;;go</p>
<p>例：列出一年工资为30000到35000的教师姓名和工资
1&#62;;selectteacher_name,salaryfromteacherswheresalarybetween30000and35000
2&#62;;go</p>
<p>例：列出名字以“Jo”开头的每个学生的姓名和性别
1&#62;;selectstudent_name,sexfromstudentswherestudent_namelike&#8217;Jo%&#8217;
2&#62;;go</p>
<p>例：查出教师的最大工资
1&#62;;selectmax(salary)fromteachers
2&#62;;go</p>
<p>例：查出多少教师的工资大于30000
1&#62;;selectcount(*)fromteacherswheresalary&#62;;30000
2&#62;;go</p>
<p>例：列出每个学生的课程数
1&#62;;selectstudent#,num_enrolled=count(*)fromenrollsgroupbystudent#
2&#62;;go</p>
<p>从几个表中检索数据（联接）
任何从多于一个表中检索数据的查询必须执行联接。
例：每个教师所教的课程是什么？（按姓名列出教师）
1&#62;;selectteacher_name,sections.teacher#,course#
2&#62;;fromteachers,sections
3&#62;;whereteachers.teacher#=sections.teacher#
4&#62;;go</p>
<p>子查询：来自一个查询结果可以成为另一个查询的输入。一般为两个或以上表
例：在任何课程中哪个学生成绩为3
1&#62;;selectstudent_namefromstudents
2&#62;;wherestudent#in(selectstudent#fromenrollswheregrade=3)
3&#62;;go</p>
<p>例：哪个教师工资低于平均值
1&#62;;selectteacher_namefromteachers
2&#62;;wheresalary&#60;(selectavg(salary)fromteachers)
3&#62;;go</p>
<p>例：将表students复制为表hhh
1&#62;;select*intohhhfromstudents
2&#62;;go</p>
<p>b.插入insert</p>
<p>insertintotable_name(column_1,&#8230;,column_n)
values(value_1,&#8230;,value_n)</p>
<p>例：向表teachers中增加教师号为555，姓名为kkk,电话号码为6646988，工资为300
1&#62;;insertintoteachers
2&#62;;values(555,&#8217;kkk&#8217;,&#8217;6646988&#8242;,300)
1&#62;;go</p>
<p>c.修改update</p>
<p>updatetable_name
setcolumn_1=value_1,&#8230;column_n=value_n
whereconditions</p>
<p>例：增加kkk的工资到1000
1&#62;;updateteacherssetsalary=1000
2&#62;;whereteacher_name=&#8217;kkk&#8217;
3&#62;;go</p>
<p>d.删除delete</p>
<p class="MsoNormal">
sybase数据库知识</p>
<p class="MsoNormal" align="left">deletefromtable_name
whereconditions</p>
<p>例：删除表teachers中姓名为kkk的记录
1&#62;;deletefromteachers
2&#62;;whereteacher_name=&#8217;kkk&#8217;
3&#62;;go</p>
<p>e.清空记录truncate
truncatetabletable-name
例：清空表hhh中的全部记录
1&#62;;truncatetablehhh
2&#62;;go</p>
<p>e.增加数据表列altertable</p>
<p>altertabletable_nameaddcolumn_1datatype,&#8230;,column_ndatatype</p>
<p>例：在表courses中增加数据表列备注一项
1&#62;;altertablecoursesaddpzchar(null
2&#62;;go</p>
<p>(3)数据控制语言(DCL)
a.系统管理员可以授予其他用户CREATEDATABASE的权限，使其他用户可以成为数据库所有者。
b.数据库所有者在他所拥有的数据库中，可以授予其他用户的权限有：
lCREATETABLE&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-建表
lCREATEDEFAULT&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;建缺省
lCREATERULE&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-建规则
lCREATEPROCedure&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;建存储过程
lCREATEVIEW&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-建视图
lDUMPDATABASE&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-备份数据库
lDUMPTRANsaction&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;备份日志
c.数据库对象所有者可以授予其他用户的操作权限有：
lSELECT
lUPDATE
lINSERT
lEXECute
lDELETE
lREFERENCE</p>
<p>l授权grant
grantprivilegeonobject_nametousername</p>
<p>例：
1&#62;;grantselectonteachers
2&#62;;tobob,john
3&#62;;go
数据库所有者授予用户bob,john在teachers数据库上读取的权限。</p>
<p>l收回授权revoke
revokeprivilegeonobject_namefromusername</p>
<p>例：
1&#62;;revokeall
2&#62;;onstudents
3&#62;;frompublic
4&#62;;go
收回用户组public在students表所有权限。</p>
<p>例：授予zhang1在数据库tele114上建表，建视图，建存储过程;对表students有select权；对name,native字段有update权。
1&#62;;usetele114
2&#62;;go
3&#62;;grantcreattable,createprocedure,createviewtozhang1
4&#62;;go
5&#62;;grantselectonstudentstozhang1withgrantoption
6&#62;;go
7&#62;;grantupdateonstudents(name,native)tozhang1
8&#62;;go
9&#62;;sp_helprotect
10&#62;;go
2．函数
(1)系统函数
db_id([数据库名])
db_name([数据库ID])
host_id()
host_name()
show_role()
user_name([数据库用户ID])
user_id([数据库用户名])
col_length(对象名，列名)</p>
<p>(1)集合函数
sum(all)
avg(all)
count(*)
max(表达式)
min(表达式)</p>
<p>(1)字符串函数
substring(&#8220;abcde&#8221;,2,2)bc
right(&#8220;abcd&#8221;,3)cde
upper(&#8220;abcde&#8221;ABCDE
lower(&#8220;aBcDe&#8221;abcde</p>
<p>(1)数学函数
abs
cos
sin
exp
sqrt</p>
<p>六、数据库备份与恢复
SQLServer提供了两种不同类型的恢复：一类是系统自动完成的恢复；另一类是人工完成的恢复。</p>
<p>1．系统软件故障恢复
系统自动恢复是在系统软件出现故障的情况下通过重新启动SQLServer进行恢复。
自动恢复从master数据库开始，然后是model数据库，再是temporary数据库，最后是用户数据库。在每个数据库上，恢复机制观察事务日志。如果日志写入比数据库更近的数据，则向前恢复数据库。如果事务尚未完成，则要回退它们。
所谓事务日志就是一张系统表syslogs。在这张表中记录着对数据库的更新请求，例如插入、修改和删除。查询操作不记入事务日志中。
2．介质故障的恢复
一旦介质发生故障，只有通过以前备份的数据库和事务日志才能恢复数据库，为此我们需要经常备份数据库和事务日志。备份数据库和事务日志我们使用dump命令，而恢复数据库和事务日志我们使用load命令。
与创建数据库需要一个数据库设备类似，我们备份数据库和事务日志也需要一个卸出设备。增加卸出设备可以通过系统过程sp_addumpdevice来实现。卸出设备可以是磁盘、磁带或操作系统文件。
sp_addumpdevice&#8221;type&#8221;,device_name,physicalname
例：创建名为db114的dump设备
sp_addumpdevice&#8221;disk&#8221;,&#8221;db114&#8243;,&#8221;/usr/sybase/zyl114.bak&#8221;</p>
<p>（1）备份数据库和事务日志
备份数据库(数据和事务日志)的语法为：</p>
<p>dumpdatabasedatabase_nametodump_device</p>
<p>例如：全备份数据库tele114到设备db114
1&#62;;dumpdatabasetele114todb114
2&#62;;go</p>
<p>备份事务日志（增量备份）的语法为：</p>
<p>dumptransactiondatabase_nametodump_device
[withtruncate_only&#124;withno_log&#124;withno_truncate]
前两项在日志中删除提交的事务，后一项不删除。
在备份数据库前的所有事务日志备份都是没有意义的。我们一般不经常备份数据库，但我们要经常备份事务日志。这是因为备份事务日志比备份数据库需要更少的时间和存储空间。
备份数据库和备份日志的关系如下所示：</p>
<p>时刻1时刻2时刻3时刻4</p>
<p>（2）恢复数据库
要恢复被破坏的数据库，可以按如下步骤进行：
•用带no_truncate选项的dump命令卸出用户数据库事务日志。
•用和被破坏的数据库的同样的结构建立一个新的数据库。
•用load命令重新装入数据库和事务日志。</p>
<p>装入数据库的语法为：
loaddatabasedatabase_name
fromfile_name</p>
<p>装入事务日志的语法为：
loadtransactiondatabase_name
fromfile_name</p>
<p>例：数据库备份
1&#62;;dumpdb_nametofile_name
2&#62;;go
数据库恢复
1&#62;;loaddb_namefromfile_name
2&#62;;go
日志备份
1&#62;;dumptransactiondb_nametofile_namewithno_truncate
2&#62;;go
日志恢复
1&#62;;loadtransactiondb_namefromfile_name
2&#62;;go
日志删除
1&#62;;dumptransactiondb_namewithtruncate_only
2&#62;;go</p>
<p>(3)监控事务日志空间大小方法
1&#62;;sp_spaceusedsyslogs
2&#62;;go</p>
<p>1&#62;;dbccchecktable(syslogs)
2&#62;;go</p>
<p>1&#62;;sp_helpdbtele114
2&#62;;go</p>
<p>1&#62;;selectdata_pgs(8,doampg)fromsysindexeswhereid=8
2&#62;;go</p>
<p>七、几个实用程序
1.bcp
以用户指定的形式将数据库表拷贝到操作系统文件中，或从操作系统文件中拷贝一个数据库表。提供了在数据库表和操作系统文件之间传递数据的一个方便、快速的方法。</p>
<p>bcp[[database-name.]owner.]table_name{in&#124;out}datafile[各种开关]</p>
<p>其中，table_name是想要拷贝的数据库表名；{in/out}为拷贝方向，in表示从文件到数据库的拷贝，out表示从数据库到文件的拷贝；datafile是操作系统文件的全路径名。
常用的开关有：
-fformatfile&#8212;-存有上次使用bcp处理同一表时得到的应答文件的全路径名，格式文件名的扩展名为.fmt。使用格式文件，省去了再重复回答前面的问题。
-Uusername&#8212;-允许用户指定一个注册名。
-Ppassword&#8212;-允许用户指定当前的SQLServer口令。如果未使用-P选项，bcp将提示输入一个口令。
-SServer&#8212;-允许用户指定与其相连的SQLServer的名字。
例：在客户端备份tele114数据库中code_1th表,按照code_1th.fmt的格式
c&#62;;bcptele114..code_1thoutcode_1th.txt-fcode_1th.fmt–Usa朠
2.isql
是基于字符的最基本的访问SQLServer数据库服务器的实用程序，能够实现与服务器的连接，向服务器发送T-SQL命令，并在屏幕上显示返回的结果信息。</p>
<p>isql[各种开关]</p>
<p>常用的开关有：
-Uusername&#8212;-允许用户指定一个注册名。
-Ppassword&#8212;-允许用户指定当前的SQLServer的口令。
-SServer&#8212;-允许用户指定与其连接的SQLServer的名称。
-i输入文件
-o输出文件
-W列宽
终止一条命令：go
清除查询缓冲：reset
调用编辑器：vi（UNIX）,edit(DOS)
执行一条操作系统命令：！！命令
退出isql：quit或exit</p>
<p>3．showserver
显示当前在本机上正在运行的SQLServer。
showserver
4．startserver
启动SQLServer。</p>
<p>startserver[各种开关]</p>
<p>常用的开关有：
-frunserverfile&#8212;-指定一个运行服务器文件名，每次重启SQLServer时，以这个文件为参考。在我们的实际机器上，这个文件名为RUN_SYBASE或RUN_SYB_BACKUP。
-m&#8212;-以单用户的方式启动SQLServer。这个方式用于恢复master数据库。</p>
<p>5．syman
显示联机的库例程，系统过程及实用程序手册。
syman[keyword]</p>
<p>syman实用程序的联机文本文件存放在$SYBASE下的doc子目录中。
6．sybinit
作用：a.建立master设备
b.创建各个系统表
c.创建sybsystemprocs数据库配置参数</p>
<p>1)以sybase登录
2)cd/usr/sybase/install
3)sybinit
4)选3
SYBINIT
1.ReleaseDirectory:/sur/u/sybase
2.2.Edit/ViewinterfacesFile
3.Configureaserverproduct
4.ConfigureanOpenCoient/ServerProduct
5.ConfigureaFrontEndProduct
5)选3
CONFIGURESERVERPRODUCTS
1.ConfigureanewSQLServer
2.ConfigureanexistingSQLServer
3.UpgradeanexistingSQLServer
6)ADDNEWSQLSERVER
1.SQLServername:lyg114
a.选1，输入服务器名如：lyg114
b.按Ctrl-a
7)SQLSERVERONFIGURATION
1.CONFIGURESERVER&#8217;SINTERFACESFILEENTRYIncomplete
2.MASTERDEVICECONFIGURATIONIncomplete
3.SYBSYSTEMPROCSDATABASECONFIGURATIONIncomplete
4.SETERRORLOGLOCATIONIncomplete
5.CONFIGUREDEFAULTBACKUPSERVERIncomplete
6.CONFIGURELANGUAGESIncomplete
7.CONFIGURECHARACTERSETSIncomplete
8.CONFIGURESORTORDERIncomplete
9.ACTIVATEVUDITINGIncomplete
分别选1，2，3，－－－9配置参数，使各项Incmplete&#8212;&#8211;&#62;;complete
参数配置如下：（例）
a.SERVERINTERFACESFILEENTERYSCREEN
Servername:lyg114
1.RetryCount:10
2.RetryDelay:10
Listenerservicesavailable:
ProtocolAddressPortNameAlias
rcpscosysv4114
注意：Port=4114,此参数为1024－－65535为间的4个或5个数字
Address=scosysv,此参数为UNIX服务器主机名
b.MASTERDRVICECONFIGURATION
1.MasterDevice:/usr/sybase/master.dat
2.size(Meg):20
c.SYBSYSTEMPROCSDATABASECONFIGURATION
1.sybsytemprocsdatabasesize(Meg):10
2.sybsystemprocslogicaldevicename:sysprocsdev
3.createnewdeviceforthesybsystemprocsdatabase:yes
4.physicalnameofnewdevice:/usr/sybase/sybtemp.dat
5.sizeofthenewdevice(Meg):10
d.SETERRORLOGLOCATION
1.SQLServererrorlog:/usr/sybase/install/errorlog
e.SETTHESQLERVER&#8217;SBACKUPSERVER
1.SQLServerbackupServermname:SYB-BACKUP
注意：此备份服务器名一定要与后面配置的备份服务器名一致
f.SONFIGURELANGUAGES
选1.us-english
g.CONFIGURECHARACTERSETS
选1.SACII,frousewithunsp及4.ISO8859-1(latin-1)-w(4.为缺省)
h.CONFIGURESORTORDER
选1.Binaryordering,fortheISO8859/1orLatin-1Charact
i.ACTIVATEAUDITING
1.Installauiting:yes
2.sybsecuritydatabasesize(Meg):5
3.sybsecuytylogicaldevicename:sybsecurity
4.dreatenewdeviceforthesybsecuritydatabase:yes
5.sybsecurityphysicaldevicename:/usr/sybase/sybsecur.dat
6.sizeofthenewdevice(Meg):5
参数配置完后，按Crtl-a
ExecutetheSQLServerConfiguraionnow?y
9)看到下面的信息表示SQLServer安装成功
Configrrationcompletedsuccessfully.
rpess&#60;return&#62;;tocontinue.(回车)
按Ctrl-x退出安装程序</p>
<p class="MsoNormal"></p>
<p>sybase数据库知识</p>
<p class="MsoNormal" align="left">八、SQL客户端软件
1.DOS状态下SQL客户端软件
软件位于c:\sqlbin
运行步骤：
£¨1£(C)运行TCPIP协议程序tcp.bat
c:\nwclient\lsl/c:\nwclient\net.cfg
c:\nwclient\ne2000
c:\nwclient\tcpip
(2)ping129.6.114.201(服务器地址)
返回129.6.114.201isalive正常
返回Noresponsefrom129.6.114.201为异常
（3）运行sybclenv.bat&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;Sybase的DOS接口启动程序，内容如下：
setpath=c:\sqlbin\binr;%path%&#8212;&#8212;&#8212;&#8212;-Sybase的DOS接口程序所在目录
setdsquery=129.6.114.201,4114&#8212;&#8212;&#8212;&#8212;&#8211;连接服务器IP地址和端口号
c:\sqlbin\binr\dbnovtcp
C:\sqlbin\binr\rmineti</p>
<p>£¨1£(C)dbping129.6.114.201&#8212;&#8212;&#8212;&#8212;检查是否连通SYBASE服务器
连接成功出现“Successfullyopenednetworkconnection&#8221;
(5)isql–Usa朠
1&#62;;sp_help
2&#62;;go
(6)练习SQL命令
2．Windows3.2状态下SQL客户端软件
软件位于：c:\sql10
生成SybaseOpenClient10组下的WISQL,WSYBPING,SQLEDIT等图标,在SQLEDIT建立与服务器的连接关系，</p>
<p>winsql32(及wisql)是isql的Windows应用版本。整个窗口分为两大部分，上半部分为SQL命令输入区，下半部分为显示查询结果的输出区。使用Eidt菜单对SQL语句进行编辑，而Connect菜单是用做对特定的SQLServer和数据库进行连接。</p>
<p>练习题
（下列习题参考表enrolls,表teachers,表courses,表sections,表students）
1.Select*fromzylwherexm=&#8217;张三&#8216;语句中代表了哪三种含义？
2.列出表enrolls,表teachers,表courses,表sections,表students中所有记录。
3.列出所有来自Chicago地区女生的姓名和地址。
4.列出地区代码在20000和29999之间的学生姓名、城市名称和地区代码。
5.列出电话号码不以257开头的所有教师的姓名和电话号码？
6.怎样查看表students中student_name=jake的记录？
7.列出所有不来自CA，IL州学生的姓名、城市名和州名。
8.按反字母顺序查出教师姓名及电话号码。
9.所有教师工资的平均数为多少？
10.表students中共有多少学生？
11.如何启动和关闭SQLSERVER?如何检查？
12.Sybase数据库由哪几部分组成？写出各部分的作用？
13.如何备份数据库zylong?恢复其备份？写出命令。
14.Sybinit的作用是什么？
15.列出常用的系统表？系统过程（10个）？说明含义？
16.Sybase数据库包含哪些系统数据库？作用是什么？
17.写出将/dev目录下650M的物理设备data112初始化为data112_log数据库的命令？
18.如何配置SYBASE运行环境？配置SQLServer内存为20M？配置连接数目为50？怎样使配置生效？写出命令。
19.如何建立表students按student_name的索引？
20.如何设置显示记录数(SQL)？
21.有多少来自CA，IL州成绩大于2的学生？
22.哪个学期有学生选课人数高于平均数？
23.列出平均成绩大于最低平均成绩的所有学生？
24.在表courses中增加一条记录（CalculusV,Math,888,4）
25.在表teachers中给Horn工资定为99999？
26.删除表enrolls中成绩大于5或小于0的记录？</p>
<p>附录</p>
<p>附录1只有在master数据库中才能有的系统表
系统表名表中的内容
Sysconfigures一行记录了用户可设置的配置参数
Syscurconfigs有关SQLServer当前正使用的配置参数情况
Sysdatabases一行记录了SQLServer中的一个数据库
Sysdevices一行记录了数据库的每一磁带转储设备，磁盘转储设备，数据库设备和磁盘分区
Syslocks有关动态锁的情况
Syslogins一行记录了每一有效的SQLServer的用户帐号
Sysmessages一行记录了每一系统错误或警告
Sysprocesses有关Server进程的情况
Sysremotelogins一行记录了一个远程用户
Sysservers
Sysusages一行记录了一个远程SQLServer</p>
<p>附录2在用户数据库和系统数据库中都有的系统表
系统表名表中的内容
Sysalternates一行记录了SQLServer用户在当前数据库中的标识
syscoumns一行记录了一个表或视图的每一列，一个存储过程的每一参数
syscomments一行或多行记录了每一视图、规则、缺省值、触发器和存储过程
sysdepends一行记录了由一个过程、视图或触发器所参照的每一过程，视图或表
syskeys一行记录了每一主码，外码或公用码
syslogs事务日志，是SQLServer用于恢复或向前滚动的
sysobjects一行记录了每一表、视图、存储过程、日志、规则、缺省值、触发器和临时表（仅在tempdb中）
sysprocedures一行记录了每一视图、规则、缺省、触发器和过程
syprotects记录用户的权限信息
sysegments一行记录了每一片段（命名的的磁盘分片汇集）
systypes一行记录了每一由系统提供的和用户定义的数据类型
sysusers一行记录了一个数据库的合法用户，或用户组</p>
<p>附录3由SQLServer提供的系统过程功能和执行权限
过程名功能执行权限
sp_addalias把数据库中的一个用户映象到另一个用户数据库所有者
sp_addgroup向数据库增加分组，在授权和撤权命令中分组被用作聚合名字数据库所有者
sp_addlanguage为服务器定义可替换语言，并把它增加到master，dbo,syslanguages中。系统管理员
sp_addlogin通过向master.dbo,syslogins中增加表项授权新的SQLServer用户系统管理员
sp_addremotelogin通过向master，bo,sysremotelogins增添表项授权新的远程服务器用户系统管理员
sp_addsegment在指定的数据库设备上创建一个段数据库所有者系统管理员
sp_addserver定义远程服务器，或定义本地服务器名字数据库所有者系统管理员
sp_addtype创建用户定义的数据类型Public
sp_addumpdervce向SQLServer增加转储设备系统管理员
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设备数据库设备的状态为defaulton或defaultoff（表明一数据设备是否能用于数据库的岂省存储）系统管理员
sp_dropalias删除用sp_addalias建立的用户名别名标识数据库所有者
sp_dropdevice删除一SQLServer数据库设备或转储设备系统管理员
sp_dropgroup从数据库中删除一分组数据库所有者
sp_droplanguage从服务器中删除可替换语言，并从master.dbo.syslanguages中删掉相应的行系统管理员</p>
<p>附录4常用SQL命令
1.loadisql-Usa-P&#8211;进入ISQL环境
quit&#8212;-退出ISQL环境
2.shutdown(server_name)&#8211;关闭SYBASE服务器
ex.shutdownSYB_BACKUP
3.use(database_name)&#8211;打开数据库
ex.usetele114
4.setrowcount(number)&#8211;设置显示记录条数
ex.setrowcount10(为0则取消设置)
5.select(select_list)from(table_name)where(search_conditions)
&#8211;查看符合要求的内容
ex.selectmax(UnitNo1)fromcode_1th
6.update(table_name)set(column_name1)=(value1)，column_name2)=value2)
where(search_conditions)&#8211;重新赋值
ex.updatecode_1thsetPassword=&#8217;12345&#8242;，
RevCode1=substring(RevCode1，1，datalength(rtrim(RevCode1))-1)
wheresubstring(Code1，1，1)=&#8217;v'andsubstring(Code1，2，1)!=&#8221;
7.select(select_list)into(table_name1)from(table_name2)
where(search_conditions)
&#8211;将符合要求的table_name2中的内容存在table_name1中
ex.select*intosamplefromcode_1thwheresubstring(Code1，1，1)=&#8217;V&#8217;
8.truncatetable(table_name)&#8211;删去表
ex.truncatetablesample
delete(table_name)where(search_conditions)&#8211;删去表的一部分
ex.deleteexamplewhereCounty=&#8217;5&#8242;
9.sp_addumpdevice&#8217;disk&#8217;，(logicalname)，(physicalname)&#8211;定义转储设备
ex.sp_addumpdevice&#8217;disk&#8217;，&#8216;nbdump_1&#8242;，&#8216;vol1:\nbdump\nbdump.dat&#8217;
10.sp_dropdevice(device_name)&#8211;删去转储设备
ex.sp_dropdevicenbdump_1
11.dumptran(database_name)withtruncate_only&#8211;删去日志
ex.dumptrantele114withtruncate_only
12.sp_configure(config_name)，(config_value)&#8211;更改设置值
ex.sp_configure&#8217;allowupdates&#8217;，1
13.reconfigurewithoverride&#8211;使更改设置值有效
14.sp_who&#8211;使用数据库用户列表
15.kill(spid)&#8211;删去无效的数据库用户
ex.kill9&#8211;删去spid为9的数据库用户
16．sp_helpindex(tabel_name)&#8211;查看索引情况
ex.sp_helpindexcode_2th
17.sp_helpdb(database_name)&#8211;查看数据库占用空间情况
ex.sp_helpdbtele114</p>
<p>附录5例子数据库
terchers:教师表
============================================================
teacher#teacher_namephonesalary
(教师号)(教师姓名)（电话号码）（工资）
SMALLINTCHAR(1CHAR(10)FLOAT
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;
303Dr.Horn257-304927540.000000
290Dr.Lowe257-239031450.000000
430Dr.Engle257-462138200.000000
180Dr.Cooke257-808829560.000000
560Dr.Olsen257-808631778.000000
784Dr.Sacango257-304632098.000000</p>
<p>enrolls:成绩表
==================================================
course#section#student#grade
（课程号）（学期）（学号）（成绩）
SMALLINTSMALLINTSMALLINTSMALLINT
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;
73011483
45022103
73012101
29012983
48022983
73013482
29013494
48013584
48014102
45014732
73014733
48024730
29015482
73015583
73016494
48016494
45016544
45025484</p>
<p>courses:课程表
======================================================================
coursecourse_namedepartmentnum_credits
（课程号）（课程名）（系）（学分）
SMALLINTCHAR(20)CHAR(16)SMALLINT
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;
450WesternCivilizationHistory3
730CalculusIVMath4
290EnglishCompositionEnglish3
480CompilerWritingComputerScience3</p>
<p>sections:学期表
=======================================================
section#teachers#course#num_students
（学期）（教师号）（课程号）（学生数）
SMALLINTSMALLINTSMALLINTSMALLINT
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-
25604502
27844802
11804803
14302903
12907306
13034502








students:学生表
===============================================================================
student#student_nameaddresszipcitystatesex
（学号）（学生姓名）（地址）（地区号）（城市）（州）（性别）
SMALLINTCHAR(1CHAR(30)CHAR(5)CHAR(10)CHAR(2)CHAR(1)
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;
558ValShipp238WestportRoad60556ChILF
148SusanPowell534EastRiverDr.19041HaPAF
210BobDawson120Southjefferson02891NeRIM
298HowardMansfield290WynkoopDrive22180ViVAM
348SusanPugh534EastHamptonDr.06107HaCNF
349JoeAdams473EmmersonStreet19702NeDEM
354JanetLadd44110thStreet18073PePAF
410BillJones120SouthHarrison92660NeCAM
473CarolDean983ParkAvenue02169BoMAF
548AllenThomas238WestOxRoad60624ChILM
649JohnAnderson473EmmoryStreet10008NeNYM
654JanetThomas4416thStreet16510ErNYF</p>
<p class="MsoNormal">
sybase数据库知识</p>
<p class="MsoNormal" align="left">附录6练习题答案
（下列习题参考表enrolls,表teachers,表courses,表sections,表students）
1、Select*fromzylwherexm=&#8217;张三&#8216;语句中代表了哪三种含义？
Ÿ查询什么
Ÿ从什么地方
Ÿ条件</p>
<p>2、列出表enrolls,表teachers,表courses,表sections,表students中所有记录。
(1)select*fromenrolls
(2)select*fromteachers
(3)select*fromcourses
(4)select*fromsections
(5)select*fromstudent</p>
<p>3、列出所有来自Chicago地区女生的姓名和地址。
1&#62;;selectstudent_name,address,city,statefromstudents
2&#62;;wherecity=&#8217;Chicago&#8217;andsex=&#8217;F&#8217;</p>
<p>4、列出地区代码在20000和29999之间的学生姓名、城市名称和地区代码。
1&#62;;selectstudent_name,city,state,zipfromstudents
2&#62;;wherezipnotbetween&#8217;20000&#8242;and&#8217;29999&#8242;</p>
<p>5、列出电话号码不以257开头的所有教师的姓名和电话号码？
1&#62;;selectteacher_name,phonefromteachers
2&#62;;wherephonenotlike&#8217;257%&#8217;</p>
<p>6、怎样查看表students中student_name=jake的记录？
1&#62;;select*fromstudentswherestudent_name=&#8217;jake&#8217;</p>
<p>7、列出所有不来自CA，IL州学生的姓名、城市名和州名。
1&#62;;selectstudent_name,city,statefromstudents
2&#62;;wherestatenotin(&#8216;CA&#8217;,'IL&#8217;)</p>
<p>8、按反字母顺序查出教师姓名及电话号码。
1&#62;;selectteacher_name,phonefromteachers
2&#62;;orderbyteacher_nameDESC</p>
<p>9、所有教师工资的平均数为多少？
1&#62;;selectavg(salary)fromteachers</p>
<p>10、表students中共有多少学生？
1&#62;;selectcount(*)fromstudents</p>
<p>11、如何启动和关闭SQLSERVER?如何检查？
Startserver–fRUN_SYBASE–fRUN_SYB_BACKUP
Showserver</p>
<p>12、Sybase数据库由哪几部分组成？写出各部分的作用？
(1)SybaseSQLServer
SybaseSQLServer是进行数据库管理和维护的一个联机的关系数据库管理系统，是整个Sybase产品的核心软件，起着数据管理、高速缓冲管理、事务管理的作用。</p>
<p>(2)SybaseSQLToolset
数据库应用系统的建立与开发的一组前端工具。由ISQL，DWB和APT组成。
ISQL是与SQLServer进行交互的一种SQL句法分析器。ISQL接收用户发出的SQL语言，将其发送给SQLServer，并将结果以形式化的方式显示在用户的标准输出上。
DWB是数据工作台，是SybaseSQLToolset的一个主要组成部分，它的作用在于使用户能够设置和管理SQLServer上的数据库，并且为用户提供一种对数据库的信息执行添加、更新和检索等操作的简便方法。在DWB中能完成ISQL的所有功能，且由于DWB是基于窗口和菜单的，因此操作比ISQL简单，是一种方便实用的数据库管理工具。
APT是Sybase客户软件部分的主要产品之一，也是从事实际应用开发的主要环境。APT工作台是用于建立应用程序的工具集，可以创建从非常简单到非常复杂的应用程序，它主要用于开发基于表格（Form）的应用。其用户界面采用窗口和菜单驱动方式，通过一系列的选择完成表格（Form）、菜单和处理的开发。</p>
<p>(3)SybaseOpenClient/OpenServer
通过OpenClient的DB-LIB库，应用程序可以访问SQLServer。而通过OpenServer的SERVER-LIB，应用程序可以访问其它的数据库管理系统。其是任何应用软件和任何类型的数据连接在一起的接口。</p>
<p>13、如何备份数据库zylong?恢复其备份？写出命令。
1&#62;;dumpdatabasezylongtozzz
2&#62;;go
3&#62;;loaddatabasezylongfromzzz
4&#62;;go</p>
<p>14、Sybinit的作用是什么？
作用：a.建立master设备
b.创建各个系统表
c.创建sybsystemprocs数据库配置参数</p>
<p>15、列出常用的系统表？系统过程（10个）？说明含义？</p>
<p>16、Sybase数据库包含哪些系统数据库？作用是什么？
●主数据库master；
●模型数据库model；
●系统过程数据库sybsystemprocs；
●临时数据库tempdb。</p>
<p>17、写出将/dev目录下650M的物理设备data112初始化为data112_log数据库的命令？
1&#62;;diskinit
2&#62;;name=&#8221;data112_log&#8221;
3&#62;;physname=&#8221;/dev/data112&#8243;
4&#62;;vdevno=7
5&#62;;size=332800
6&#62;;go</p>
<p>18、如何配置SYBASE运行环境？配置SQLServer内存为20M？配置连接数目为50？怎样使配置生效？写出命令。
1&#62;;sp_configure&#8221;memory&#8221;,10240
2&#62;;sp_configure&#8221;userconnections&#8221;,50
3&#62;;go
4&#62;;reconfigurewithoverride
5&#62;;go</p>
<p>19、如何建立表students按student_name的索引？
1&#62;;createindexsssonstudents(student_name)</p>
<p>20、如何设置显示记录数(SQL)？
1&#62;;setrowcount10</p>
<p>21、有多少来自CA，IL州成绩大于2的学生？
1&#62;;selectstudent_name,state,gradefromstudents,enrolls
2&#62;;wherestatein(&#8216;CA&#8217;,'IL&#8217;)andgrade&#62;;2andstudents.student#=enrolls.student#</p>
<p>22、哪个学期有学生选课人数高于平均数？
1&#62;;selectcourse#,section#,num_studentsfromsections
2&#62;;wherenum_students&#62;;(selectavg(num_students)
3&#62;;fromsections)</p>
<p>23、列出平均成绩大于最低平均成绩的所有学生？
1&#62;;selectstudent_name,avg(grade)fromstudents,enrolls
2&#62;;wherestudents.student#=enrolls.student#
3&#62;;groupbystudent_namehavingavg(grade)&#62;;any
4&#62;;(selectavg(grade)fromenrollsgroupbystudent#)</p>
<p>24、在表courses中增加一条记录（CalculusV,Math,888,4）
1&#62;;insertintocourses(course_name,department,course#,num_credits)
2&#62;;values(&#8216;Calculus&#8217;,'Math&#8217;,730,4)</p>
<p>25、在表teachers中给Horn工资定为99999？
1&#62;;updateteacherssetsalary=99999whereteacher_name=&#8217;Dr.Horn&#8217;</p>
<p>26、删除表enrolls中成绩大于5或小于0的记录？
1&#62;;deletefromenrollswheregrde&#62;;5orgrade&#60;0</p>
<p class="MsoNormal"> </p>
]]></description>
			<content:encoded><![CDATA[<p> </p>
<p class="MsoNormal" align="left"><span lang="EN-US">Sybase11.5</span><span>数据库介绍</span><span lang="EN-US">4<br />
1</span><span>．基本概念</span><span lang="EN-US">4<br />
1.1</span><span>、</span><span lang="EN-US">Sybase11.54<br />
1.2</span><span>、数据库服务器、数据库</span><span lang="EN-US">4<br />
1.3</span><span>、物理设备、逻辑设备</span><span lang="EN-US">4<br />
1.4</span><span>、系统表、系统存储过程</span><span lang="EN-US">5<br />
2</span><span>．常用命令</span><span lang="EN-US">6<br />
2.1</span><span>、</span><span lang="EN-US">isql6<br />
2.2</span><span>、</span><span lang="EN-US">Select7<br />
3</span><span>．数据库启动</span><span lang="EN-US">7<br />
3.1</span><span>、自动启动</span><span lang="EN-US">7<br />
3.2</span><span>、手工启动</span><span lang="EN-US">7<br />
3.3</span><span>、检查数据库系统是否启动</span><span lang="EN-US">7<br />
4</span><span>．数据库关闭</span><span lang="EN-US">7<br />
4.1</span><span>、自动关闭</span><span lang="EN-US">7<br />
4.2</span><span>、手工关闭</span><span lang="EN-US">8<br />
5</span><span>．备份</span><span lang="EN-US">9<br />
6</span><span>．恢复</span><span lang="EN-US">9<br />
7</span><span>．日志文件</span><span lang="EN-US">9<br />
7.1</span><span>、数据库事务日志</span><span lang="EN-US">(transactionlog)9<br />
7.2</span><span>、数据库错误日志</span><span lang="EN-US">&#8211;$SYBASE/install/*.log10<br />
7.3</span><span>、网管日志（告警、性能、操作、系统日志）</span><span lang="EN-US">10<br />
8</span><span>．常见错误</span><span lang="EN-US">10<br />
9</span><span>．习题</span><span lang="EN-US">10<br />
</span></p>
<p class="MsoNormal" align="left"><span lang="EN-US"><span id="more-138"></span><br />
Sybase11.5</span><span>数据库介绍</span><span lang="EN-US"><br />
1</span><span>．基本概念</span><span lang="EN-US"><br />
1.1</span><span>、</span><span lang="EN-US">Sybase11.5<br />
Sybase11.5</span><span>是</span><span lang="EN-US">Sybase</span><span>公司的最新版关系数据库，具有先进的技术、优异的性能和可靠的安全性。</span><span lang="EN-US">SBSTMMN-RMS</span><span>网管系统选用了</span><span lang="EN-US">Sybase11.5</span><span>作为后台数据库系统，管理和处理网管系统的数据。</span><span lang="EN-US"><br />
</span><span>由于数据库系统管理的是一个动态的数据集合，必须对数据库进行一些日常维护操作，如备份、恢复等。</span><span lang="EN-US"><br />
1.2</span><span>、数据库服务器、数据库</span><span lang="EN-US"><br />
</span><span>安装在</span><span lang="EN-US">SunSolaris</span><span>操作系统上的</span><span lang="EN-US">Sybase-11.5</span><span>数据库系统通常是由数据库服务器和备份服务器组成的。数据库是安装在数据库服务器上的数据集合，包括系统数据库和用户数据库，如系统安装完以后缺省安装了</span><span lang="EN-US">master</span><span>、</span><span lang="EN-US">model</span><span>、</span><span lang="EN-US">tempdb</span><span>、和</span><span lang="EN-US">sybsystemprocs</span><span>数据库，网管系统的数据库是</span><span lang="EN-US">mib</span><span>。其中</span><span lang="EN-US">master</span><span>数据库存放系统表，决定数据库的整体表现和用户数据库的信息；</span><span lang="EN-US">model</span><span>是建立新的用户数据库的摸板；</span><span lang="EN-US">tempdb</span><span>存放临时表和查询时产生的临时数据；</span><span lang="EN-US">sybsystemprocs</span><span>存放数据库的系统存储过程。</span><span lang="EN-US"><br />
</span><span>备份服务器用于数据库的备份。</span><span lang="EN-US"><br />
1.3</span><span>、物理设备、逻辑设备</span><span lang="EN-US"><br />
</span><span>数据库服务器管理着许多逻辑设备，系统数据库和用户数据库就建立在这些逻辑设备上。逻辑设备对应与操作系统的物理设备。物理设备有字符设备（也叫裸设备，没有缓冲，如</span><span lang="EN-US">/dev/rdsk/c0t3d0s5</span><span>）和块设备（经过了缓冲，如</span><span lang="EN-US">/usr/local/sybase/master.dat</span><span>）。一般选用没有缓冲的字符设备。</span><span lang="EN-US"><br />
1.4</span><span>、系统表、系统存储过程</span><span lang="EN-US"><br />
master</span><span>数据库存放着一些决定系统整体表现的系统表，</span><span lang="EN-US">sybsystemprocs</span><span>存放系统存储过程。这些系统表和系统存储过程是我们进行数据库维护的手段和工具。</span><span lang="EN-US"><br />
1.4.1</span><span>、重要的系统表</span><span lang="EN-US"><br />
</span><span>信息系统表</span><span lang="EN-US"><br />
</span><span>用户帐号</span><span lang="EN-US">syslogins<br />
</span><span>当前进程</span><span lang="EN-US">sysprocesses<br />
</span><span>配置信息</span><span lang="EN-US">sysconfigures<br />
</span><span>系统错误信息</span><span lang="EN-US">sysmessages<br />
</span><span>数据库服务器里的数据库</span><span lang="EN-US">sysdatabases<br />
</span><span>每个数据库分配的空间和使用</span><span lang="EN-US">sysusages<br />
</span><span>系统的设备</span><span lang="EN-US">sysdevices<br />
</span><span>当前激活的锁</span><span lang="EN-US">syslocks<br />
</span><span>字符集</span><span lang="EN-US">syscharsets<br />
</span><span>语言</span><span lang="EN-US">syslanguages</p>
<p>1.4.2</span><span>、重要的系统存储过程</span><span lang="EN-US"><br />
sp_addlogin<br />
sp_addumpdevice<br />
sp_adduser<br />
sp_configure<br />
sp_gropdevice<br />
sp_help<br />
sp_helpdb<br />
sp_helpindex<br />
sp_helpdevice<br />
sp_monitor<br />
sp_password<br />
sp_who<br />
2</span><span>．常用命令</span><span lang="EN-US"><br />
2.1</span><span>、</span><span lang="EN-US">isql<br />
isql</span><span>是</span><span lang="EN-US">sybase</span><span>的一个前台工具，所有的</span><span lang="EN-US">sql</span><span>查询语言和系统存储过程必须在</span><span lang="EN-US">isql</span><span>下执行。在</span><span lang="EN-US">Unix</span><span>的命令行下可以启动</span><span lang="EN-US">isql</span><span>，命令格式如下：</span><span lang="EN-US"><br />
isql–S&lt;</span><span>数据库服务器</span><span lang="EN-US">&gt;;-U&lt;</span><span>用户名</span><span lang="EN-US">&gt;;-P&lt;</span><span>口令</span><span lang="EN-US">&gt;;<br />
</span><span>数据库服务器、用户名和口令可以从</span><span lang="EN-US">$RMSROOT/ini/rms.ini</span><span>的文件中查到，下面是这个文件内容的示例：</span><span lang="EN-US"><br />
LANGUAGE=en<br />
RESOURCE=RMSAppE<br />
DATASERVERTYPE=Sybase<br />
DATASERVERNAME=SYB<br />
DBADMINUSER=sa<br />
DBADMINUSERPASSWD=sybaseadm<br />
DBUSER=rmsuser<br />
DBUSERPASSWD=password<br />
DBNAME=mib<br />
MSQKEY=1997<br />
</span><span>其中</span><span lang="EN-US">SYBDNP</span><span>是数据库服务器，</span><span lang="EN-US">sa,sybaseadm</span><span>分别是数据库超级用户的用户名和口令，</span><span lang="EN-US">rmsuser,password</span><span>分别是一般用户的用户名和口令。</span><span lang="EN-US"></span></p>
<p class="MsoNormal"><span lang="EN-US"><br />
</span><strong><span lang="EN-US">sybase</span></strong><strong><span>数据库知识</span></strong><span lang="EN-US"></span></p>
<p class="MsoNormal" align="left"><span lang="EN-US">2.2</span><span>、</span><span lang="EN-US">Select<br />
</span><span>从数据库的表中查询数据用</span><span lang="EN-US">select</span><span>，它是在</span><span lang="EN-US">isql</span><span>下执行的。</span><span lang="EN-US"><br />
</span><span>如：</span><span lang="EN-US"><br />
select*fromsysdatabaseswheredbid=1<br />
</span><span>查询</span><span lang="EN-US">master</span><span>数据库的信息。</span><span lang="EN-US"><br />
3</span><span>．数据库启动</span><span lang="EN-US"><br />
3.1</span><span>、自动启动</span><span lang="EN-US"><br />
</span><span>数据库在操作系统启动时，一般能够自动启动。</span><span lang="EN-US"><br />
3.2</span><span>、手工启动</span><span lang="EN-US"><br />
</span><span>在异常情况下，或者对数据库进行维护时，可以用手工启动数据库：</span><span lang="EN-US"><br />
/etc/rc3.d/SxxSYBASE.server<br />
3.3</span><span>、检查数据库系统是否启动</span><span lang="EN-US"><br />
</span><span>用下面的命令可以检查数据库服务器是否启动：</span><span lang="EN-US"><br />
$SYBASE/install/showserver<br />
</span><span>如果数据库服务器和备份服务器已经启动，则应该输出两条记录，如：</span><span lang="EN-US"><br />
UIDPIDPPIDCSTIMETTYTIMECMD<br />
root25625507</span><span>月</span><span lang="EN-US">20?5:01/usr/local/sybase/bin/dataserver-sSYBDNP<br />
root25725507</span><span>月</span><span lang="EN-US">20?5:01/usr/local/sybase/bin/backupserver-SSYBDNP<br />
4</span><span>．数据库关闭</span><span lang="EN-US"><br />
4.1</span><span>、自动关闭</span><span lang="EN-US"><br />
</span><span>当操作系统关闭时，数据库服务器也会自动关闭</span><span lang="EN-US"><br />
4.2</span><span>、手工关闭</span><span lang="EN-US"><br />
4.2.1</span><span>、用</span><span lang="EN-US">shutdown</span><span>命令手工在</span><span lang="EN-US">isql</span><span>下</span><span lang="EN-US"><br />
</span><span>在</span><span lang="EN-US">isql</span><span>下用</span><span lang="EN-US">select*fromsysservers</span><span>找出运行的数据库服务器，如：</span><span lang="EN-US"><br />
1&gt;;select*fromsysservers<br />
2&gt;;go<br />
srvidsrvstatussrvname<br />
srvnetnamesrvclass<br />
srvsecmech<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
18SYB_BACKUP<br />
SYBDNP_back1<br />
NULL<br />
28local<br />
SYBDNP1<br />
NULL<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
(2rowsaffected)<br />
</span><span>则用：</span><span lang="EN-US"><br />
shutdownSYB_BACKUP<br />
</span><span>和</span><span lang="EN-US"><br />
shutdown<br />
</span><span>分别关闭备份服务器和数据库服务器。</span><span lang="EN-US"><br />
4.2.2</span><span>、用</span><span lang="EN-US">kill</span><span>杀掉数据库的进程</span><span lang="EN-US"><br />
</span><span>这是数据库运行不正常，用</span><span lang="EN-US">shutdown</span><span>不能关闭情况下的紧急办法，不推荐该办法。</span><span lang="EN-US"><br />
</span><span>如在</span><span lang="EN-US">Unix</span><span>命令行下运行：</span><span lang="EN-US"><br />
kill255<br />
kill256<br />
5</span><span>．备份</span><span lang="EN-US"><br />
</span><span>数据库备份用来周期性地备份系统使用的数据库，以便在出现系统故障或意外事故时，能顺利地将系统恢复到备份时的状态。</span><span lang="EN-US"><br />
dumpdatabase&lt;</span><span>数据库</span><span lang="EN-US">&gt;;to&#8221;&lt;</span><span>设备名</span><span lang="EN-US">&gt;;&#8221;capacity=&lt;</span><span>设备容量</span><span lang="EN-US">&gt;;,dumpvolume=&lt;</span><span>卷标</span><span lang="EN-US">&gt;;withinit<br />
6</span><span>．恢复</span><span lang="EN-US"><br />
</span><span>一般情况下不使用该操作，如果因系统故障或者意外事故破坏了数据库，或者在重装系统后希望恢复到重装前的状态，则通过采用以前的备份来恢复数据库。</span><span lang="EN-US"><br />
loaddatabase&lt;</span><span>数据库</span><span lang="EN-US">&gt;;from&#8221;&lt;</span><span>设备名</span><span lang="EN-US">&gt;;&#8221;<br />
7</span><span>．日志文件</span><span lang="EN-US"><br />
</span><span>日志文件</span><span lang="EN-US">(log)</span><span>是记录系统运行情况的重要文件，在系统维护中起着重要作用。</span><span lang="EN-US"><br />
7.1</span><span>、数据库事务日志</span><span lang="EN-US">(transactionlog)<br />
</span><span>是数据库运行过程产生的，所有对数据库的写操作，都会在数据库事务日志里做记录。这样就可以保证数据的完整性，也是数据库备份和恢复的基础。该日志的内容对用户不可见，但其容量回随着系统的运行逐步增加，当其容量接近满时，就会阻塞系统的运行。</span><span lang="EN-US"><br />
</span><span>网管系统设置了对数据库事务日志的自动清除，当数据库事务日志的容量接近满时，就自动清除。</span><span lang="EN-US"><br />
7.2</span><span>、数据库错误日志</span><span lang="EN-US">&#8211;$SYBASE/install/*.log<br />
</span><span>记录数据库运行中的错误，对于用户可见。</span><span lang="EN-US"><br />
7.3</span><span>、网管日志（告警、性能、操作、系统日志）</span><span lang="EN-US"><br />
</span><span>记录网关运行中的情况。</span><span lang="EN-US"></p>
<p>8</span><span>．常见错误</span><span lang="EN-US"><br />
Q:</span><span>数据库阻塞，报告数据库日志满</span><span lang="EN-US"><br />
dumptransaction[</span><span>数据库名</span><span lang="EN-US">]withtrancate_only<br />
</span><span>如果还不行，可用：</span><span lang="EN-US"><br />
dumptransaction[</span><span>数据库名</span><span lang="EN-US">]withno_log<br />
Q:</span><span>数据库不能正常启动，报告共享内存不够</span><span lang="EN-US"><br />
A:</span><span>删除</span><span lang="EN-US">$SYBASE</span><span>下的</span><span lang="EN-US">*.krg,*.srg0</span><span>文件</span><span lang="EN-US"><br />
9</span><span>．习题</span><span lang="EN-US"><br />
9.1</span><span>数据库服务器上的</span><span lang="EN-US">master</span><span>、</span><span lang="EN-US">sybsystemprocs</span><span>和</span><span lang="EN-US">mib</span><span>数据库分别起什么作用？</span><span lang="EN-US"><br />
Master</span><span>数据库控制整个数据库服务器的运行，并且存储其他用户数据库极其设备信息。</span><span lang="EN-US">Master</span><span>数据库是在一些系统表里面存储这些信息的。</span><span lang="EN-US"><br />
Sybsystemprocs</span><span>数据库存放系统存储过程。</span><span lang="EN-US"><br />
Mib</span><span>是存储和处理</span><span lang="EN-US">SBSRMS</span><span>网管信息的数据库。</span><span lang="EN-US"><br />
9.2</span><span>数据库的物理设备是选用字符设备还是块设备好？为什么？</span><span lang="EN-US"><br />
</span><span>数据库的物理设备选用没有缓冲的字符设备好。这样能减少数据库损坏的可能。</span><span lang="EN-US"><br />
9.3</span><span>查看数据库服务器上的数据库、逻辑设备、设备使用情况分别需要查询什么系统表？并写出其中一个查询命令。</span><span lang="EN-US"><br />
</span><span>分别查询</span><span lang="EN-US">sysdatabases,sysdebices,sysusages</span><span>系统表。如：</span><span lang="EN-US"><br />
select*fromsysdatases<br />
9.4</span><span>如何手工启动数据库服务器？如何检查数据库服务器是否启动？</span><span lang="EN-US"><br />
</span><span>用</span><span lang="EN-US">/etc/rc3.d/SxxSYBASE.server</span><span>启动数据库服务器。用</span><span lang="EN-US">$SYBASE/install/showserver</span><span>可以检查数据库是否启动。</span><span lang="EN-US"><br />
9.5</span><span>如何手工关闭数据库服务器？</span><span lang="EN-US"><br />
</span><span>用</span><span lang="EN-US">shutdown</span><span>或</span><span lang="EN-US">kill</span><span>可以手工关闭数据库服务器</span><span lang="EN-US"><br />
9.6</span><span>如何备份数据库？</span><span lang="EN-US"><br />
dumpdatabase[</span><span>数据库名</span><span lang="EN-US">]to&#8221;</span><span>设备名</span><span lang="EN-US">&#8221;<br />
9.7</span><span>如何查询数据库的错误？需要查询哪个日志文件？</span><span lang="EN-US"><br />
</span><span>可以检查</span><span lang="EN-US">$SYBASE/install/*.log<br />
9.8</span><span>如何在数据库事务日志满后手工清除？</span><span lang="EN-US"><br />
dumptransactionmibwithtruncate_only</span><span>或</span><span lang="EN-US"><br />
dumptransactionmibwithno_log</span><span lang="EN-US"></span></p>
<p class="MsoNormal" align="left"><strong><span lang="EN-US">sybase</span></strong><strong><span>数据库知识</span></strong><span lang="EN-US"></span></p>
<p class="MsoNormal" align="left"><span>目录</span><span lang="EN-US"></p>
<p></span><span>一、数据库系统（</span><span lang="EN-US">DATABASESYSTEM</span><span>）的组成</span><span lang="EN-US"><br />
1</span><span>．计算机系统</span><span lang="EN-US"><br />
2</span><span>．数据库</span><span lang="EN-US"><br />
3</span><span>．数据库管理系统（</span><span lang="EN-US">DBMS</span><span>）</span><span lang="EN-US"><br />
4</span><span>．应用程序和用户</span><span lang="EN-US"><br />
</span><span>二、数据模型的基本概念</span><span lang="EN-US"><br />
1.</span><span>关系数据模型</span><span lang="EN-US"><br />
2.</span><span>层次数据模型</span><span lang="EN-US"><br />
3</span><span>．网状数据模型</span><span lang="EN-US"><br />
</span><span>三、</span><span lang="EN-US">SYBASE</span><span>数据库简介</span><span lang="EN-US"><br />
1</span><span>．版本</span><span lang="EN-US"><br />
2</span><span>．</span><span lang="EN-US">SYBASE</span><span>数据库的特点</span><span lang="EN-US"><br />
3</span><span>．</span><span lang="EN-US">SYBASE</span><span>数据库的组成</span><span lang="EN-US"><br />
</span><span>四、</span><span lang="EN-US">SYBASE</span><span>有关概念</span><span lang="EN-US"><br />
1</span><span>．数据库设备</span><span lang="EN-US"><br />
2</span><span>．系统数据库</span><span lang="EN-US"><br />
</span><span>（</span><span lang="EN-US">1</span><span>）</span><span lang="EN-US">master</span><span>数据库</span><span lang="EN-US"><br />
</span><span>（</span><span lang="EN-US">2</span><span>）</span><span lang="EN-US">model</span><span>数据库</span><span lang="EN-US"><br />
</span><span>（</span><span lang="EN-US">3</span><span>）</span><span lang="EN-US">sybsystemprocs</span><span>数据库</span><span lang="EN-US"><br />
</span><span>（</span><span lang="EN-US">4</span><span>）临时数据库</span><span lang="EN-US">tempdb<br />
</span><span>（</span><span lang="EN-US">5</span><span>）安全审核数据库</span><span lang="EN-US">sybsecurity<br />
</span><span>（</span><span lang="EN-US">6</span><span>）示例数据库</span><span lang="EN-US">pubs2<br />
</span><span>（</span><span lang="EN-US">7</span><span>）命令语法数据库</span><span lang="EN-US">sybsyntax<br />
3</span><span>．数据库对象</span><span lang="EN-US"><br />
</span><span>（</span><span lang="EN-US">1</span><span>）表</span><span lang="EN-US">(Tables)<br />
</span><span>（</span><span lang="EN-US">2</span><span>）视图</span><span lang="EN-US">(Views)<br />
</span><span>（</span><span lang="EN-US">3</span><span>）索引</span><span lang="EN-US">(Index)<br />
</span><span>（</span><span lang="EN-US">4</span><span>）存储过程</span><span lang="EN-US">(Storedprocedures)<br />
</span><span>（</span><span lang="EN-US">5</span><span>）触发器</span><span lang="EN-US">(Triggers)<br />
</span><span>（</span><span lang="EN-US">6</span><span>）缺省与规则</span><span lang="EN-US">(Defaultsandrules)<br />
4</span><span>．</span><span lang="EN-US">SQLSERVER</span><span>的用户及权限</span><span lang="EN-US"><br />
</span><span>（</span><span lang="EN-US">1</span><span>）建立</span><span lang="EN-US">SQL</span><span>服务器用户名（登录帐号）</span><span lang="EN-US"><br />
</span><span>（</span><span lang="EN-US">2</span><span>）增加数据库用户名</span><span lang="EN-US"><br />
5</span><span>．</span><span lang="EN-US">SQLSERVER</span><span>的启动与关闭</span><span lang="EN-US"><br />
(1)</span><span>启动</span><span lang="EN-US"><br />
(2)</span><span>关闭</span><span lang="EN-US"><br />
(3)</span><span>启动过程</span><span lang="EN-US"><br />
(4)Sybase</span><span>数据库目录说明</span><span lang="EN-US"><br />
</span><span>五、</span><span lang="EN-US">T-SQL</span><span>语言</span><span lang="EN-US"><br />
1</span><span>．标准的</span><span lang="EN-US">SQL</span><span>语言</span><span lang="EN-US"><br />
(1)</span><span>数据定义语句（</span><span lang="EN-US">DLL</span><span>）</span><span lang="EN-US"><br />
(2)</span><span>数据操作语句</span><span lang="EN-US">(DML)<br />
(3)</span><span>数据控制语言</span><span lang="EN-US">(DCL)<br />
2</span><span>．函数</span><span lang="EN-US"><br />
</span><span>六、数据库备份与恢复</span><span lang="EN-US"><br />
1</span><span>．系统软件故障恢复</span><span lang="EN-US"><br />
2</span><span>．介质故障的恢复</span><span lang="EN-US"><br />
</span><span>（</span><span lang="EN-US">1</span><span>）备份数据库和事务日志</span><span lang="EN-US"><br />
</span><span>（</span><span lang="EN-US">2</span><span>）恢复数据库</span><span lang="EN-US"><br />
</span><span>七、几个实用程序</span><span lang="EN-US"><br />
1.BCP<br />
2.ISQL<br />
3</span><span>．</span><span lang="EN-US">SHOWSERVER<br />
4</span><span>．</span><span lang="EN-US">STARTSERVER<br />
5</span><span>．</span><span lang="EN-US">SYMAN<br />
6</span><span>．</span><span lang="EN-US">SYBINIT<br />
</span><span>八、</span><span lang="EN-US">SQL</span><span>客户端软件</span><span lang="EN-US"><br />
1.DOS</span><span>状态下</span><span lang="EN-US">SQL</span><span>客户端软件</span><span lang="EN-US"><br />
2</span><span>．</span><span lang="EN-US">WINDOWS3.2</span><span>状态下</span><span lang="EN-US">SQL</span><span>客户端软件</span><span lang="EN-US"><br />
</span><span>练习题</span><span lang="EN-US"><br />
</span><span>附录</span><span lang="EN-US"><br />
</span><span>附录</span><span lang="EN-US">1</span><span>只有在</span><span lang="EN-US">MASTER</span><span>数据库中才能有的系统表</span><span lang="EN-US"><br />
</span><span>附录</span><span lang="EN-US">2</span><span>在用户数据库和系统数据库中都有的系统表</span><span lang="EN-US"><br />
</span><span>附录</span><span lang="EN-US">3</span><span>由</span><span lang="EN-US">SQLSERVER</span><span>提供的系统过程功能和执行权限</span><span lang="EN-US"><br />
</span><span>附录</span><span lang="EN-US">4</span><span>常用</span><span lang="EN-US">SQL</span><span>命令</span><span lang="EN-US"><br />
</span><span>附录</span><span lang="EN-US">5</span><span>例子数据库</span><span lang="EN-US"><br />
</span><span>附录</span><span lang="EN-US">6</span><span>练习题答案</span><span lang="EN-US"></p>
<p>SYBASE</span><span>数据库</span><span lang="EN-US"><br />
</span><span>一、数据库系统（</span><span lang="EN-US">Databasesystem</span><span>）的组成</span><span lang="EN-US"><br />
</span><span>数据库系统是用于组织和存取大量数据的管理系统，方便多用户使用计算机软、硬件资源组成的系统。它与文件系统的重要区别是数据的充分共享、交叉访问以及与应用（程序）的高度独立性。</span><span lang="EN-US"><br />
</span><span>数据库系统由计算机系统、数据库、数据库描述、数据库管理系统、数据库应用程序和用户组成。</span><span lang="EN-US"><br />
1</span><span>．计算机系统</span><span lang="EN-US"><br />
</span><span>计算机系统指的是用于数据库管理的计算机硬件资源和基本软件资源。硬件资源包括</span><span lang="EN-US">CPU</span><span>，大容量内存（用于存放操作系统，数据库管理系统、应用程序、数据库等），直接存取的外部存储设备（硬盘）。软件资源包括操作系统，应用程序。</span><span lang="EN-US"><br />
2</span><span>．数据库</span><span lang="EN-US"><br />
</span><span>数据库是数据处理的新技术，也是一种先进的软件工程。</span><span lang="EN-US"><br />
</span><span>什么是数据库？</span><span lang="EN-US"><br />
</span><span>数据库是提供数据的基地。它能保存数据并让用户从它这里访问有用的数据。</span><span lang="EN-US"><br />
</span><span>数据库中的业务数据是以一定的组织方式存储在一起的相互有关的数据整体。数据库中保存的数据是相关数据，是一种相对稳定的中间数据。为了便于管理和处理这些数据，将这些数据存入数据库时必须具有一定的数据结构和文件组织形式（顺序文件、索引文件）。</span><span lang="EN-US"><br />
“</span><span>相关数据</span><span lang="EN-US">”</span><span>、</span><span lang="EN-US">“</span><span>一定的组织方式</span><span lang="EN-US">”</span><span>和</span><span lang="EN-US">“</span><span>共享</span><span lang="EN-US">”</span><span>是关系数据库的三个基本要素。</span><span lang="EN-US"><br />
3</span><span>．数据库管理系统（</span><span lang="EN-US">DBMS</span><span>）</span><span lang="EN-US"><br />
DBMS</span><span>是</span><span lang="EN-US">DataBaseManagementSystem</span><span>的缩写。它包括面向用户的接口功能和面向系统的维护功能两大方面。前者为用户存取数据库提供必要的手段，包括处理能力。后者为数据库管理者提供数据库的维护工具。具体为数据库定义，数据装入，数据库操作、控制、监督、维护、恢复、通信等。</span><span lang="EN-US">DBMS</span><span>通常由三部分组成：数据库描述语言</span><span lang="EN-US">(DLL)</span><span>、数据操纵</span><span lang="EN-US">(DML)</span><span>或查询程序、数据库管理例行程序。</span><span lang="EN-US"><br />
4</span><span>．应用程序和用户</span><span lang="EN-US"><br />
</span><span>数据库管理员（</span><span lang="EN-US">DBA</span><span>）是系统工作人员，负责对整个数据库系统进行维护。</span><span lang="EN-US"><span></span></span><span lang="EN-US"><br />
</span><span>应用程序员是后台专业用户，对数据库进行检索、插入、删除或更新等操作。</span><span lang="EN-US"><span></span></span><span lang="EN-US"><br />
</span><span>非程序员是终端用户，通过联机终端设备，由基本命令组成的询问语言对数据库进行检索、插入、删除或更新等操作。例如话务员，管理员，质检员。</span><span lang="EN-US"><span></span></span><span lang="EN-US"><br />
</span><span>总之，信息的集合是数据库，而</span><span lang="EN-US">DBMS</span><span>的软件可用于完成信息的存储和检索。</span><span lang="EN-US"><br />
</span><span>二、数据模型的基本概念</span><span lang="EN-US"><br />
</span><span>数据模型是数据库系统的核心，是对客观事物及其联系的数据的描述，即实体模型的数据化。数据模型是表示实体与实体之间联系的模型。当前流行的数据模型有关系、层次、网状三种模型。</span><span lang="EN-US"><br />
1.</span><span>关系数据模型</span><span lang="EN-US"><br />
</span><span>这种模型是新的</span><span lang="EN-US">DBMS,</span><span>将数据简单地表示为一个或多个表格的内容。其是由表格形式体现，这种</span><span lang="EN-US">“</span><span>表</span><span lang="EN-US">”</span><span>在数学上称为关系。表中的每一行称为记录，每个记录由若干字段组成，一个记录描述一个事物，它的各字段是该事物各种性质的描述，在关系数据库中这些字段称为属性。如下图所示：（记录，字段，属性说明）</span><span lang="EN-US"><br />
terchers:<br />
============================================================<br />
teacher#teacher_namephonesalary<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
303Dr.Horn257-304927540.000000<br />
290Dr.Lowe257-239031450.000000<br />
430Dr.Engle257-462138200.000000<br />
180Dr.Cooke257-808829560.000000<br />
560Dr.Olsen257-808631778.000000<br />
784Dr.Sacango257-304632098.000000<br />
</span><span>最典型的关系系统产品是</span><span lang="EN-US">DB2,DBASE</span><span>，</span><span lang="EN-US">Foxpro</span><span>，</span><span lang="EN-US">SYBASE</span><span>，</span><span lang="EN-US">ORACLE</span><span>系列。关系系统流行的一个重要原因，是容易支持由计算机程序或直接由人访问数据的能力，非常适宜作查询语言。</span><span lang="EN-US"><br />
</span><span>其中，表中每列都有一固定数据类型。常用</span><span lang="EN-US">SQLServer</span><span>数据类型如下：</span><span lang="EN-US"></p>
<p></span><span>数据类型说明串长度</span><span lang="EN-US"><br />
CHAR(</span><span>长度</span><span lang="EN-US">)</span><span>定长字符串</span><span lang="EN-US">255<br />
VARCHAR(</span><span>长度</span><span lang="EN-US">)</span><span>变长字符串</span><span lang="EN-US">2000<br />
NUMBERIC(</span><span>精度，比例</span><span lang="EN-US">)</span><span>数字</span><span lang="EN-US"><br />
DATE</span><span>日期时间</span><span lang="EN-US"><br />
LONG(</span><span>长度</span><span lang="EN-US">)</span><span>大型可变长度字符串</span><span lang="EN-US">21</span><span>亿</span><span lang="EN-US"><br />
INT</span><span>，</span><span lang="EN-US">SMALLINT</span><span>整数</span><span lang="EN-US"><br />
FLOAT</span><span>实数</span><span lang="EN-US"></p>
<p>2.</span><span>层次数据模型</span><span lang="EN-US"><br />
</span><span>也称树状模型，是一个以记录类型为结点的有根的定向树。层次数据模型的特点为：有且仅有一个实体，向上不与任何实体联系称为根；有若干实体，向下不与任何实体联系称为叶，其余的实体向下可以与若干实体联系，但向上只与唯一的一个实体联系（一对多联系），称为中间节点。所有节点都处在某一层上。根节点在最高层，即第一层。同一层上的节点之间没有联系。具有这些特点的数据结构称为层次结构。例如大学行政组织结构。典型例子是</span><span lang="EN-US">IBM</span><span>的</span><span lang="EN-US">IMS</span><span>。</span><span lang="EN-US"></p>
<p></span><span>层次数据模型举例图</span><span lang="EN-US"><br />
3</span><span>．网状数据模型</span><span lang="EN-US"><br />
</span><span>网状模型是以记录类型为结点网状结构，网络与树（层次结构）的区别主要有如下两点：</span><span lang="EN-US">(1)</span><span>一个子结点可以有两个或多个父结点；</span><span lang="EN-US"><br />
(2)</span><span>在两个结点之间可以有两种或多种关系。</span><span lang="EN-US"></span></p>
<p class="MsoNormal" align="left"><strong><span lang="EN-US">sybase</span></strong><strong><span>数据库知识</span></strong><span lang="EN-US"></span></p>
<p class="MsoNormal" align="left"><span>在网络模型中用</span><span lang="EN-US">“</span><span>系</span><span lang="EN-US">”</span><span>表示这种关系，所谓系是一个二级树，它的根结点称为主节点，它的叶称为从结点。学生选课实体模型是网络数据模型如图。其数据库的直接用户是程序员，访问存储信息的方法是通过特殊的来自程序设计语言的调用，进行简单的特定查询，通常是不容易。</span><span lang="EN-US"></p>
<p></span><span>网状数据模型举例图</span><span lang="EN-US"></p>
<p></span><span>三、</span><span lang="EN-US">Sybase</span><span>数据库简介</span><span lang="EN-US"><br />
1</span><span>．版本</span><span lang="EN-US"><br />
1984</span><span>年，</span><span lang="EN-US">MarkB.Hiffman</span><span>和</span><span lang="EN-US">RobertEpstern</span><span>创建了</span><span lang="EN-US">Sybase</span><span>公司，并在</span><span lang="EN-US">1987</span><span>年推出了</span><span lang="EN-US">Sybase</span><span>数据库产品。</span><span lang="EN-US">SYBASE</span><span>主要有三种版本，一是</span><span lang="EN-US">UNIX</span><span>操作系统下运行的版本，二是</span><span lang="EN-US">NovellNetware</span><span>环境下运行的版本，三是</span><span lang="EN-US">WindowsNT</span><span>环境下运行的版本。对</span><span lang="EN-US">UNIX</span><span>操作系统目前广泛应用的为</span><span lang="EN-US">SYBASE10</span><span>及</span><span lang="EN-US">SYABSE11forSCOUNIX</span><span>。</span><span lang="EN-US"><br />
2</span><span>．</span><span lang="EN-US">Sybase</span><span>数据库的特点</span><span lang="EN-US"><br />
</span><span>（</span><span lang="EN-US">1</span><span>）客户</span><span lang="EN-US">/</span><span>服务器系统</span><span lang="EN-US"><br />
</span><span>在客户</span><span lang="EN-US">/</span><span>服务器结构中，应用被分在了多台机器上运行。一台机器是另一个系统的客户，或是另外一些机器的服务器。这些机器通过局域网或广域网联接起来。</span><span lang="EN-US"><br />
</span><span>客户</span><span lang="EN-US">/</span><span>服务器模型的好处是：</span><span lang="EN-US"><br />
●</span><span>它支持共享资源且在多台设备间平衡负载</span><span lang="EN-US"><br />
●</span><span>将处理工作分配在两个系统上，在网络上信息流通量将大大减少。</span><span lang="EN-US"></p>
<p></span><span>（</span><span lang="EN-US">2</span><span>）应用程序接口</span><span lang="EN-US">DB-LIB</span><span>和</span><span lang="EN-US">NET-LIB<br />
DB-LIB</span><span>：其它语言的连接；</span><span lang="EN-US"><br />
NET-LIB</span><span>：各种网络和通讯协议的连接</span><span lang="EN-US"><br />
</span><span>通过引入</span><span lang="EN-US">DB-LIB</span><span>，</span><span lang="EN-US">NET-LIB</span><span>，</span><span lang="EN-US">SYBASE</span><span>使整个</span><span lang="EN-US">Client/Server</span><span>应用与网络和平台无关。</span><span lang="EN-US"></p>
<p></span><span>（</span><span lang="EN-US">3</span><span>）高性能</span><span lang="EN-US"><br />
Sybase</span><span>真正吸引人的地方还是它的高性能。体现在以下几方面：</span><span lang="EN-US"><br />
●</span><span>可编程数据库</span><span lang="EN-US"><br />
</span><span>通过提供存储过程，创建了一个可编程数据库。存储过程允许用户编写自己的数据库子例程。这些子例程是经过预编译的，因此不必为每次调用都进行编译、优化、生成查询规划，因而查询速度要快得多。</span><span lang="EN-US"><br />
●</span><span>触发器</span><span lang="EN-US"><br />
</span><span>触发器是一种特殊的存储过程。通过触发器可以启动另一个存储过程，从而确保数据库的完整性。</span><span lang="EN-US"><br />
●</span><span>多线索化</span><span lang="EN-US"><br />
Sybase</span><span>数据库的体系结构的另一个创新之处就是多线索化。一般的数据库都依靠操作系统来管理与数据库的连接。当有多个用户连接时，系统的性能会大幅度下降。</span><span lang="EN-US">Sybase</span><span>数据库不让操作系统来管理进程，把与数据库的连接当作自己的一部分来管理。此外，</span><span lang="EN-US">Sybase</span><span>的数据库引擎还代替操作系统来管理一部分硬件资源，如端口、内存、硬盘，绕过了操作系统这一环节，提高了性能。</span><span lang="EN-US"></p>
<p>3</span><span>．</span><span lang="EN-US">Sybase</span><span>数据库的组成</span><span lang="EN-US"></p>
<p>sybase</span><span>数据库的组成图</span><span lang="EN-US"></p>
<p>Sybase</span><span>数据库主要由三部分组成：</span><span lang="EN-US"></p>
<p>(1)SybaseSQLServer<br />
SybaseSQLServer</span><span>是进行数据库管理和维护的一个联机的关系数据库管理系统，是整个</span><span lang="EN-US">Sybase</span><span>产品的核心软件，起着数据管理、高速缓冲管理、事务管理的作用。</span><span lang="EN-US"></p>
<p>(2)SybaseSQLToolset<br />
</span><span>数据库应用系统的建立与开发的一组前端工具。由</span><span lang="EN-US">ISQL</span><span>，</span><span lang="EN-US">DWB</span><span>和</span><span lang="EN-US">APT</span><span>组成。</span><span lang="EN-US"><br />
ISQL</span><span>是与</span><span lang="EN-US">SQLServer</span><span>进行交互的一种</span><span lang="EN-US">SQL</span><span>句法分析器。</span><span lang="EN-US">ISQL</span><span>接收用户发出的</span><span lang="EN-US">SQL</span><span>语言，将其发送给</span><span lang="EN-US">SQLServer</span><span>，并将结果以形式化的方式显示在用户的标准输出上。</span><span lang="EN-US"><br />
DWB</span><span>是数据工作台，是</span><span lang="EN-US">SybaseSQLToolset</span><span>的一个主要组成部分，它的作用在于使用户能够设置和管理</span><span lang="EN-US">SQLServer</span><span>上的数据库，并且为用户提供一种对数据库的信息执行添加、更新和检索等操作的简便方法。在</span><span lang="EN-US">DWB</span><span>中能完成</span><span lang="EN-US">ISQL</span><span>的所有功能，且由于</span><span lang="EN-US">DWB</span><span>是基于窗口和菜单的，因此操作比</span><span lang="EN-US">ISQL</span><span>简单，是一种方便实用的数据库管理工具。</span><span lang="EN-US"><br />
APT</span><span>是</span><span lang="EN-US">Sybase</span><span>客户软件部分的主要产品之一，也是从事实际应用开发的主要环境。</span><span lang="EN-US">APT</span><span>工作台是用于建立应用程序的工具集，可以创建从非常简单到非常复杂的应用程序，它主要用于开发基于表格（</span><span lang="EN-US">Form</span><span>）的应用。其用户界面采用窗口和菜单驱动方式，通过一系列的选择完成表格（</span><span lang="EN-US">Form</span><span>）、菜单和处理的开发。</span><span lang="EN-US"></p>
<p>(3)SybaseOpenClient/OpenServer<br />
</span><span>通过</span><span lang="EN-US">OpenClient</span><span>的</span><span lang="EN-US">DB-LIB</span><span>库，应用程序可以访问</span><span lang="EN-US">SQLServer</span><span>。而通过</span><span lang="EN-US">OpenServer</span><span>的</span><span lang="EN-US">SERVER-LIB</span><span>，应用程序可以访问其它的数据库管理系统。其是任何应用软件和任何类型的数据连接在一起的接口。</span><span lang="EN-US"><br />
</span><span>四、</span><span lang="EN-US">SYBASE</span><span>有关概念</span><span lang="EN-US"><br />
SybaseSQLServer</span><span>是一个多库数据库系统。这些数据库包括系统数据库和用户数据库。而不论是系统数据库还是用户数据库，都建立在数据库设备上。</span><span lang="EN-US"><br />
1</span><span>．数据库设备</span><span lang="EN-US"><br />
</span><span>所有的数据库都创建在数据库设备上。所谓数据库设备，不是指一个可识别的物理设备，而是指用于存储数据库和数据库对象的磁盘原始分区或操作系统文件。增加一个新的数据库设备时，必须对这些设备</span><span lang="EN-US">“</span><span>初始化</span><span lang="EN-US">”</span><span>。初始化的过程就是将物理磁盘、磁盘分区或操作系统文件变为</span><span lang="EN-US">SYBASE</span><span>数据库可以识别的设备。初始化数据库设备使用</span><span lang="EN-US">DISKINIT</span><span>命令：</span><span lang="EN-US"></p>
<p>DISKINIT<br />
NAME=</span><span>设备名，</span><span lang="EN-US"><br />
PHYSNAME=</span><span>物理设备名，</span><span lang="EN-US"><br />
VDEVNO=</span><span>虚拟设备号，</span><span lang="EN-US"><br />
SIZE=</span><span>块数</span><span lang="EN-US"></p>
<p></span><span>其中，</span><span lang="EN-US">NAME</span><span>指数据库设备名，此名将用于</span><span lang="EN-US">CREATEDATABASE</span><span>和</span><span lang="EN-US">ALTERDATABASE</span><span>命令。</span><span lang="EN-US">PHYSNAME</span><span>是原始磁盘分区或操作系统文件名。</span><span lang="EN-US">VDEVNO</span><span>是数据库设备的标识号，在</span><span lang="EN-US">SQLServer</span><span>中，它必须是唯一的。</span><span lang="EN-US">SIZE</span><span>的单位是</span><span lang="EN-US">2K</span><span>的块，对于新创建的数据库，最小的</span><span lang="EN-US">SIZE</span><span>是</span><span lang="EN-US">model</span><span>数据库的尺寸，即</span><span lang="EN-US">1024</span><span>个</span><span lang="EN-US">2K</span><span>的块（</span><span lang="EN-US">2M</span><span>）。</span><span lang="EN-US"></p>
<p></span><span>例如：</span><span lang="EN-US">/*</span><span>将</span><span lang="EN-US">/dev</span><span>目录下</span><span lang="EN-US">400M</span><span>的物理设备初始化为</span><span lang="EN-US">SYBASE</span><span>的数据库设备</span><span lang="EN-US">tele114_log01*/<br />
1&gt;;diskinit<br />
2&gt;;name=“tele114_log01”,<br />
3&gt;;physname=“/dev/rtelelog”<br />
4&gt;;vdevno=4<br />
5&gt;;size=204800/*2Kbyte*204800=400Mbyte*/<br />
6&gt;;go<br />
2</span><span>．系统数据库</span><span lang="EN-US"><br />
</span><span>安装</span><span lang="EN-US">Sybase</span><span>数据库时自动生成的下列系统数据库：</span><span lang="EN-US"><br />
●</span><span>主数据库</span><span lang="EN-US">master</span><span>；</span><span lang="EN-US"><br />
●</span><span>模型数据库</span><span lang="EN-US">model</span><span>；</span><span lang="EN-US"><br />
●</span><span>系统过程数据库</span><span lang="EN-US">sybsystemprocs</span><span>；</span><span lang="EN-US"><br />
●</span><span>临时数据库</span><span lang="EN-US">tempdb</span><span>。</span><span lang="EN-US"><br />
</span><span>也可选择下列数据库：</span><span lang="EN-US"><br />
●</span><span>安全审核数据库</span><span lang="EN-US">sybsecurity</span><span>；</span><span lang="EN-US"><br />
●</span><span>示例数据库</span><span lang="EN-US">pubs2</span><span>；</span><span lang="EN-US"><br />
?</span><span>命令语法数据库</span><span lang="EN-US">sybsyntax</span><span>。</span><span lang="EN-US"></p>
<p></span><span>（</span><span lang="EN-US">1</span><span>）</span><span lang="EN-US">master</span><span>数据库</span><span lang="EN-US"><br />
</span><span>包含许多系统表和系统过程，从总体上控制用户数据库和</span><span lang="EN-US">SQLServer</span><span>的操作，构成了</span><span lang="EN-US">SYBASE</span><span>系统的数据字典。</span><span lang="EN-US">MASTER</span><span>数据库主要记录信息为：</span><span lang="EN-US"><br />
●</span><span>登录帐号（</span><span lang="EN-US">SQL</span><span>服务器用户名）；</span><span lang="EN-US">syslogins,sysremolelogins<br />
●</span><span>正在执行的过程；</span><span lang="EN-US">sysprocesses<br />
●</span><span>可修改的环境变量；</span><span lang="EN-US">sysconfigures<br />
●</span><span>系统错误信息；</span><span lang="EN-US">sysmessages<br />
●SQL</span><span>服务器上每个数据库的信息；</span><span lang="EN-US">sysdatabases<br />
●</span><span>每个数据库占用的存储空间；</span><span lang="EN-US">sysusages<br />
●</span><span>系统上安装的磁带及磁带信息；</span><span lang="EN-US">sysdevices<br />
●</span><span>活动锁信息；</span><span lang="EN-US">syslocks<br />
</span><span>在执行</span><span lang="EN-US">createdatabase,alterdatabase</span><span>和</span><span lang="EN-US">diskinit</span><span>等命令时，必须在</span><span lang="EN-US">master</span><span>数据库。</span><span lang="EN-US"></p>
<p></span><span>（</span><span lang="EN-US">2</span><span>）</span><span lang="EN-US">model</span><span>数据库</span><span lang="EN-US"><br />
</span><span>提供了新用户数据库的初型。当我们每次用</span><span lang="EN-US">creatdatabase</span><span>命令时，</span><span lang="EN-US">SQLServer</span><span>都产生一个</span><span lang="EN-US">model</span><span>数据库的拷贝，然后把它扩展到命令要求的尺寸。如果我们修改了</span><span lang="EN-US">model</span><span>数据库，那么以后新创建的数据库都将随它而改变。下面是几个通常用到的对</span><span lang="EN-US">model</span><span>数据库的改变：</span><span lang="EN-US"><br />
●</span><span>增加用户数据库类型、规则或缺省；</span><span lang="EN-US"><br />
●</span><span>可存取</span><span lang="EN-US">SQLServer</span><span>上所有数据库的用户用</span><span lang="EN-US">sp_adduser</span><span>增加到</span><span lang="EN-US">model</span><span>数据库上；</span><span lang="EN-US"><br />
●</span><span>缺省权限（特别是</span><span lang="EN-US">guest</span><span>帐号）可在</span><span lang="EN-US">model</span><span>中建立；</span><span lang="EN-US"><br />
●</span><span>诸如</span><span lang="EN-US">selectinto/bulkcopy</span><span>那样的数据库选项可在</span><span lang="EN-US">model</span><span>中设置。这些设置反映到所有新创建的数据库中。它们在</span><span lang="EN-US">model</span><span>中最原始的值是关（</span><span lang="EN-US">off</span><span>）。</span><span lang="EN-US"><br />
</span><span>在一般情况下，大多数用户无权修改</span><span lang="EN-US">model</span><span>数据库，又没被授权读取。因为</span><span lang="EN-US">model</span><span>中所有内容已拷贝到新数据库中，授权读</span><span lang="EN-US">model</span><span>没什么意义。</span><span lang="EN-US"><br />
</span><span>例：查询</span><span lang="EN-US">model</span><span>数据库中的表文件名</span><span lang="EN-US"><br />
1&gt;;usemodel<br />
2&gt;;go<br />
1&gt;;sp_help<br />
2&gt;;go<br />
NameOwnerObject_type<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
sysalternatesdbosystemtable<br />
syscolumnsdbosystemtable<br />
syscommentsdbosystemtable<br />
sysconstraintsdbosystemtable<br />
sysdependsdbosystemtable<br />
sysgamsdbosystemtable<br />
sysindexesdbosystemtable<br />
syskeysdbosystemtable<br />
syslogsdbosystemtable<br />
sysobjectsdbosystemtable<br />
sysproceduresdbosystemtable<br />
sysprotectsdbosystemtable<br />
sysreferencesdbosystemtable<br />
sysrolesdbosystemtable<br />
syssegmentsdbosystemtable<br />
systhresholdsdbosystemtable<br />
systypesdbosystemtable<br />
sysusermessagesdbosystemtable<br />
sysusersdbosystemtable</p>
<p></span><span>（</span><span lang="EN-US">3</span><span>）</span><span lang="EN-US">sybsystemprocs</span><span>数据库</span><span lang="EN-US"><br />
</span><span>库中存储系统过程，当用户执行一存储过程（以</span><span lang="EN-US">sp_</span><span>开始）时，</span><span lang="EN-US">SQL</span><span>服务器首先在用户当前数据库中搜索指定的存储过程，如果没有相应过程，则到系统过程数据库中寻找，若没有，再到</span><span lang="EN-US">MASTER</span><span>数据库中寻找。</span><span lang="EN-US"></p>
<p></span><span>（</span><span lang="EN-US">4</span><span>）临时数据库</span><span lang="EN-US">tempdb<br />
</span><span>该数据库为临时表和临时工作提供了一个存储区域。临时数据库是</span><span lang="EN-US">SQLServer</span><span>上所有数据库共享的工作空间。由于这些表都是临时的，所以每当用户退出或系统失败，这些表都将消失。</span><span lang="EN-US"></p>
<p></span><span>（</span><span lang="EN-US">5</span><span>）安全审核数据库</span><span lang="EN-US">sybsecurity<br />
</span><span>数据库中保存系统的安全审核信息，它可跟踪记录每个用户的操作情况，为维护系统安全提供控制手段。</span><span lang="EN-US"></p>
<p></span><span>（</span><span lang="EN-US">6</span><span>）示例数据库</span><span lang="EN-US">pubs2<br />
</span><span>为用户提供一个学习</span><span lang="EN-US">SYBASE</span><span>的数据库模型。</span><span lang="EN-US"></p>
<p></span><span>（</span><span lang="EN-US">7</span><span>）命令语法数据库</span><span lang="EN-US">sybsyntax<br />
</span><span>库中保存</span><span lang="EN-US">SYBASE</span><span>数据库的命令语法及支持的语言库。</span><span lang="EN-US"><br />
3</span><span>．数据库对象</span><span lang="EN-US"><br />
</span><span>（</span><span lang="EN-US">1</span><span>）表</span><span lang="EN-US">(Tables)<br />
</span><span>在一个关系数据库中，表是最重要的数据库对象</span><span lang="EN-US">,</span><span>对应于关系数据库理论中关系，与</span><span lang="EN-US">DBASE</span><span>或</span><span lang="EN-US">FOXPRO</span><span>中的</span><span lang="EN-US">DBF</span><span>文件是类似。一切数据都存放在表中。其它数据库对象都是为了用户很好地操作表中的数据。表都以一张二维表的形式存在。其中，每一列称之为一个字段，或一个域；而每一行称之为一个记录，也就是一项数据。</span><span lang="EN-US"><br />
</span><span>有一类表，它们的名字都是以</span><span lang="EN-US">sys</span><span>开头的，这些表称为系统表，系统表记录着有关</span><span lang="EN-US">SQLServer</span><span>的信息。在</span><span lang="EN-US">master</span><span>数据库中的表大部分为系统表，这些表是随着</span><span lang="EN-US">master</span><span>数据库的创建而建立的。另外，每个用户数据库在创建时都有一个系统表的子集。</span><span lang="EN-US"><br />
</span><span>例如，只有在</span><span lang="EN-US">master</span><span>数据库中才有的系统表有：</span><span lang="EN-US">sysconfigures</span><span>、</span><span lang="EN-US">sysdatabases</span><span>、</span><span lang="EN-US">sysdevices</span><span>、</span><span lang="EN-US">syslogins</span><span>等；在用户数据库和系统数据库中都有的系统表有：</span><span lang="EN-US">sysalternates</span><span>、</span><span lang="EN-US">syscolumns</span><span>、</span><span lang="EN-US">sysindexs</span><span>、</span><span lang="EN-US">syslogs</span><span>、</span><span lang="EN-US">sysobjects</span><span>、</span><span lang="EN-US">sysusers</span><span>等。</span><span lang="EN-US"><br />
</span><span>例：查询</span><span lang="EN-US">master</span><span>数据库中表文件名</span><span lang="EN-US"><br />
1&gt;;usemaster<br />
2&gt;;go<br />
3&gt;;sp_help<br />
4&gt;;go<br />
NameOwnerObject_type<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
spt_committabdbousertable<br />
spt_datatype_infodbousertable<br />
spt_datatype_info_extdbousertable<br />
spt_monitordbousertable<br />
spt_server_infodbousertable<br />
spt_valuesdbousertable<br />
sysalternatesdbosystemtable<br />
syscharsetsdbosystemtable<br />
syscolumnsdbosystemtable<br />
syscommentsdbosystemtable<br />
sysconfiguresdbosystemtable<br />
sysconstraintsdbosystemtable<br />
syscurconfigsdbosystemtable<br />
sysdatabasesdbosystemtable<br />
sysdependsdbosystemtable<br />
sysdevicesdbosystemtable<br />
sysenginesdbosystemtable<br />
sysgamsdbosystemtable<br />
sysindexesdbosystemtable<br />
syskeysdbosystemtable<br />
syslanguagesdbosystemtable<br />
syslistenersdbosystemtable<br />
syslocksdbosystemtable<br />
sysloginrolesdbosystemtable<br />
sysloginsdbosystemtable<br />
syslogsdbosystemtable<br />
sysmessagesdbosystemtable<br />
sysmonitorsdbosystemtable<br />
sysobjectsdbosystemtable<br />
sysproceduresdbosystemtable<br />
sysprocessesdbosystemtable<br />
sysprotectsdbosystemtable<br />
sysreferencesdbosystemtable<br />
sysremoteloginsdbosystemtable<br />
sysrolesdbosystemtable<br />
syssegmentsdbosystemtable<br />
sysserversdbosystemtable<br />
syssrvrolesdbosystemtable<br />
systestlogdbosystemtable<br />
systhresholdsdbosystemtable<br />
systypesdbosystemtable<br />
sysusagesdbosystemtable<br />
sysusermessagesdbosystemtable<br />
sysusersdbosystemtable<br />
sp_configuredbostoredprocedure<br />
sp_dboptiondbostoredprocedure<br />
sp_getmessagedbostoredprocedure<br />
sp_procxmodedbostoredprocedure<br />
sp_prtsybsysmsgsdbostoredprocedure<br />
sp_validlangdbostoredprocedure</p>
<p></span><span>说明见附录表</span><span lang="EN-US">1</span><span lang="EN-US"></span></p>
<p class="MsoNormal" align="left"><strong><span lang="EN-US">sybase</span></strong><strong><span>数据库知识</span></strong><span lang="EN-US"></span></p>
<p class="MsoNormal" align="left"><span>（</span><span lang="EN-US">2</span><span>）视图</span><span lang="EN-US">(Views)<br />
</span><span>视图是查看一张或几张表中的数据的一种方式。通过将一张或几张表中的一部分数据进行组合得到视图。视图看上去与表非常相象，但与表还是有着本质的区别。通过视图看到的数据实际上都是存放在表中的，在数据库中仅存在视图的定义。</span><span lang="EN-US"><br />
</span><span>使用视图的好处是：</span><span lang="EN-US"><br />
●</span><span>操作方便</span><span lang="EN-US"><br />
●</span><span>安全性</span><span lang="EN-US"></p>
<p></span><span>（</span><span lang="EN-US">3</span><span>）索引</span><span lang="EN-US">(Index)<br />
</span><span>索引是对字段生成的，用于加快数据的检索。在</span><span lang="EN-US">Sybase</span><span>数据库中，索引是由系统自动管理的，也就是说，</span><span lang="EN-US">Sybase</span><span>的索引操作对用户是透明的。表的索引一旦建立，系统会自动对其进行更新维护以使它与相应表对应一致；操作时，用户无须指定索引，系统会自动确定是否使用索引进行操作。</span><span lang="EN-US"><br />
Sybase</span><span>支持三种不同类型的索引，一是复合索引，即包含几个列的索引；二是唯一性索引，即任意两行中的索引列不能有相同的取值；三是簇类索引（</span><span lang="EN-US">Clusteredindexes</span><span>）和非簇类索引</span><span lang="EN-US">(Nonclusteredindexs)</span><span>，簇类索引使</span><span lang="EN-US">SQL</span><span>服务器不断重排表行的物理顺序以使其与逻辑索引顺序相一致，非簇类索引则不需要表行的物理顺序与逻辑顺序一致。每个表最多只能建立一个簇类索引，非簇类索引则可建立多个。与非簇类索引相比，簇类索引的检索速度要快。应当在建立任何非簇类索引以前建立簇类索引。</span><span lang="EN-US"></p>
<p></span><span>（</span><span lang="EN-US">4</span><span>）存储过程</span><span lang="EN-US">(Storedprocedures)<br />
</span><span>存储过程是用</span><span lang="EN-US">T-SQL</span><span>语言编写成的</span><span lang="EN-US">SQL</span><span>子例程，它存储于</span><span lang="EN-US">SQL</span><span>服务器上供用户调用执行。与一般的</span><span lang="EN-US">SQL</span><span>语句和批处理语句不同的是，存储过程是经过预编译的。当首次运行一个存储过程时，</span><span lang="EN-US">SQLServer</span><span>的查询处理器将对其分析，并产生最终的执行方案。由于查询处理的大部分工作已经完成，所以以后执行存储过程时速度将会很快。执行存储过程时可带参数并可调用其他存储过程，执行完毕后返回信息以指示是否成功完成相应操作。存储过程有两种：一种是</span><span lang="EN-US">SQL</span><span>服务器安装时自动建立的系统存储过程（系统过程），另一种是用户自己创建的存储过程。</span><span lang="EN-US"><br />
</span><span>系统过程是用于系统管理，并且为用户提供了从事数据库管理的一种途径。这些系统过程都是以</span><span lang="EN-US">sp_</span><span>开头的，它们都放在</span><span lang="EN-US">master</span><span>数据库中且隶属于</span><span lang="EN-US">sa(</span><span>系统管理员</span><span lang="EN-US">)</span><span>。也有很多可以在任一个数据库中运行的系统过程。</span><span lang="EN-US"><br />
</span><span>常见的系统过程有：</span><span lang="EN-US"><br />
sp_addgroup</span><span>在当前数据库中建立一个数据库用户组</span><span lang="EN-US"><br />
sp_addlogin</span><span>建立一个</span><span lang="EN-US">SQL</span><span>服务器用户</span><span lang="EN-US"><br />
sp_adduser</span><span>在当前数据库中增加一个用户</span><span lang="EN-US"><br />
sp_changegroup</span><span>改变数据库用户组</span><span lang="EN-US"><br />
sp_dboption</span><span>查询或改变数据库系统设置</span><span lang="EN-US"><br />
sp_dropdevice</span><span>删除设备</span><span lang="EN-US"><br />
sp_dropgroup</span><span>删除组</span><span lang="EN-US"><br />
sp_droplogin</span><span>删除帐号</span><span lang="EN-US"><br />
sp_help</span><span>查询数据库对象及所有数据库信息</span><span lang="EN-US"><br />
sp_helpdb</span><span>查询数据库信息</span><span lang="EN-US"><br />
sp_helpdevice</span><span>查询设备信息</span><span lang="EN-US"><br />
sp_helpgroup</span><span>查询组信息</span><span lang="EN-US"><br />
sp_helpindex</span><span>查询给定表信息</span><span lang="EN-US">sp_helpindexcode_3th<br />
sp_helpuser</span><span>查询用户信息</span><span lang="EN-US"><br />
sp_lock</span><span>查询当前加锁信息</span><span lang="EN-US"><br />
sp_monitor</span><span>查询</span><span lang="EN-US">SQL</span><span>服务器统计信息</span><span lang="EN-US"><br />
sp_password</span><span>改变登录帐号口令</span><span lang="EN-US"><br />
sp_spaceused</span><span>查询表中的行数、数据页数及空间大小</span><span lang="EN-US"><br />
sp_who</span><span>查询当前用户及过程信息</span><span lang="EN-US"><br />
sp_syntax</span><span>查询操作语法</span><span lang="EN-US"><br />
sp_configure</span><span>配置系统参数</span><span lang="EN-US"></p>
<p></span><span>例：查询数据库信息</span><span lang="EN-US"><br />
1&gt;;sp_helpdb<br />
2&gt;;go<br />
namedb_sizeownerdbidcreatedstatus<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
master3.0MBsa1Jan01,1900nooptionsset<br />
model2.0MBsa3Jan01,1900nooptionsset<br />
sybsystemprocs10.0MBsa4Oct24,1997trunclogonchkpttele114370.0MBsa5Oct24,1997selectinto/bulkcopy,trunclogonchkpttempdb22.0MBsa2May05,1998selectinto/bulkcopy(0rowsaffected,returnstatus=0)</p>
<p></span><span>例：查询</span><span lang="EN-US">SQL</span><span>服务器统计信息</span><span lang="EN-US"><br />
1&gt;;sp_monitor<br />
2&gt;;go<br />
last_runcurrent_runseconds<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
May519984:09PMMay519984:13PM224</p>
<p>(0rowsaffected)<br />
cpu_busyio_busyidle<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
17(1)-0%5(0)-0%923(223)-99%</p>
<p>(0rowsaffected)<br />
packets_receivedpackets_sentpacket_errors<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
21(9)51(23)0(0)</p>
<p>(0rowsaffected)<br />
total_readtotal_writetotal_errorsconnections<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
947(1)595(113)0(0)3(1)</p>
<p>(0rowsaffected,returnstatus=0)</p>
<p></span><span>（</span><span lang="EN-US">5</span><span>）触发器</span><span lang="EN-US">(Triggers)<br />
</span><span>触发器是一种特殊的存储过程，用来维护不同表中的相关数据的一致性。当在一张表中插入、删除和修改数据时，触发器就会触发另一个存储过程，从而保持数据的一致性。</span><span lang="EN-US"></p>
<p></span><span>（</span><span lang="EN-US">6</span><span>）缺省与规则</span><span lang="EN-US">(Defaultsandrules)<br />
</span><span>缺省是在数据录入时，若用户没有输入数据，</span><span lang="EN-US">SQLServer</span><span>自动输入的值。</span><span lang="EN-US"><br />
</span><span>规则是指对特定的列的输入限制</span><span lang="EN-US">,</span><span>即是否允许用户向给定列输入已定义的数据类型。</span><span lang="EN-US"><br />
4</span><span>．</span><span lang="EN-US">SQLServer</span><span>的用户及权限</span><span lang="EN-US"><br />
SQL=StructuredQueryLanguage</span><span>结构查询语言，是新一代数据库查询语言。</span><span lang="EN-US"><br />
Sybase</span><span>中的用户分为两种：</span><span lang="EN-US">SQL</span><span>服务器用户（登录帐号）和数据库用户。</span><span lang="EN-US"><br />
</span><span>安装完</span><span lang="EN-US">SQL</span><span>服务器后，系统自动建立一个</span><span lang="EN-US">SQL</span><span>服务器用户</span><span lang="EN-US">sa</span><span>，口令为空，即系统管理员，他对整个系统有操作权，其他用户均由系统管理员建立。</span><span lang="EN-US"><br />
</span><span>在</span><span lang="EN-US">SQLServer</span><span>中有三种特殊的用户：系统管理员、用户数据库所有者（建立相应数据库的数据库用户）</span><span lang="EN-US">DBO</span><span>、一般用户。系统管理员对整个系统有操作权；用户数据库所有者对他所建立的数据库具有全部操作权利；一般用户对给定的数据库只有被授权的操作权限。</span><span lang="EN-US"><br />
</span><span>数据库用户一般可分为用户组，任一数据库在建立后即被赋予一个用户组</span><span lang="EN-US">public</span><span>。</span><span lang="EN-US"></p>
<p></span><span>（</span><span lang="EN-US">1</span><span>）建立</span><span lang="EN-US">SQL</span><span>服务器用户名（登录帐号）</span><span lang="EN-US"><br />
</span><span>作为一个用户，为了使用</span><span lang="EN-US">SQLServer</span><span>，他必须在</span><span lang="EN-US">SQLServer</span><span>上有一个</span><span lang="EN-US">SQL</span><span>服务器用户名（登录帐号）。这个帐号是系统管理员通过</span><span lang="EN-US">sp_addlogin</span><span>来增加的。</span><span lang="EN-US"><br />
sp_addlogin</span><span>登录名，口令，库名，语言，全名</span><span lang="EN-US"><br />
</span><span>例：建立用户</span><span lang="EN-US">zhang,</span><span>口令为</span><span lang="EN-US">zhangling(</span><span>最低六位</span><span lang="EN-US">)</span><span>，全名为</span><span lang="EN-US">Zhangling<br />
1&gt;;sp_addloginzhang,zhangling,null,null,&#8221;Zhangling&#8221;<br />
2&gt;;go<br />
3&gt;;select*fromsyslogins<br />
4&gt;;go</p>
<p></span><span>（</span><span lang="EN-US">2</span><span>）增加数据库用户名</span><span lang="EN-US"><br />
</span><span>同样，为了使用</span><span lang="EN-US">SQLServer</span><span>上的数据库，他必须在数据库中有一个用户名，这个用户名是数据库所有者通过</span><span lang="EN-US">sp_adduser</span><span>来增加的。数据库用户名不必和用户帐户一样，而且在不同的数据库中用户名可以不同。多个用户可以有相同的</span><span lang="EN-US">SQLServer</span><span>帐户。同样，多个</span><span lang="EN-US">SQLServer</span><span>帐户可以有相同的数据库名。</span><span lang="EN-US"><br />
sp_adduser</span><span>登录名，别名，组名</span><span lang="EN-US"><br />
</span><span>登录名为用户的</span><span lang="EN-US">SQL</span><span>服务器登录名；别名为用户在数据库中的用户名；组名为用户所属的数据库用户组。</span><span lang="EN-US"></p>
<p></span><span>例：用户</span><span lang="EN-US">zhang</span><span>增加为</span><span lang="EN-US">tele114</span><span>的用户，别名为</span><span lang="EN-US">zhang1,</span><span>属于用户组</span><span lang="EN-US">china<br />
1&gt;;usetele114<br />
2&gt;;go<br />
3&gt;;sp_helpgroup<br />
4&gt;;go<br />
5&gt;;select*fromsysusers<br />
6&gt;;go<br />
1&gt;;sp_addgroupchina<br />
2&gt;;go<br />
1&gt;;sp_helpgroup<br />
2&gt;;go<br />
1&gt;;sp_adduserzhang,zhang1,china<br />
2&gt;;go<br />
1&gt;;sp_helpuser<br />
2&gt;;go</p>
<p>*</span><span>例：删除别名</span><span lang="EN-US">zhang1,</span><span>用户组</span><span lang="EN-US">china,</span><span>登录名</span><span lang="EN-US">zhang<br />
1&gt;;usetele114<br />
2&gt;;go<br />
3&gt;;sp_dropuserzhang1<br />
4&gt;;go<br />
5&gt;;sp_helpuser<br />
6&gt;;go<br />
1&gt;;sp_dropgroupchina<br />
2&gt;;go<br />
1&gt;;sp_helpgroup<br />
2&gt;;go<br />
3&gt;;usemaster<br />
4&gt;;go<br />
5&gt;;sp_droploginzhang<br />
6&gt;;go<br />
7&gt;;select*fromsyslogins<br />
8&gt;;go</p>
<p>5</span><span>．</span><span lang="EN-US">SQLServer</span><span>的启动与关闭</span><span lang="EN-US"><br />
(1)</span><span>启动</span><span lang="EN-US"><br />
</span><span>对于安装在</span><span lang="EN-US">UNIX</span><span>操作系统中的</span><span lang="EN-US">SybaseSQLServer</span><span>，都有一个登录名。在我们的实际系统中，这个登录名为</span><span lang="EN-US">sybase</span><span>，登录的口令为</span><span lang="EN-US">sybase10</span><span>。以</span><span lang="EN-US">sybase</span><span>登录到服务器后，进入</span><span lang="EN-US">install</span><span>子目录。用实用工具</span><span lang="EN-US">showserver</span><span>查看已经运行了的</span><span lang="EN-US">SQLServer</span><span>。如果还没有</span><span lang="EN-US">SQLServer</span><span>在运行，则可以用以下命令启动</span><span lang="EN-US">SQLServer</span><span>：</span><span lang="EN-US"></p>
<p>$startserver-fRUN_SYBASE</span><span>（</span><span lang="EN-US">RUN_</span><span>主服务器名）</span><span lang="EN-US"><br />
$startserver-fRUN_SYB_BACKUP</span><span>（</span><span lang="EN-US">RUN_</span><span>备服务器名）</span><span lang="EN-US"><br />
$showserver</p>
<p>(2)</span><span>关闭</span><span lang="EN-US"><br />
</span><span>关闭</span><span lang="EN-US">SQLServer</span><span>可以在</span><span lang="EN-US">isql</span><span>中使用</span><span lang="EN-US">T-SQL</span><span>命令：</span><span lang="EN-US"></p>
<p></span><span>关闭</span><span lang="EN-US">SQL</span><span>备服务器</span><span lang="EN-US"><br />
1&gt;;shutdownSYB_BACKUP<br />
2&gt;;go</p>
<p></span><span>关闭</span><span lang="EN-US">SQL</span><span>主服务器</span><span lang="EN-US"><br />
1&gt;;shutdown[withnowait]<br />
2&gt;;go</p>
<p></span><span>关闭</span><span lang="EN-US">UNIX</span><span>服务器</span><span lang="EN-US"><br />
$shutdown</span><span>杫</span><span lang="EN-US">–g0</p>
<p></span><span>（</span><span lang="EN-US">3</span><span>）启动过程</span><span lang="EN-US"><br />
master</span><span>数据库启动</span><span lang="EN-US">&#8212;&#8212;&#8212;&#8211;</span><span>鄐</span><span lang="EN-US">ybsystemproces</span><span>数据库启动</span><span lang="EN-US">&#8212;&#8212;&#8212;&#8211;</span><span>嗲蹇誸</span><span lang="EN-US">empdb&#8212;&#8212;&#8212;</span><span>嗥舳</span><span lang="EN-US"></span><span>渌</span><span lang="EN-US"></span><span>菘</span><span lang="EN-US">&#8212;&#8212;-</span><span>嗍挛竦幕毓</span><span lang="EN-US"></p>
<p></span><span>（</span><span lang="EN-US">4</span><span>）</span><span lang="EN-US">Sybase</span><span>数据库目录说明</span><span lang="EN-US"><br />
/usr/sybase=..</span><span>主目录</span><span lang="EN-US"><br />
../install</span><span>安装程序</span><span lang="EN-US"><br />
../bin</span><span>执行程序</span><span lang="EN-US"><br />
../include</span><span>库函数文件</span><span lang="EN-US"><br />
../lib</span><span>宿主语言库</span><span lang="EN-US"><br />
../doc</span><span>联机文件</span><span lang="EN-US"><br />
../scriptsSQL</span><span>动态描述文件</span><span lang="EN-US"><br />
../help</span><span>帮助信息</span><span lang="EN-US"><br />
../locales</span><span>语言限制文件</span><span lang="EN-US"><br />
../termdef</span><span>终端定义文件</span><span lang="EN-US"><br />
../charsets</span><span>字符集文件</span><span lang="EN-US"><br />
</span><span>五、</span><span lang="EN-US">T-SQL</span><span>语言</span><span lang="EN-US"><br />
1</span><span>．标准的</span><span lang="EN-US">SQL</span><span>语言</span><span lang="EN-US"><br />
</span><span>标准的</span><span lang="EN-US">SQL</span><span>语言包括数据定义语句（</span><span lang="EN-US">DLL</span><span>），数据操作语句（</span><span lang="EN-US">DML</span><span>）和数据控制语句（</span><span lang="EN-US">DCL</span><span>）。熟悉附录中五个表结构（</span><span lang="EN-US">enrolls,teachers,courses,sections,students</span><span>）</span><span lang="EN-US"></p>
<p></span><span>（</span><span lang="EN-US">1</span><span>）数据定义语句（</span><span lang="EN-US">DLL</span><span>）</span><span lang="EN-US"><br />
</span><span>用来建立、更改和删除数据库对象</span><span lang="EN-US"></p>
<p>a</span><span>．建立对象</span><span lang="EN-US">create<br />
</span><span>这里只介绍表和索引的创建与删除</span><span lang="EN-US"><br />
(a)</span><span>．创建表：</span><span lang="EN-US"></p>
<p>createtabletable_name(column_1datatype,&#8230;,column_ndatatype)<br />
</span><span>例：建表</span><span lang="EN-US">teachers<br />
1&gt;;createtableteachers(teacher#SMALLINTNOTNULLUNIQUE,<br />
2&gt;;teacher_nameCHAR(1<!--[if gte vml 1]><v:shapetype id="_x0000_t75"  coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe"  filled="f" stroked="f"> <v:stroke joinstyle="miter" /> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0" /> <v:f eqn="sum @0 1 0" /> <v:f eqn="sum 0 0 @1" /> <v:f eqn="prod @2 1 2" /> <v:f eqn="prod @3 21600 pixelWidth" /> <v:f eqn="prod @3 21600 pixelHeight" /> <v:f eqn="sum @0 0 1" /> <v:f eqn="prod @6 1 2" /> <v:f eqn="prod @7 21600 pixelWidth" /> <v:f eqn="sum @8 21600 0" /> <v:f eqn="prod @7 21600 pixelHeight" /> <v:f eqn="sum @10 21600 0" /> </v:formulas> <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" /> <o:lock v:ext="edit" aspectratio="t" /> </v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" alt="" style='width:11.25pt;  height:11.25pt'> <v:imagedata src="file:///C:\DOCUME~1\gzzymh\LOCALS~1\Temp\msohtml1\01\clip_image001.gif"   o:href="http://bbs.chinaunix.net/images/smilies/icon_cool.gif" /> </v:shape><![endif]--><img src="file:///C:/DOCUME~1/gzzymh/LOCALS~1/Temp/msohtml1/01/clip_image001.gif" alt="" width="15" height="15" />,<br />
3&gt;;phoneCHAR(10),<br />
4&gt;;salaryFLOAT)<br />
5&gt;;go</p>
<p>(b).</span><span>创建索引：</span><span lang="EN-US"></p>
<p>createindexindex_nameontable_name(column_1,&#8230;,column_n)<br />
</span><span>例：建表</span><span lang="EN-US">teachers</span><span>中</span><span lang="EN-US">teacher_name</span><span>字段的索引文件</span><span lang="EN-US">names<br />
1&gt;;createindexnamesonteahers(teacher_name)<br />
2&gt;;go</p>
<p>b.</span><span>删除对象</span><span lang="EN-US">drop</p>
<p>(a)</span><span>．删除表：</span><span lang="EN-US"></p>
<p>droptabletable_name<br />
</span><span>例：删除表</span><span lang="EN-US">teachers<br />
1&gt;;droptableteachers<br />
2&gt;;go</p>
<p>(b)</span><span>删除索引：</span><span lang="EN-US"></p>
<p>dropindextable_name.index_name<br />
</span><span>例：删除表</span><span lang="EN-US">teachers</span><span>的索引文件</span><span lang="EN-US">names<br />
1&gt;;dropindexteachers.names<br />
2&gt;;go</p>
<p>(2)</span><span>数据操作语句</span><span lang="EN-US">(DML)<br />
</span><span>包括对数据查询、插入、修改和删除</span><span lang="EN-US"></p>
<p>a.</span><span>查询</span><span lang="EN-US">select<br />
2<br />
selectcolumn_1,&#8230;,column_nfromtable_namewhereconditions</p>
<p></span><span>例：列出所有课程名、系名及其学分</span><span lang="EN-US"><br />
1&gt;;selectcourse_name,<br />
2&gt;;department,<br />
1&gt;;num_creditsfromcourses<br />
2&gt;;go</p>
<p></span><span>例：列出所有学分为</span><span lang="EN-US">3</span><span>的课程名、系名及学分</span><span lang="EN-US"><br />
1&gt;;selectcourse_name,department,num_creditsfromcourses<br />
2&gt;;wherenum_credits=3<br />
3&gt;;go</p>
<p></span><span>例：找出所有男性学生</span><span lang="EN-US"><br />
1&gt;;selectstudent_namefromstudentswheresex=&#8217;M&#8217;<br />
2&gt;;go</p>
<p></span><span>例：哪些算术课程具有</span><span lang="EN-US">3</span><span>分以上的学分</span><span lang="EN-US"><br />
1&gt;;selectcourse_name,department,num_creditsfromcourses<br />
2&gt;;wheredepartment=&#8217;Math&#8217;andnum_credits&gt;;=3<br />
3&gt;;go</p>
<p></span><span>例：列出所有不来自</span><span lang="EN-US">IL</span><span>州的学生的姓名和州名</span><span lang="EN-US"><br />
1&gt;;selectstudent_name,statefromstudentswherenot(state=&#8217;IL&#8217;)<br />
2&gt;;go</p>
<p></span><span>例：列出一年工资为</span><span lang="EN-US">30000</span><span>到</span><span lang="EN-US">35000</span><span>的教师姓名和工资</span><span lang="EN-US"><br />
1&gt;;selectteacher_name,salaryfromteacherswheresalarybetween30000and35000<br />
2&gt;;go</p>
<p></span><span>例：列出名字以</span><span lang="EN-US">“Jo”</span><span>开头的每个学生的姓名和性别</span><span lang="EN-US"><br />
1&gt;;selectstudent_name,sexfromstudentswherestudent_namelike&#8217;Jo%&#8217;<br />
2&gt;;go</p>
<p></span><span>例：查出教师的最大工资</span><span lang="EN-US"><br />
1&gt;;selectmax(salary)fromteachers<br />
2&gt;;go</p>
<p></span><span>例：查出多少教师的工资大于</span><span lang="EN-US">30000<br />
1&gt;;selectcount(*)fromteacherswheresalary&gt;;30000<br />
2&gt;;go</p>
<p></span><span>例：列出每个学生的课程数</span><span lang="EN-US"><br />
1&gt;;selectstudent#,num_enrolled=count(*)fromenrollsgroupbystudent#<br />
2&gt;;go</p>
<p></span><span>从几个表中检索数据（联接）</span><span lang="EN-US"><br />
</span><span>任何从多于一个表中检索数据的查询必须执行联接。</span><span lang="EN-US"><br />
</span><span>例：每个教师所教的课程是什么？（按姓名列出教师）</span><span lang="EN-US"><br />
1&gt;;selectteacher_name,sections.teacher#,course#<br />
2&gt;;fromteachers,sections<br />
3&gt;;whereteachers.teacher#=sections.teacher#<br />
4&gt;;go</p>
<p></span><span>子查询：来自一个查询结果可以成为另一个查询的输入。一般为两个或以上表</span><span lang="EN-US"><br />
</span><span>例：在任何课程中哪个学生成绩为</span><span lang="EN-US">3<br />
1&gt;;selectstudent_namefromstudents<br />
2&gt;;wherestudent#in(selectstudent#fromenrollswheregrade=3)<br />
3&gt;;go</p>
<p></span><span>例：哪个教师工资低于平均值</span><span lang="EN-US"><br />
1&gt;;selectteacher_namefromteachers<br />
2&gt;;wheresalary&lt;(selectavg(salary)fromteachers)<br />
3&gt;;go</p>
<p></span><span>例：将表</span><span lang="EN-US">students</span><span>复制为表</span><span lang="EN-US">hhh<br />
1&gt;;select*intohhhfromstudents<br />
2&gt;;go</p>
<p>b.</span><span>插入</span><span lang="EN-US">insert</p>
<p>insertintotable_name(column_1,&#8230;,column_n)<br />
values(value_1,&#8230;,value_n)</p>
<p></span><span>例：向表</span><span lang="EN-US">teachers</span><span>中增加教师号为</span><span lang="EN-US">555</span><span>，姓名为</span><span lang="EN-US">kkk,</span><span>电话号码为</span><span lang="EN-US">6646988</span><span>，工资为</span><span lang="EN-US">300<br />
1&gt;;insertintoteachers<br />
2&gt;;values(555,&#8217;kkk&#8217;,&#8217;6646988&#8242;,300)<br />
1&gt;;go</p>
<p>c.</span><span>修改</span><span lang="EN-US">update</p>
<p>updatetable_name<br />
setcolumn_1=value_1,&#8230;column_n=value_n<br />
whereconditions</p>
<p></span><span>例：增加</span><span lang="EN-US">kkk</span><span>的工资到</span><span lang="EN-US">1000<br />
1&gt;;updateteacherssetsalary=1000<br />
2&gt;;whereteacher_name=&#8217;kkk&#8217;<br />
3&gt;;go</p>
<p>d.</span><span>删除</span><span lang="EN-US">delete</span><span lang="EN-US"></span></p>
<p class="MsoNormal"><span lang="EN-US"><br />
</span><strong><span lang="EN-US">sybase</span></strong><strong><span>数据库知识</span></strong><span lang="EN-US"></span></p>
<p class="MsoNormal" align="left"><span lang="EN-US">deletefromtable_name<br />
whereconditions</p>
<p></span><span>例：删除表</span><span lang="EN-US">teachers</span><span>中姓名为</span><span lang="EN-US">kkk</span><span>的记录</span><span lang="EN-US"><br />
1&gt;;deletefromteachers<br />
2&gt;;whereteacher_name=&#8217;kkk&#8217;<br />
3&gt;;go</p>
<p>e.</span><span>清空记录</span><span lang="EN-US">truncate<br />
truncatetabletable-name<br />
</span><span>例：清空表</span><span lang="EN-US">hhh</span><span>中的全部记录</span><span lang="EN-US"><br />
1&gt;;truncatetablehhh<br />
2&gt;;go</p>
<p>e.</span><span>增加数据表列</span><span lang="EN-US">altertable</p>
<p>altertabletable_nameaddcolumn_1datatype,&#8230;,column_ndatatype</p>
<p></span><span>例：在表</span><span lang="EN-US">courses</span><span>中增加数据表列备注一项</span><span lang="EN-US"><br />
1&gt;;altertablecoursesaddpzchar(<!--[if gte vml 1]><v:shape id="_x0000_i1026"  type="#_x0000_t75" alt="" style='width:11.25pt;height:11.25pt'> <v:imagedata src="file:///C:\DOCUME~1\gzzymh\LOCALS~1\Temp\msohtml1\01\clip_image001.gif"   o:href="http://bbs.chinaunix.net/images/smilies/icon_cool.gif" /> </v:shape><![endif]--><img src="file:///C:/DOCUME~1/gzzymh/LOCALS~1/Temp/msohtml1/01/clip_image001.gif" alt="" width="15" height="15" />null<br />
2&gt;;go</p>
<p>(3)</span><span>数据控制语言</span><span lang="EN-US">(DCL)<br />
a.</span><span>系统管理员可以授予其他用户</span><span lang="EN-US">CREATEDATABASE</span><span>的权限，使其他用户可以成为数据库所有者。</span><span lang="EN-US"><br />
b.</span><span>数据库所有者在他所拥有的数据库中，可以授予其他用户的权限有：</span><span lang="EN-US"><br />
lCREATETABLE&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span><span>建表</span><span lang="EN-US"><br />
lCREATEDEFAULT&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</span><span>建缺省</span><span lang="EN-US"><br />
lCREATERULE&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span><span>建规则</span><span lang="EN-US"><br />
lCREATEPROCedure&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</span><span>建存储过程</span><span lang="EN-US"><br />
lCREATEVIEW&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span><span>建视图</span><span lang="EN-US"><br />
lDUMPDATABASE&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span><span>备份数据库</span><span lang="EN-US"><br />
lDUMPTRANsaction&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</span><span>备份日志</span><span lang="EN-US"><br />
c.</span><span>数据库对象所有者可以授予其他用户的操作权限有：</span><span lang="EN-US"><br />
lSELECT<br />
lUPDATE<br />
lINSERT<br />
lEXECute<br />
lDELETE<br />
lREFERENCE</p>
<p>l</span><span>授权</span><span lang="EN-US">grant<br />
grantprivilegeonobject_nametousername</p>
<p></span><span>例：</span><span lang="EN-US"><br />
1&gt;;grantselectonteachers<br />
2&gt;;tobob,john<br />
3&gt;;go<br />
</span><span>数据库所有者授予用户</span><span lang="EN-US">bob,john</span><span>在</span><span lang="EN-US">teachers</span><span>数据库上读取的权限。</span><span lang="EN-US"></p>
<p>l</span><span>收回授权</span><span lang="EN-US">revoke<br />
revokeprivilegeonobject_namefromusername</p>
<p></span><span>例：</span><span lang="EN-US"><br />
1&gt;;revokeall<br />
2&gt;;onstudents<br />
3&gt;;frompublic<br />
4&gt;;go<br />
</span><span>收回用户组</span><span lang="EN-US">public</span><span>在</span><span lang="EN-US">students</span><span>表所有权限。</span><span lang="EN-US"></p>
<p></span><span>例：授予</span><span lang="EN-US">zhang1</span><span>在数据库</span><span lang="EN-US">tele114</span><span>上建表，建视图，建存储过程</span><span lang="EN-US">;</span><span>对表</span><span lang="EN-US">students</span><span>有</span><span lang="EN-US">select</span><span>权；对</span><span lang="EN-US">name,native</span><span>字段有</span><span lang="EN-US">update</span><span>权。</span><span lang="EN-US"><br />
1&gt;;usetele114<br />
2&gt;;go<br />
3&gt;;grantcreattable,createprocedure,createviewtozhang1<br />
4&gt;;go<br />
5&gt;;grantselectonstudentstozhang1withgrantoption<br />
6&gt;;go<br />
7&gt;;grantupdateonstudents(name,native)tozhang1<br />
8&gt;;go<br />
9&gt;;sp_helprotect<br />
10&gt;;go<br />
2</span><span>．函数</span><span lang="EN-US"><br />
(1)</span><span>系统函数</span><span lang="EN-US"><br />
db_id([</span><span>数据库名</span><span lang="EN-US">])<br />
db_name([</span><span>数据库</span><span lang="EN-US">ID])<br />
host_id()<br />
host_name()<br />
show_role()<br />
user_name([</span><span>数据库用户</span><span lang="EN-US">ID])<br />
user_id([</span><span>数据库用户名</span><span lang="EN-US">])<br />
col_length(</span><span>对象名，列名</span><span lang="EN-US">)</p>
<p>(1)</span><span>集合函数</span><span lang="EN-US"><br />
sum(all)<br />
avg(all)<br />
count(*)<br />
max(</span><span>表达式</span><span lang="EN-US">)<br />
min(</span><span>表达式</span><span lang="EN-US">)</p>
<p>(1)</span><span>字符串函数</span><span lang="EN-US"><br />
substring(&#8220;abcde&#8221;,2,2)bc<br />
right(&#8220;abcd&#8221;,3)cde<br />
upper(&#8220;abcde&#8221;<!--[if gte vml 1]><v:shape id="_x0000_i1027" type="#_x0000_t75"  alt="" style='width:11.25pt;height:11.25pt'> <v:imagedata src="file:///C:\DOCUME~1\gzzymh\LOCALS~1\Temp\msohtml1\01\clip_image002.gif"   o:href="http://bbs.chinaunix.net/images/smilies/icon_wink.gif" /> </v:shape><![endif]--><img src="file:///C:/DOCUME~1/gzzymh/LOCALS~1/Temp/msohtml1/01/clip_image002.gif" alt="" width="15" height="15" />ABCDE<br />
lower(&#8220;aBcDe&#8221;<!--[if gte vml 1]><v:shape id="_x0000_i1028" type="#_x0000_t75"  alt="" style='width:11.25pt;height:11.25pt'> <v:imagedata src="file:///C:\DOCUME~1\gzzymh\LOCALS~1\Temp\msohtml1\01\clip_image002.gif"   o:href="http://bbs.chinaunix.net/images/smilies/icon_wink.gif" /> </v:shape><![endif]--><img src="file:///C:/DOCUME~1/gzzymh/LOCALS~1/Temp/msohtml1/01/clip_image002.gif" alt="" width="15" height="15" />abcde</p>
<p>(1)</span><span>数学函数</span><span lang="EN-US"><br />
abs<br />
cos<br />
sin<br />
exp<br />
sqrt</p>
<p></span><span>六、数据库备份与恢复</span><span lang="EN-US"><br />
SQLServer</span><span>提供了两种不同类型的恢复：一类是系统自动完成的恢复；另一类是人工完成的恢复。</span><span lang="EN-US"></p>
<p>1</span><span>．系统软件故障恢复</span><span lang="EN-US"><br />
</span><span>系统自动恢复是在系统软件出现故障的情况下通过重新启动</span><span lang="EN-US">SQLServer</span><span>进行恢复。</span><span lang="EN-US"><br />
</span><span>自动恢复从</span><span lang="EN-US">master</span><span>数据库开始，然后是</span><span lang="EN-US">model</span><span>数据库，再是</span><span lang="EN-US">temporary</span><span>数据库，最后是用户数据库。在每个数据库上，恢复机制观察事务日志。如果日志写入比数据库更近的数据，则向前恢复数据库。如果事务尚未完成，则要回退它们。</span><span lang="EN-US"><br />
</span><span>所谓事务日志就是一张系统表</span><span lang="EN-US">syslogs</span><span>。在这张表中记录着对数据库的更新请求，例如插入、修改和删除。查询操作不记入事务日志中。</span><span lang="EN-US"><br />
2</span><span>．介质故障的恢复</span><span lang="EN-US"><br />
</span><span>一旦介质发生故障，只有通过以前备份的数据库和事务日志才能恢复数据库，为此我们需要经常备份数据库和事务日志。备份数据库和事务日志我们使用</span><span lang="EN-US">dump</span><span>命令，而恢复数据库和事务日志我们使用</span><span lang="EN-US">load</span><span>命令。</span><span lang="EN-US"><br />
</span><span>与创建数据库需要一个数据库设备类似，我们备份数据库和事务日志也需要一个卸出设备。增加卸出设备可以通过系统过程</span><span lang="EN-US">sp_addumpdevice</span><span>来实现。卸出设备可以是磁盘、磁带或操作系统文件。</span><span lang="EN-US"><br />
sp_addumpdevice&#8221;type&#8221;,device_name,physicalname<br />
</span><span>例：创建名为</span><span lang="EN-US">db114</span><span>的</span><span lang="EN-US">dump</span><span>设备</span><span lang="EN-US"><br />
sp_addumpdevice&#8221;disk&#8221;,&#8221;db114&#8243;,&#8221;/usr/sybase/zyl114.bak&#8221;</p>
<p></span><span>（</span><span lang="EN-US">1</span><span>）备份数据库和事务日志</span><span lang="EN-US"><br />
</span><span>备份数据库</span><span lang="EN-US">(</span><span>数据和事务日志</span><span lang="EN-US">)</span><span>的语法为：</span><span lang="EN-US"></p>
<p>dumpdatabasedatabase_nametodump_device</p>
<p></span><span>例如：全备份数据库</span><span lang="EN-US">tele114</span><span>到设备</span><span lang="EN-US">db114<br />
1&gt;;dumpdatabasetele114todb114<br />
2&gt;;go</p>
<p></span><span>备份事务日志（增量备份）的语法为：</span><span lang="EN-US"></p>
<p>dumptransactiondatabase_nametodump_device<br />
[withtruncate_only|withno_log|withno_truncate]<br />
</span><span>前两项在日志中删除提交的事务，后一项不删除。</span><span lang="EN-US"><br />
</span><span>在备份数据库前的所有事务日志备份都是没有意义的。我们一般不经常备份数据库，但我们要经常备份事务日志。这是因为备份事务日志比备份数据库需要更少的时间和存储空间。</span><span lang="EN-US"><br />
</span><span>备份数据库和备份日志的关系如下所示：</span><span lang="EN-US"></p>
<p></span><span>时刻</span><span lang="EN-US">1</span><span>时刻</span><span lang="EN-US">2</span><span>时刻</span><span lang="EN-US">3</span><span>时刻</span><span lang="EN-US">4</p>
<p></span><span>（</span><span lang="EN-US">2</span><span>）恢复数据库</span><span lang="EN-US"><br />
</span><span>要恢复被破坏的数据库，可以按如下步骤进行：</span><span lang="EN-US"><br />
•</span><span>用带</span><span lang="EN-US">no_truncate</span><span>选项的</span><span lang="EN-US">dump</span><span>命令卸出用户数据库事务日志。</span><span lang="EN-US"><br />
•</span><span>用和被破坏的数据库的同样的结构建立一个新的数据库。</span><span lang="EN-US"><br />
•</span><span>用</span><span lang="EN-US">load</span><span>命令重新装入数据库和事务日志。</span><span lang="EN-US"></p>
<p></span><span>装入数据库的语法为：</span><span lang="EN-US"><br />
loaddatabasedatabase_name<br />
fromfile_name</p>
<p></span><span>装入事务日志的语法为：</span><span lang="EN-US"><br />
loadtransactiondatabase_name<br />
fromfile_name</p>
<p></span><span>例：数据库备份</span><span lang="EN-US"><br />
1&gt;;dumpdb_nametofile_name<br />
2&gt;;go<br />
</span><span>数据库恢复</span><span lang="EN-US"><br />
1&gt;;loaddb_namefromfile_name<br />
2&gt;;go<br />
</span><span>日志备份</span><span lang="EN-US"><br />
1&gt;;dumptransactiondb_nametofile_namewithno_truncate<br />
2&gt;;go<br />
</span><span>日志恢复</span><span lang="EN-US"><br />
1&gt;;loadtransactiondb_namefromfile_name<br />
2&gt;;go<br />
</span><span>日志删除</span><span lang="EN-US"><br />
1&gt;;dumptransactiondb_namewithtruncate_only<br />
2&gt;;go</p>
<p>(3)</span><span>监控事务日志空间大小方法</span><span lang="EN-US"><br />
1&gt;;sp_spaceusedsyslogs<br />
2&gt;;go</p>
<p>1&gt;;dbccchecktable(syslogs)<br />
2&gt;;go</p>
<p>1&gt;;sp_helpdbtele114<br />
2&gt;;go</p>
<p>1&gt;;selectdata_pgs(8,doampg)fromsysindexeswhereid=8<br />
2&gt;;go</p>
<p></span><span>七、几个实用程序</span><span lang="EN-US"><br />
1.bcp<br />
</span><span>以用户指定的形式将数据库表拷贝到操作系统文件中，或从操作系统文件中拷贝一个数据库表。提供了在数据库表和操作系统文件之间传递数据的一个方便、快速的方法。</span><span lang="EN-US"></p>
<p>bcp[[database-name.]owner.]table_name{in|out}datafile[</span><span>各种开关</span><span lang="EN-US">]</p>
<p></span><span>其中，</span><span lang="EN-US">table_name</span><span>是想要拷贝的数据库表名；</span><span lang="EN-US">{in/out}</span><span>为拷贝方向，</span><span lang="EN-US">in</span><span>表示从文件到数据库的拷贝，</span><span lang="EN-US">out</span><span>表示从数据库到文件的拷贝；</span><span lang="EN-US">datafile</span><span>是操作系统文件的全路径名。</span><span lang="EN-US"><br />
</span><span>常用的开关有：</span><span lang="EN-US"><br />
-fformatfile&#8212;-</span><span>存有上次使用</span><span lang="EN-US">bcp</span><span>处理同一表时得到的应答文件的全路径名，格式文件名的扩展名为</span><span lang="EN-US">.fmt</span><span>。使用格式文件，省去了再重复回答前面的问题。</span><span lang="EN-US"><br />
-Uusername&#8212;-</span><span>允许用户指定一个注册名。</span><span lang="EN-US"><br />
-Ppassword&#8212;-</span><span>允许用户指定当前的</span><span lang="EN-US">SQLServer</span><span>口令。如果未使用</span><span lang="EN-US">-P</span><span>选项，</span><span lang="EN-US">bcp</span><span>将提示输入一个口令。</span><span lang="EN-US"><br />
-SServer&#8212;-</span><span>允许用户指定与其相连的</span><span lang="EN-US">SQLServer</span><span>的名字。</span><span lang="EN-US"><br />
</span><span>例：在客户端备份</span><span lang="EN-US">tele114</span><span>数据库中</span><span lang="EN-US">code_1th</span><span>表</span><span lang="EN-US">,</span><span>按照</span><span lang="EN-US">code_1th.fmt</span><span>的格式</span><span lang="EN-US"><br />
c&gt;;bcptele114..code_1thoutcode_1th.txt-fcode_1th.fmt–Usa</span><span>朠</span><span lang="EN-US"><br />
2.isql<br />
</span><span>是基于字符的最基本的访问</span><span lang="EN-US">SQLServer</span><span>数据库服务器的实用程序，能够实现与服务器的连接，向服务器发送</span><span lang="EN-US">T-SQL</span><span>命令，并在屏幕上显示返回的结果信息。</span><span lang="EN-US"></p>
<p>isql[</span><span>各种开关</span><span lang="EN-US">]</p>
<p></span><span>常用的开关有：</span><span lang="EN-US"><br />
-Uusername&#8212;-</span><span>允许用户指定一个注册名。</span><span lang="EN-US"><br />
-Ppassword&#8212;-</span><span>允许用户指定当前的</span><span lang="EN-US">SQLServer</span><span>的口令。</span><span lang="EN-US"><br />
-SServer&#8212;-</span><span>允许用户指定与其连接的</span><span lang="EN-US">SQLServer</span><span>的名称。</span><span lang="EN-US"><br />
-i</span><span>输入文件</span><span lang="EN-US"><br />
-o</span><span>输出文件</span><span lang="EN-US"><br />
-W</span><span>列宽</span><span lang="EN-US"><br />
</span><span>终止一条命令：</span><span lang="EN-US">go<br />
</span><span>清除查询缓冲：</span><span lang="EN-US">reset<br />
</span><span>调用编辑器：</span><span lang="EN-US">vi</span><span>（</span><span lang="EN-US">UNIX</span><span>）</span><span lang="EN-US">,edit(DOS)<br />
</span><span>执行一条操作系统命令：！！命令</span><span lang="EN-US"><br />
</span><span>退出</span><span lang="EN-US">isql</span><span>：</span><span lang="EN-US">quit</span><span>或</span><span lang="EN-US">exit</p>
<p>3</span><span>．</span><span lang="EN-US">showserver<br />
</span><span>显示当前在本机上正在运行的</span><span lang="EN-US">SQLServer</span><span>。</span><span lang="EN-US"><br />
showserver<br />
4</span><span>．</span><span lang="EN-US">startserver<br />
</span><span>启动</span><span lang="EN-US">SQLServer</span><span>。</span><span lang="EN-US"></p>
<p>startserver[</span><span>各种开关</span><span lang="EN-US">]</p>
<p></span><span>常用的开关有：</span><span lang="EN-US"><br />
-frunserverfile&#8212;-</span><span>指定一个运行服务器文件名，每次重启</span><span lang="EN-US">SQLServer</span><span>时，以这个文件为参考。在我们的实际机器上，这个文件名为</span><span lang="EN-US">RUN_SYBASE</span><span>或</span><span lang="EN-US">RUN_SYB_BACKUP</span><span>。</span><span lang="EN-US"><br />
-m&#8212;-</span><span>以单用户的方式启动</span><span lang="EN-US">SQLServer</span><span>。这个方式用于恢复</span><span lang="EN-US">master</span><span>数据库。</span><span lang="EN-US"></p>
<p>5</span><span>．</span><span lang="EN-US">syman<br />
</span><span>显示联机的库例程，系统过程及实用程序手册。</span><span lang="EN-US"><br />
syman[keyword]</p>
<p>syman</span><span>实用程序的联机文本文件存放在</span><span lang="EN-US">$SYBASE</span><span>下的</span><span lang="EN-US">doc</span><span>子目录中。</span><span lang="EN-US"><br />
6</span><span>．</span><span lang="EN-US">sybinit<br />
</span><span>作用：</span><span lang="EN-US">a.</span><span>建立</span><span lang="EN-US">master</span><span>设备</span><span lang="EN-US"><br />
b.</span><span>创建各个系统表</span><span lang="EN-US"><br />
c.</span><span>创建</span><span lang="EN-US">sybsystemprocs</span><span>数据库配置参数</span><span lang="EN-US"></p>
<p>1)</span><span>以</span><span lang="EN-US">sybase</span><span>登录</span><span lang="EN-US"><br />
2)cd/usr/sybase/install<br />
3)sybinit<br />
4)</span><span>选</span><span lang="EN-US">3<br />
SYBINIT<br />
1.ReleaseDirectory:/sur/u/sybase<br />
2.2.Edit/ViewinterfacesFile<br />
3.Configureaserverproduct<br />
4.ConfigureanOpenCoient/ServerProduct<br />
5.ConfigureaFrontEndProduct<br />
5)</span><span>选</span><span lang="EN-US">3<br />
CONFIGURESERVERPRODUCTS<br />
1.ConfigureanewSQLServer<br />
2.ConfigureanexistingSQLServer<br />
3.UpgradeanexistingSQLServer<br />
6)ADDNEWSQLSERVER<br />
1.SQLServername:lyg114<br />
a.</span><span>选</span><span lang="EN-US">1</span><span>，输入服务器名如：</span><span lang="EN-US">lyg114<br />
b.</span><span>按</span><span lang="EN-US">Ctrl-a<br />
7)SQLSERVERONFIGURATION<br />
1.CONFIGURESERVER&#8217;SINTERFACESFILEENTRYIncomplete<br />
2.MASTERDEVICECONFIGURATIONIncomplete<br />
3.SYBSYSTEMPROCSDATABASECONFIGURATIONIncomplete<br />
4.SETERRORLOGLOCATIONIncomplete<br />
5.CONFIGUREDEFAULTBACKUPSERVERIncomplete<br />
6.CONFIGURELANGUAGESIncomplete<br />
7.CONFIGURECHARACTERSETSIncomplete<br />
8.CONFIGURESORTORDERIncomplete<br />
9.ACTIVATEVUDITINGIncomplete<br />
</span><span>分别选</span><span lang="EN-US">1</span><span>，</span><span lang="EN-US">2</span><span>，</span><span lang="EN-US">3</span><span>，－－－</span><span lang="EN-US">9</span><span>配置参数，使各项</span><span lang="EN-US">Incmplete&#8212;&#8211;&gt;;complete<br />
</span><span>参数配置如下：（例）</span><span lang="EN-US"><br />
a.SERVERINTERFACESFILEENTERYSCREEN<br />
Servername:lyg114<br />
1.RetryCount:10<br />
2.RetryDelay:10<br />
Listenerservicesavailable:<br />
ProtocolAddressPortNameAlias<br />
rcpscosysv4114<br />
</span><span>注意：</span><span lang="EN-US">Port=4114,</span><span>此参数为</span><span lang="EN-US">1024</span><span>－－</span><span lang="EN-US">65535</span><span>为间的</span><span lang="EN-US">4</span><span>个或</span><span lang="EN-US">5</span><span>个数字</span><span lang="EN-US"><br />
Address=scosysv,</span><span>此参数为</span><span lang="EN-US">UNIX</span><span>服务器主机名</span><span lang="EN-US"><br />
b.MASTERDRVICECONFIGURATION<br />
1.MasterDevice:/usr/sybase/master.dat<br />
2.size(Meg):20<br />
c.SYBSYSTEMPROCSDATABASECONFIGURATION<br />
1.sybsytemprocsdatabasesize(Meg):10<br />
2.sybsystemprocslogicaldevicename:sysprocsdev<br />
3.createnewdeviceforthesybsystemprocsdatabase:yes<br />
4.physicalnameofnewdevice:/usr/sybase/sybtemp.dat<br />
5.sizeofthenewdevice(Meg):10<br />
d.SETERRORLOGLOCATION<br />
1.SQLServererrorlog:/usr/sybase/install/errorlog<br />
e.SETTHESQLERVER&#8217;SBACKUPSERVER<br />
1.SQLServerbackupServermname:SYB-BACKUP<br />
</span><span>注意：此备份服务器名一定要与后面配置的备份服务器名一致</span><span lang="EN-US"><br />
f.SONFIGURELANGUAGES<br />
</span><span>选</span><span lang="EN-US">1.us-english<br />
g.CONFIGURECHARACTERSETS<br />
</span><span>选</span><span lang="EN-US">1.SACII,frousewithunsp</span><span>及</span><span lang="EN-US">4.ISO8859-1(latin-1)-w(4.</span><span>为缺省</span><span lang="EN-US">)<br />
h.CONFIGURESORTORDER<br />
</span><span>选</span><span lang="EN-US">1.Binaryordering,fortheISO8859/1orLatin-1Charact<br />
i.ACTIVATEAUDITING<br />
1.Installauiting:yes<br />
2.sybsecuritydatabasesize(Meg):5<br />
3.sybsecuytylogicaldevicename:sybsecurity<br />
4.dreatenewdeviceforthesybsecuritydatabase:yes<br />
5.sybsecurityphysicaldevicename:/usr/sybase/sybsecur.dat<br />
6.sizeofthenewdevice(Meg):5<br />
<!--[if gte vml 1]><v:shape id="_x0000_i1029" type="#_x0000_t75" alt=""  style='width:11.25pt;height:11.25pt'> <v:imagedata src="file:///C:\DOCUME~1\gzzymh\LOCALS~1\Temp\msohtml1\01\clip_image001.gif"   o:href="http://bbs.chinaunix.net/images/smilies/icon_cool.gif" /> </v:shape><![endif]--><img src="file:///C:/DOCUME~1/gzzymh/LOCALS~1/Temp/msohtml1/01/clip_image001.gif" alt="" width="15" height="15" /></span><span>参数配置完后，按</span><span lang="EN-US">Crtl-a<br />
ExecutetheSQLServerConfiguraionnow?y<br />
9)</span><span>看到下面的信息表示</span><span lang="EN-US">SQLServer</span><span>安装成功</span><span lang="EN-US"><br />
Configrrationcompletedsuccessfully.<br />
rpess&lt;return&gt;;tocontinue.(</span><span>回车</span><span lang="EN-US">)<br />
</span><span>按</span><span lang="EN-US">Ctrl-x</span><span>退出安装程序</span><span lang="EN-US"></span></p>
<p class="MsoNormal"><span lang="EN-US"></p>
<p></span><strong><span lang="EN-US">sybase</span></strong><strong><span>数据库知识</span></strong><span lang="EN-US"></span></p>
<p class="MsoNormal" align="left"><span>八、</span><span lang="EN-US">SQL</span><span>客户端软件</span><span lang="EN-US"><br />
1.DOS</span><span>状态下</span><span lang="EN-US">SQL</span><span>客户端软件</span><span lang="EN-US"><br />
</span><span>软件位于</span><span lang="EN-US">c:\sqlbin<br />
</span><span>运行步骤：</span><span lang="EN-US"><br />
£¨1£(C)</span><span>运行</span><span lang="EN-US">TCPIP</span><span>协议程序</span><span lang="EN-US">tcp.bat<br />
c:\nwclient\lsl/c:\nwclient\net.cfg<br />
c:\nwclient\ne2000<br />
c:\nwclient\tcpip<br />
(2)ping129.6.114.201(</span><span>服务器地址</span><span lang="EN-US">)<br />
</span><span>返回</span><span lang="EN-US">129.6.114.201isalive</span><span>正常</span><span lang="EN-US"><br />
</span><span>返回</span><span lang="EN-US">Noresponsefrom129.6.114.201</span><span>为异常</span><span lang="EN-US"><br />
</span><span>（</span><span lang="EN-US">3</span><span>）运行</span><span lang="EN-US">sybclenv.bat&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;Sybase</span><span>的</span><span lang="EN-US">DOS</span><span>接口启动程序，内容如下：</span><span lang="EN-US"><br />
setpath=c:\sqlbin\binr;%path%&#8212;&#8212;&#8212;&#8212;-Sybase</span><span>的</span><span lang="EN-US">DOS</span><span>接口程序所在目录</span><span lang="EN-US"><br />
setdsquery=129.6.114.201,4114&#8212;&#8212;&#8212;&#8212;&#8211;</span><span>连接服务器</span><span lang="EN-US">IP</span><span>地址和端口号</span><span lang="EN-US"><br />
c:\sqlbin\binr\dbnovtcp<br />
C:\sqlbin\binr\rmineti</p>
<p>£¨1£(C)dbping129.6.114.201&#8212;&#8212;&#8212;&#8212;</span><span>检查是否连通</span><span lang="EN-US">SYBASE</span><span>服务器</span><span lang="EN-US"><br />
</span><span>连接成功出现</span><span lang="EN-US">“Successfullyopenednetworkconnection&#8221;<br />
(5)isql–Usa</span><span>朠</span><span lang="EN-US"><br />
1&gt;;sp_help<br />
2&gt;;go<br />
(6)</span><span>练习</span><span lang="EN-US">SQL</span><span>命令</span><span lang="EN-US"><br />
2</span><span>．</span><span lang="EN-US">Windows3.2</span><span>状态下</span><span lang="EN-US">SQL</span><span>客户端软件</span><span lang="EN-US"><br />
</span><span>软件位于：</span><span lang="EN-US">c:\sql10<br />
</span><span>生成</span><span lang="EN-US">SybaseOpenClient10</span><span>组下的</span><span lang="EN-US">WISQL,WSYBPING,SQLEDIT</span><span>等图标</span><span lang="EN-US">,</span><span>在</span><span lang="EN-US">SQLEDIT</span><span>建立与服务器的连接关系，</span><span lang="EN-US"></p>
<p>winsql32(</span><span>及</span><span lang="EN-US">wisql)</span><span>是</span><span lang="EN-US">isql</span><span>的</span><span lang="EN-US">Windows</span><span>应用版本。整个窗口分为两大部分，上半部分为</span><span lang="EN-US">SQL</span><span>命令输入区，下半部分为显示查询结果的输出区。使用</span><span lang="EN-US">Eidt</span><span>菜单对</span><span lang="EN-US">SQL</span><span>语句进行编辑，而</span><span lang="EN-US">Connect</span><span>菜单是用做对特定的</span><span lang="EN-US">SQLServer</span><span>和数据库进行连接。</span><span lang="EN-US"></p>
<p></span><span>练习题</span><span lang="EN-US"><br />
</span><span>（下列习题参考表</span><span lang="EN-US">enrolls,</span><span>表</span><span lang="EN-US">teachers,</span><span>表</span><span lang="EN-US">courses,</span><span>表</span><span lang="EN-US">sections,</span><span>表</span><span lang="EN-US">students</span><span>）</span><span lang="EN-US"><br />
1.Select*fromzylwherexm=&#8217;</span><span>张三</span><span lang="EN-US">&#8216;</span><span>语句中代表了哪三种含义？</span><span lang="EN-US"><br />
2.</span><span>列出表</span><span lang="EN-US">enrolls,</span><span>表</span><span lang="EN-US">teachers,</span><span>表</span><span lang="EN-US">courses,</span><span>表</span><span lang="EN-US">sections,</span><span>表</span><span lang="EN-US">students</span><span>中所有记录。</span><span lang="EN-US"><br />
3.</span><span>列出所有来自</span><span lang="EN-US">Chicago</span><span>地区女生的姓名和地址。</span><span lang="EN-US"><br />
4.</span><span>列出地区代码在</span><span lang="EN-US">20000</span><span>和</span><span lang="EN-US">29999</span><span>之间的学生姓名、城市名称和地区代码。</span><span lang="EN-US"><br />
5.</span><span>列出电话号码不以</span><span lang="EN-US">257</span><span>开头的所有教师的姓名和电话号码？</span><span lang="EN-US"><br />
6.</span><span>怎样查看表</span><span lang="EN-US">students</span><span>中</span><span lang="EN-US">student_name=jake</span><span>的记录？</span><span lang="EN-US"><br />
7.</span><span>列出所有不来自</span><span lang="EN-US">CA</span><span>，</span><span lang="EN-US">IL</span><span>州学生的姓名、城市名和州名。</span><span lang="EN-US"><br />
8.</span><span>按反字母顺序查出教师姓名及电话号码。</span><span lang="EN-US"><br />
9.</span><span>所有教师工资的平均数为多少？</span><span lang="EN-US"><br />
10.</span><span>表</span><span lang="EN-US">students</span><span>中共有多少学生？</span><span lang="EN-US"><br />
11.</span><span>如何启动和关闭</span><span lang="EN-US">SQLSERVER?</span><span>如何检查？</span><span lang="EN-US"><br />
12.Sybase</span><span>数据库由哪几部分组成？写出各部分的作用？</span><span lang="EN-US"><br />
13.</span><span>如何备份数据库</span><span lang="EN-US">zylong?</span><span>恢复其备份？写出命令。</span><span lang="EN-US"><br />
14.Sybinit</span><span>的作用是什么？</span><span lang="EN-US"><br />
15.</span><span>列出常用的系统表？系统过程（</span><span lang="EN-US">10</span><span>个）？说明含义？</span><span lang="EN-US"><br />
16.Sybase</span><span>数据库包含哪些系统数据库？作用是什么？</span><span lang="EN-US"><br />
17.</span><span>写出将</span><span lang="EN-US">/dev</span><span>目录下</span><span lang="EN-US">650M</span><span>的物理设备</span><span lang="EN-US">data112</span><span>初始化为</span><span lang="EN-US">data112_log</span><span>数据库的命令？</span><span lang="EN-US"><br />
18.</span><span>如何配置</span><span lang="EN-US">SYBASE</span><span>运行环境？配置</span><span lang="EN-US">SQLServer</span><span>内存为</span><span lang="EN-US">20M</span><span>？配置连接数目为</span><span lang="EN-US">50</span><span>？怎样使配置生效？写出命令。</span><span lang="EN-US"><br />
19.</span><span>如何建立表</span><span lang="EN-US">students</span><span>按</span><span lang="EN-US">student_name</span><span>的索引？</span><span lang="EN-US"><br />
20.</span><span>如何设置显示记录数</span><span lang="EN-US">(SQL)</span><span>？</span><span lang="EN-US"><br />
21.</span><span>有多少来自</span><span lang="EN-US">CA</span><span>，</span><span lang="EN-US">IL</span><span>州成绩大于</span><span lang="EN-US">2</span><span>的学生？</span><span lang="EN-US"><br />
22.</span><span>哪个学期有学生选课人数高于平均数？</span><span lang="EN-US"><br />
23.</span><span>列出平均成绩大于最低平均成绩的所有学生？</span><span lang="EN-US"><br />
24.</span><span>在表</span><span lang="EN-US">courses</span><span>中增加一条记录（</span><span lang="EN-US">CalculusV,Math,888,4</span><span>）</span><span lang="EN-US"><br />
25.</span><span>在表</span><span lang="EN-US">teachers</span><span>中给</span><span lang="EN-US">Horn</span><span>工资定为</span><span lang="EN-US">99999</span><span>？</span><span lang="EN-US"><br />
26.</span><span>删除表</span><span lang="EN-US">enrolls</span><span>中成绩大于</span><span lang="EN-US">5</span><span>或小于</span><span lang="EN-US">0</span><span>的记录？</span><span lang="EN-US"></p>
<p></span><span>附录</span><span lang="EN-US"></p>
<p></span><span>附录</span><span lang="EN-US">1</span><span>只有在</span><span lang="EN-US">master</span><span>数据库中才能有的系统表</span><span lang="EN-US"><br />
</span><span>系统表名表中的内容</span><span lang="EN-US"><br />
Sysconfigures</span><span>一行记录了用户可设置的配置参数</span><span lang="EN-US"><br />
Syscurconfigs</span><span>有关</span><span lang="EN-US">SQLServer</span><span>当前正使用的配置参数情况</span><span lang="EN-US"><br />
Sysdatabases</span><span>一行记录了</span><span lang="EN-US">SQLServer</span><span>中的一个数据库</span><span lang="EN-US"><br />
Sysdevices</span><span>一行记录了数据库的每一磁带转储设备，磁盘转储设备，数据库设备和磁盘分区</span><span lang="EN-US"><br />
Syslocks</span><span>有关动态锁的情况</span><span lang="EN-US"><br />
Syslogins</span><span>一行记录了每一有效的</span><span lang="EN-US">SQLServer</span><span>的用户帐号</span><span lang="EN-US"><br />
Sysmessages</span><span>一行记录了每一系统错误或警告</span><span lang="EN-US"><br />
Sysprocesses</span><span>有关</span><span lang="EN-US">Server</span><span>进程的情况</span><span lang="EN-US"><br />
Sysremotelogins</span><span>一行记录了一个远程用户</span><span lang="EN-US"><br />
Sysservers<br />
Sysusages</span><span>一行记录了一个远程</span><span lang="EN-US">SQLServer</p>
<p></span><span>附录</span><span lang="EN-US">2</span><span>在用户数据库和系统数据库中都有的系统表</span><span lang="EN-US"><br />
</span><span>系统表名表中的内容</span><span lang="EN-US"><br />
Sysalternates</span><span>一行记录了</span><span lang="EN-US">SQLServer</span><span>用户在当前数据库中的标识</span><span lang="EN-US"><br />
syscoumns</span><span>一行记录了一个表或视图的每一列，一个存储过程的每一参数</span><span lang="EN-US"><br />
syscomments</span><span>一行或多行记录了每一视图、规则、缺省值、触发器和存储过程</span><span lang="EN-US"><br />
sysdepends</span><span>一行记录了由一个过程、视图或触发器所参照的每一过程，视图或表</span><span lang="EN-US"><br />
syskeys</span><span>一行记录了每一主码，外码或公用码</span><span lang="EN-US"><br />
syslogs</span><span>事务日志，是</span><span lang="EN-US">SQLServer</span><span>用于恢复或向前滚动的</span><span lang="EN-US"><br />
sysobjects</span><span>一行记录了每一表、视图、存储过程、日志、规则、缺省值、触发器和临时表（仅在</span><span lang="EN-US">tempdb</span><span>中）</span><span lang="EN-US"><br />
sysprocedures</span><span>一行记录了每一视图、规则、缺省、触发器和过程</span><span lang="EN-US"><br />
syprotects</span><span>记录用户的权限信息</span><span lang="EN-US"><br />
sysegments</span><span>一行记录了每一片段（命名的的磁盘分片汇集）</span><span lang="EN-US"><br />
systypes</span><span>一行记录了每一由系统提供的和用户定义的数据类型</span><span lang="EN-US"><br />
sysusers</span><span>一行记录了一个数据库的合法用户，或用户组</span><span lang="EN-US"></p>
<p></span><span>附录</span><span lang="EN-US">3</span><span>由</span><span lang="EN-US">SQLServer</span><span>提供的系统过程功能和执行权限</span><span lang="EN-US"><br />
</span><span>过程名功能执行权限</span><span lang="EN-US"><br />
sp_addalias</span><span>把数据库中的一个用户映象到另一个用户数据库所有者</span><span lang="EN-US"><br />
sp_addgroup</span><span>向数据库增加分组，在授权和撤权命令中分组被用作聚合名字数据库所有者</span><span lang="EN-US"><br />
sp_addlanguage</span><span>为服务器定义可替换语言，并把它增加到</span><span lang="EN-US">master</span><span>，</span><span lang="EN-US">dbo,syslanguages</span><span>中。系统管理员</span><span lang="EN-US"><br />
sp_addlogin</span><span>通过向</span><span lang="EN-US">master.dbo,syslogins</span><span>中增加表项授权新的</span><span lang="EN-US">SQLServer</span><span>用户系统管理员</span><span lang="EN-US"><br />
sp_addremotelogin</span><span>通过向</span><span lang="EN-US">master</span><span>，</span><span lang="EN-US">bo,sysremotelogins</span><span>增添表项授权新的远程服务器用户系统管理员</span><span lang="EN-US"><br />
sp_addsegment</span><span>在指定的数据库设备上创建一个段数据库所有者系统管理员</span><span lang="EN-US"><br />
sp_addserver</span><span>定义远程服务器，或定义本地服务器名字数据库所有者系统管理员</span><span lang="EN-US"><br />
sp_addtype</span><span>创建用户定义的数据类型</span><span lang="EN-US">Public<br />
sp_addumpdervce</span><span>向</span><span lang="EN-US">SQLServer</span><span>增加转储设备系统管理员</span><span lang="EN-US"><br />
sp_adduser</span><span>向当前数据库添加新的用户数据库所有者</span><span lang="EN-US"><br />
sp_bindefault</span><span>为一列或用户下义的数据类型定义缺省值目标（对象）所有者</span><span lang="EN-US"><br />
sp_bindrule</span><span>向一列或用户定义的数据类型赋一规则目标汽有者</span><span lang="EN-US"><br />
sp_changedbowner</span><span>改变数据库的所有者数据库所有者</span><span lang="EN-US"><br />
sp_changegroup</span><span>改变用户所属的分组数据库所有者</span><span lang="EN-US"><br />
sp_checknames</span><span>检查当前数据库在</span><span lang="EN-US">7</span><span>位</span><span lang="EN-US">ASCII</span><span>码集之外的字符的名字</span><span lang="EN-US">public<br />
sp_commonkey</span><span>在两个表或视图之间定义一公共键</span><span lang="EN-US">――</span><span>经常被连接的列两表（或视图）的所有者</span><span lang="EN-US"><br />
sp_configure</span><span>显示或改变配置变量没有参数或只有第一个参数的执行权属于</span><span lang="EN-US">public</span><span>，否则属于系统管理员</span><span lang="EN-US"><br />
sp_dboption</span><span>显示或改变数据库选项不带参数属于</span><span lang="EN-US">public</span><span>，带参数时属于数据库所有者</span><span lang="EN-US"><br />
sp_defaultdb</span><span>改变一用户的缺省数据库系统管理员（但每个用户都可以改变他自己的缺省语言）</span><span lang="EN-US"><br />
sp_depends</span><span>显示数据库目标相关性的信息</span><span lang="EN-US">public<br />
sp_diskdefault</span><span>设备数据库设备的状态为</span><span lang="EN-US">defaulton</span><span>或</span><span lang="EN-US">defaultoff</span><span>（表明一数据设备是否能用于数据库的岂省存储）系统管理员</span><span lang="EN-US"><br />
sp_dropalias</span><span>删除用</span><span lang="EN-US">sp_addalias</span><span>建立的用户名别名标识数据库所有者</span><span lang="EN-US"><br />
sp_dropdevice</span><span>删除一</span><span lang="EN-US">SQLServer</span><span>数据库设备或转储设备系统管理员</span><span lang="EN-US"><br />
sp_dropgroup</span><span>从数据库中删除一分组数据库所有者</span><span lang="EN-US"><br />
sp_droplanguage</span><span>从服务器中删除可替换语言，并从</span><span lang="EN-US">master.dbo.syslanguages</span><span>中删掉相应的行系统管理员</span><span lang="EN-US"></p>
<p></span><span>附录</span><span lang="EN-US">4</span><span>常用</span><span lang="EN-US">SQL</span><span>命令</span><span lang="EN-US"><br />
1.loadisql-Usa-P&#8211;</span><span>进入</span><span lang="EN-US">ISQL</span><span>环境</span><span lang="EN-US"><br />
quit&#8212;-</span><span>退出</span><span lang="EN-US">ISQL</span><span>环境</span><span lang="EN-US"><br />
2.shutdown(server_name)&#8211;</span><span>关闭</span><span lang="EN-US">SYBASE</span><span>服务器</span><span lang="EN-US"><br />
ex.shutdownSYB_BACKUP<br />
3.use(database_name)&#8211;</span><span>打开数据库</span><span lang="EN-US"><br />
ex.usetele114<br />
4.setrowcount(number)&#8211;</span><span>设置显示记录条数</span><span lang="EN-US"><br />
ex.setrowcount10(</span><span>为</span><span lang="EN-US">0</span><span>则取消设置</span><span lang="EN-US">)<br />
5.select(select_list)from(table_name)where(search_conditions)<br />
&#8211;</span><span>查看符合要求的内容</span><span lang="EN-US"><br />
ex.selectmax(UnitNo1)fromcode_1th<br />
6.update(table_name)set(column_name1)=(value1)</span><span>，</span><span lang="EN-US">column_name2)=value2)<br />
where(search_conditions)&#8211;</span><span>重新赋值</span><span lang="EN-US"><br />
ex.updatecode_1thsetPassword=&#8217;12345&#8242;</span><span>，</span><span lang="EN-US"><br />
RevCode1=substring(RevCode1</span><span>，</span><span lang="EN-US">1</span><span>，</span><span lang="EN-US">datalength(rtrim(RevCode1))-1)<br />
wheresubstring(Code1</span><span>，</span><span lang="EN-US">1</span><span>，</span><span lang="EN-US">1)=&#8217;v'andsubstring(Code1</span><span>，</span><span lang="EN-US">2</span><span>，</span><span lang="EN-US">1)!=&#8221;<br />
7.select(select_list)into(table_name1)from(table_name2)<br />
where(search_conditions)<br />
&#8211;</span><span>将符合要求的</span><span lang="EN-US">table_name2</span><span>中的内容存在</span><span lang="EN-US">table_name1</span><span>中</span><span lang="EN-US"><br />
ex.select*intosamplefromcode_1thwheresubstring(Code1</span><span>，</span><span lang="EN-US">1</span><span>，</span><span lang="EN-US">1)=&#8217;V&#8217;<br />
8.truncatetable(table_name)&#8211;</span><span>删去表</span><span lang="EN-US"><br />
ex.truncatetablesample<br />
delete(table_name)where(search_conditions)&#8211;</span><span>删去表的一部分</span><span lang="EN-US"><br />
ex.deleteexamplewhereCounty=&#8217;5&#8242;<br />
9.sp_addumpdevice&#8217;disk&#8217;</span><span>，</span><span lang="EN-US">(logicalname)</span><span>，</span><span lang="EN-US">(physicalname)&#8211;</span><span>定义转储设备</span><span lang="EN-US"><br />
ex.sp_addumpdevice&#8217;disk&#8217;</span><span>，</span><span lang="EN-US">&#8216;nbdump_1&#8242;</span><span>，</span><span lang="EN-US">&#8216;vol1:\nbdump\nbdump.dat&#8217;<br />
10.sp_dropdevice(device_name)&#8211;</span><span>删去转储设备</span><span lang="EN-US"><br />
ex.sp_dropdevicenbdump_1<br />
11.dumptran(database_name)withtruncate_only&#8211;</span><span>删去日志</span><span lang="EN-US"><br />
ex.dumptrantele114withtruncate_only<br />
12.sp_configure(config_name)</span><span>，</span><span lang="EN-US">(config_value)&#8211;</span><span>更改设置值</span><span lang="EN-US"><br />
ex.sp_configure&#8217;allowupdates&#8217;</span><span>，</span><span lang="EN-US">1<br />
13.reconfigurewithoverride&#8211;</span><span>使更改设置值有效</span><span lang="EN-US"><br />
14.sp_who&#8211;</span><span>使用数据库用户列表</span><span lang="EN-US"><br />
15.kill(spid)&#8211;</span><span>删去无效的数据库用户</span><span lang="EN-US"><br />
ex.kill9&#8211;</span><span>删去</span><span lang="EN-US">spid</span><span>为</span><span lang="EN-US">9</span><span>的数据库用户</span><span lang="EN-US"><br />
16</span><span>．</span><span lang="EN-US">sp_helpindex(tabel_name)&#8211;</span><span>查看索引情况</span><span lang="EN-US"><br />
ex.sp_helpindexcode_2th<br />
17.sp_helpdb(database_name)&#8211;</span><span>查看数据库占用空间情况</span><span lang="EN-US"><br />
ex.sp_helpdbtele114</p>
<p></span><span>附录</span><span lang="EN-US">5</span><span>例子数据库</span><span lang="EN-US"><br />
terchers:</span><span>教师表</span><span lang="EN-US"><br />
============================================================<br />
teacher#teacher_namephonesalary<br />
(</span><span>教师号</span><span lang="EN-US">)(</span><span>教师姓名</span><span lang="EN-US">)</span><span>（电话号码）（工资）</span><span lang="EN-US"><br />
SMALLINTCHAR(1<!--[if gte vml 1]><v:shape id="_x0000_i1030" type="#_x0000_t75"  alt="" style='width:11.25pt;height:11.25pt'> <v:imagedata src="file:///C:\DOCUME~1\gzzymh\LOCALS~1\Temp\msohtml1\01\clip_image001.gif"   o:href="http://bbs.chinaunix.net/images/smilies/icon_cool.gif" /> </v:shape><![endif]--><img src="file:///C:/DOCUME~1/gzzymh/LOCALS~1/Temp/msohtml1/01/clip_image001.gif" alt="" width="15" height="15" />CHAR(10)FLOAT<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
303Dr.Horn257-304927540.000000<br />
290Dr.Lowe257-239031450.000000<br />
430Dr.Engle257-462138200.000000<br />
180Dr.Cooke257-808829560.000000<br />
560Dr.Olsen257-808631778.000000<br />
784Dr.Sacango257-304632098.000000</p>
<p>enrolls:</span><span>成绩表</span><span lang="EN-US"><br />
==================================================<br />
course#section#student#grade<br />
</span><span>（课程号）（学期）（学号）（成绩）</span><span lang="EN-US"><br />
SMALLINTSMALLINTSMALLINTSMALLINT<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
73011483<br />
45022103<br />
73012101<br />
29012983<br />
48022983<br />
73013482<br />
29013494<br />
48013584<br />
48014102<br />
45014732<br />
73014733<br />
48024730<br />
29015482<br />
73015583<br />
73016494<br />
48016494<br />
45016544<br />
45025484</p>
<p>courses:</span><span>课程表</span><span lang="EN-US"><br />
======================================================================<br />
coursecourse_namedepartmentnum_credits<br />
</span><span>（课程号）（课程名）（系）（学分）</span><span lang="EN-US"><br />
SMALLINTCHAR(20)CHAR(16)SMALLINT<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
450WesternCivilizationHistory3<br />
730CalculusIVMath4<br />
290EnglishCompositionEnglish3<br />
480CompilerWritingComputerScience3</p>
<p>sections:</span><span>学期表</span><span lang="EN-US"><br />
=======================================================<br />
section#teachers#course#num_students<br />
</span><span>（学期）（教师号）（课程号）（学生数）</span><span lang="EN-US"><br />
SMALLINTSMALLINTSMALLINTSMALLINT<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
25604502<br />
27844802<br />
11804803<br />
14302903<br />
12907306<br />
13034502<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
students:</span><span>学生表</span><span lang="EN-US"><br />
===============================================================================<br />
student#student_nameaddresszipcitystatesex<br />
</span><span>（学号）（学生姓名）（地址）（地区号）（城市）（州）（性别）</span><span lang="EN-US"><br />
SMALLINTCHAR(1<!--[if gte vml 1]><v:shape id="_x0000_i1031" type="#_x0000_t75"  alt="" style='width:11.25pt;height:11.25pt'> <v:imagedata src="file:///C:\DOCUME~1\gzzymh\LOCALS~1\Temp\msohtml1\01\clip_image001.gif"   o:href="http://bbs.chinaunix.net/images/smilies/icon_cool.gif" /> </v:shape><![endif]--><img src="file:///C:/DOCUME~1/gzzymh/LOCALS~1/Temp/msohtml1/01/clip_image001.gif" alt="" width="15" height="15" />CHAR(30)CHAR(5)CHAR(10)CHAR(2)CHAR(1)<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
558ValShipp238WestportRoad60556ChILF<br />
148SusanPowell534EastRiverDr.19041HaPAF<br />
210BobDawson120Southjefferson02891NeRIM<br />
298HowardMansfield290WynkoopDrive22180ViVAM<br />
348SusanPugh534EastHamptonDr.06107HaCNF<br />
349JoeAdams473EmmersonStreet19702NeDEM<br />
354JanetLadd44110thStreet18073PePAF<br />
410BillJones120SouthHarrison92660NeCAM<br />
473CarolDean983ParkAvenue02169BoMAF<br />
548AllenThomas238WestOxRoad60624ChILM<br />
649JohnAnderson473EmmoryStreet10008NeNYM<br />
654JanetThomas4416thStreet16510ErNYF</span><span lang="EN-US"></span></p>
<p class="MsoNormal"><span lang="EN-US"><br />
</span><strong><span lang="EN-US">sybase</span></strong><strong><span>数据库知识</span></strong><span lang="EN-US"></span></p>
<p class="MsoNormal" align="left"><span>附录</span><span lang="EN-US">6</span><span>练习题答案</span><span lang="EN-US"><br />
</span><span>（下列习题参考表</span><span lang="EN-US">enrolls,</span><span>表</span><span lang="EN-US">teachers,</span><span>表</span><span lang="EN-US">courses,</span><span>表</span><span lang="EN-US">sections,</span><span>表</span><span lang="EN-US">students</span><span>）</span><span lang="EN-US"><br />
1</span><span>、</span><span lang="EN-US">Select*fromzylwherexm=&#8217;</span><span>张三</span><span lang="EN-US">&#8216;</span><span>语句中代表了哪三种含义？</span><span lang="EN-US"><br />
Ÿ</span><span>查询什么</span><span lang="EN-US"><br />
Ÿ</span><span>从什么地方</span><span lang="EN-US"><br />
Ÿ</span><span>条件</span><span lang="EN-US"></p>
<p>2</span><span>、列出表</span><span lang="EN-US">enrolls,</span><span>表</span><span lang="EN-US">teachers,</span><span>表</span><span lang="EN-US">courses,</span><span>表</span><span lang="EN-US">sections,</span><span>表</span><span lang="EN-US">students</span><span>中所有记录。</span><span lang="EN-US"><br />
(1)select*fromenrolls<br />
(2)select*fromteachers<br />
(3)select*fromcourses<br />
(4)select*fromsections<br />
(5)select*fromstudent</p>
<p>3</span><span>、列出所有来自</span><span lang="EN-US">Chicago</span><span>地区女生的姓名和地址。</span><span lang="EN-US"><br />
1&gt;;selectstudent_name,address,city,statefromstudents<br />
2&gt;;wherecity=&#8217;Chicago&#8217;andsex=&#8217;F&#8217;</p>
<p>4</span><span>、列出地区代码在</span><span lang="EN-US">20000</span><span>和</span><span lang="EN-US">29999</span><span>之间的学生姓名、城市名称和地区代码。</span><span lang="EN-US"><br />
1&gt;;selectstudent_name,city,state,zipfromstudents<br />
2&gt;;wherezipnotbetween&#8217;20000&#8242;and&#8217;29999&#8242;</p>
<p>5</span><span>、列出电话号码不以</span><span lang="EN-US">257</span><span>开头的所有教师的姓名和电话号码？</span><span lang="EN-US"><br />
1&gt;;selectteacher_name,phonefromteachers<br />
2&gt;;wherephonenotlike&#8217;257%&#8217;</p>
<p>6</span><span>、怎样查看表</span><span lang="EN-US">students</span><span>中</span><span lang="EN-US">student_name=jake</span><span>的记录？</span><span lang="EN-US"><br />
1&gt;;select*fromstudentswherestudent_name=&#8217;jake&#8217;</p>
<p>7</span><span>、列出所有不来自</span><span lang="EN-US">CA</span><span>，</span><span lang="EN-US">IL</span><span>州学生的姓名、城市名和州名。</span><span lang="EN-US"><br />
1&gt;;selectstudent_name,city,statefromstudents<br />
2&gt;;wherestatenotin(&#8216;CA&#8217;,'IL&#8217;)</p>
<p>8</span><span>、按反字母顺序查出教师姓名及电话号码。</span><span lang="EN-US"><br />
1&gt;;selectteacher_name,phonefromteachers<br />
2&gt;;orderbyteacher_nameDESC</p>
<p>9</span><span>、所有教师工资的平均数为多少？</span><span lang="EN-US"><br />
1&gt;;selectavg(salary)fromteachers</p>
<p>10</span><span>、表</span><span lang="EN-US">students</span><span>中共有多少学生？</span><span lang="EN-US"><br />
1&gt;;selectcount(*)fromstudents</p>
<p>11</span><span>、如何启动和关闭</span><span lang="EN-US">SQLSERVER?</span><span>如何检查？</span><span lang="EN-US"><br />
Startserver–fRUN_SYBASE–fRUN_SYB_BACKUP<br />
Showserver</p>
<p>12</span><span>、</span><span lang="EN-US">Sybase</span><span>数据库由哪几部分组成？写出各部分的作用？</span><span lang="EN-US"><br />
(1)SybaseSQLServer<br />
SybaseSQLServer</span><span>是进行数据库管理和维护的一个联机的关系数据库管理系统，是整个</span><span lang="EN-US">Sybase</span><span>产品的核心软件，起着数据管理、高速缓冲管理、事务管理的作用。</span><span lang="EN-US"></p>
<p>(2)SybaseSQLToolset<br />
</span><span>数据库应用系统的建立与开发的一组前端工具。由</span><span lang="EN-US">ISQL</span><span>，</span><span lang="EN-US">DWB</span><span>和</span><span lang="EN-US">APT</span><span>组成。</span><span lang="EN-US"><br />
ISQL</span><span>是与</span><span lang="EN-US">SQLServer</span><span>进行交互的一种</span><span lang="EN-US">SQL</span><span>句法分析器。</span><span lang="EN-US">ISQL</span><span>接收用户发出的</span><span lang="EN-US">SQL</span><span>语言，将其发送给</span><span lang="EN-US">SQLServer</span><span>，并将结果以形式化的方式显示在用户的标准输出上。</span><span lang="EN-US"><br />
DWB</span><span>是数据工作台，是</span><span lang="EN-US">SybaseSQLToolset</span><span>的一个主要组成部分，它的作用在于使用户能够设置和管理</span><span lang="EN-US">SQLServer</span><span>上的数据库，并且为用户提供一种对数据库的信息执行添加、更新和检索等操作的简便方法。在</span><span lang="EN-US">DWB</span><span>中能完成</span><span lang="EN-US">ISQL</span><span>的所有功能，且由于</span><span lang="EN-US">DWB</span><span>是基于窗口和菜单的，因此操作比</span><span lang="EN-US">ISQL</span><span>简单，是一种方便实用的数据库管理工具。</span><span lang="EN-US"><br />
APT</span><span>是</span><span lang="EN-US">Sybase</span><span>客户软件部分的主要产品之一，也是从事实际应用开发的主要环境。</span><span lang="EN-US">APT</span><span>工作台是用于建立应用程序的工具集，可以创建从非常简单到非常复杂的应用程序，它主要用于开发基于表格（</span><span lang="EN-US">Form</span><span>）的应用。其用户界面采用窗口和菜单驱动方式，通过一系列的选择完成表格（</span><span lang="EN-US">Form</span><span>）、菜单和处理的开发。</span><span lang="EN-US"></p>
<p>(3)SybaseOpenClient/OpenServer<br />
</span><span>通过</span><span lang="EN-US">OpenClient</span><span>的</span><span lang="EN-US">DB-LIB</span><span>库，应用程序可以访问</span><span lang="EN-US">SQLServer</span><span>。而通过</span><span lang="EN-US">OpenServer</span><span>的</span><span lang="EN-US">SERVER-LIB</span><span>，应用程序可以访问其它的数据库管理系统。其是任何应用软件和任何类型的数据连接在一起的接口。</span><span lang="EN-US"></p>
<p>13</span><span>、如何备份数据库</span><span lang="EN-US">zylong?</span><span>恢复其备份？写出命令。</span><span lang="EN-US"><br />
1&gt;;dumpdatabasezylongtozzz<br />
2&gt;;go<br />
3&gt;;loaddatabasezylongfromzzz<br />
4&gt;;go</p>
<p>14</span><span>、</span><span lang="EN-US">Sybinit</span><span>的作用是什么？</span><span lang="EN-US"><br />
</span><span>作用：</span><span lang="EN-US">a.</span><span>建立</span><span lang="EN-US">master</span><span>设备</span><span lang="EN-US"><br />
b.</span><span>创建各个系统表</span><span lang="EN-US"><br />
c.</span><span>创建</span><span lang="EN-US">sybsystemprocs</span><span>数据库配置参数</span><span lang="EN-US"></p>
<p>15</span><span>、列出常用的系统表？系统过程（</span><span lang="EN-US">10</span><span>个）？说明含义？</span><span lang="EN-US"></p>
<p>16</span><span>、</span><span lang="EN-US">Sybase</span><span>数据库包含哪些系统数据库？作用是什么？</span><span lang="EN-US"><br />
●</span><span>主数据库</span><span lang="EN-US">master</span><span>；</span><span lang="EN-US"><br />
●</span><span>模型数据库</span><span lang="EN-US">model</span><span>；</span><span lang="EN-US"><br />
●</span><span>系统过程数据库</span><span lang="EN-US">sybsystemprocs</span><span>；</span><span lang="EN-US"><br />
●</span><span>临时数据库</span><span lang="EN-US">tempdb</span><span>。</span><span lang="EN-US"></p>
<p>17</span><span>、写出将</span><span lang="EN-US">/dev</span><span>目录下</span><span lang="EN-US">650M</span><span>的物理设备</span><span lang="EN-US">data112</span><span>初始化为</span><span lang="EN-US">data112_log</span><span>数据库的命令？</span><span lang="EN-US"><br />
1&gt;;diskinit<br />
2&gt;;name=&#8221;data112_log&#8221;<br />
3&gt;;physname=&#8221;/dev/data112&#8243;<br />
4&gt;;vdevno=7<br />
5&gt;;size=332800<br />
6&gt;;go</p>
<p>18</span><span>、如何配置</span><span lang="EN-US">SYBASE</span><span>运行环境？配置</span><span lang="EN-US">SQLServer</span><span>内存为</span><span lang="EN-US">20M</span><span>？配置连接数目为</span><span lang="EN-US">50</span><span>？怎样使配置生效？写出命令。</span><span lang="EN-US"><br />
1&gt;;sp_configure&#8221;memory&#8221;,10240<br />
2&gt;;sp_configure&#8221;userconnections&#8221;,50<br />
3&gt;;go<br />
4&gt;;reconfigurewithoverride<br />
5&gt;;go</p>
<p>19</span><span>、如何建立表</span><span lang="EN-US">students</span><span>按</span><span lang="EN-US">student_name</span><span>的索引？</span><span lang="EN-US"><br />
1&gt;;createindexsssonstudents(student_name)</p>
<p>20</span><span>、如何设置显示记录数</span><span lang="EN-US">(SQL)</span><span>？</span><span lang="EN-US"><br />
1&gt;;setrowcount10</p>
<p>21</span><span>、有多少来自</span><span lang="EN-US">CA</span><span>，</span><span lang="EN-US">IL</span><span>州成绩大于</span><span lang="EN-US">2</span><span>的学生？</span><span lang="EN-US"><br />
1&gt;;selectstudent_name,state,gradefromstudents,enrolls<br />
2&gt;;wherestatein(&#8216;CA&#8217;,'IL&#8217;)andgrade&gt;;2andstudents.student#=enrolls.student#</p>
<p>22</span><span>、哪个学期有学生选课人数高于平均数？</span><span lang="EN-US"><br />
1&gt;;selectcourse#,section#,num_studentsfromsections<br />
2&gt;;wherenum_students&gt;;(selectavg(num_students)<br />
3&gt;;fromsections)</p>
<p>23</span><span>、列出平均成绩大于最低平均成绩的所有学生？</span><span lang="EN-US"><br />
1&gt;;selectstudent_name,avg(grade)fromstudents,enrolls<br />
2&gt;;wherestudents.student#=enrolls.student#<br />
3&gt;;groupbystudent_namehavingavg(grade)&gt;;any<br />
4&gt;;(selectavg(grade)fromenrollsgroupbystudent#)</p>
<p>24</span><span>、在表</span><span lang="EN-US">courses</span><span>中增加一条记录（</span><span lang="EN-US">CalculusV,Math,888,4</span><span>）</span><span lang="EN-US"><br />
1&gt;;insertintocourses(course_name,department,course#,num_credits)<br />
2&gt;;values(&#8216;Calculus&#8217;,'Math&#8217;,730,4)</p>
<p>25</span><span>、在表</span><span lang="EN-US">teachers</span><span>中给</span><span lang="EN-US">Horn</span><span>工资定为</span><span lang="EN-US">99999</span><span>？</span><span lang="EN-US"><br />
1&gt;;updateteacherssetsalary=99999whereteacher_name=&#8217;Dr.Horn&#8217;</p>
<p>26</span><span>、删除表</span><span lang="EN-US">enrolls</span><span>中成绩大于</span><span lang="EN-US">5</span><span>或小于</span><span lang="EN-US">0</span><span>的记录？</span><span lang="EN-US"><br />
1&gt;;deletefromenrollswheregrde&gt;;5orgrade&lt;0</span><span lang="EN-US"></span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/138.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
