Sybase中SQL语言概述 篇一
一、实验目的:
SQL Server 的'查询分析器是一种特别用于交互式执行SQL语句和脚本的极好的工具。
SQL(Structured Query Language)语言是关系数据库的标准语言。是一种介于关系代数与关系演算之间的结构化查询语言,其功能并不仅仅是查询,SQL语言是一个通用的、功能极强的关系数据库语言。
在本次实验中熟悉表的创建、删除、修改及索引的创建与删除
二、实验内容
1. 启动数据库服务软件SQL Server 2000的查询分析器,用如下语句对表进行操作,详细的语法格式参看课本相应章节: Create Table 建表 Drop Table 删除表 Alter Table 更改表
2.如下语句对索引进行操作,详细的语法格式参看课本相应章节: Create Index 建立索引 Drop Index 删除索引
三、实验任务
1.打开数据库SQL Server 2000的查询分析器,用Create Table建表aa,表
2.用Create Table建表bb,表结构如下所示(其中Bb1与Bb2的组合是主键):
3.用Drop Table删除表aa。
4.用Alter Table修改表bb,添加一个字段Bb4,类型Varchar,长度20。
5.用Create Index对表Bb的Bb3字段建立一个升序索引,索引名Indexbb。
6.用Drop Index删除索引Indexbb。
Create Table aa
(Aa1 Varchar (20) primary key, Aa2 Int, Aa3 Decimal );
Create Table bb (Bb1 Varchar (30), Bb2 Int,
Bb3 Decimal (6,2), primary key (Bb1,Bb2) );
Drop Table aa;
Alter Table bb add Bb4 Varchar (20);
Create Index Indexbb on bb(Bb3 asc );
Drop Index bb.Indexbb;
Orcal高级SQL学习 篇二
C语言是一种结构化语言,是大部分编程语言的基础,C语言学好了,以后的JAVA,C#以及更多的编程语言才有可能学好。下面就是学好C语言必须了解的四点:
1、课前认真预习,把下一节要上的内容先自己看一遍,把不懂的地方打个标记,等上课的时候可以请教老师。理解书上的例子,搞懂每个语句的含义,用法。看完后尝试着不看例子自己编写程序,编完以后再跟书上进行比较,看自己的程序还有哪方面的不足,再进行改正。想要真正学好C语言光看书是不够的,一定要自己多动手。
2、上课认真听讲积极思考,提高上课效率。老师上课讲述的都是课程的重点和难点,听好课程可以达到“事半功倍”的目的。
3、课后复习。把每天的上课内容回家再温习一遍,独立完成课后的作业,如果有时间,最好能找点课外书籍、课外习题什么的来巩固所学的内容。
4、主动上机,多多实践,提高动手能力。通过上机实践来验证所学的理论,通过在机器上查找错误来巩固概念,通过提高上机能力来促进理论学习,开阔编程思路,提高反映速度,提高分析问题解决问题的能力,锻炼心理素质,提高心理承受能力。
学习C语言的初期重点要放在掌握语言的语法和规定上,一定要养成良好的编程习惯,平时写程序注意语法规范格式控制,格式规范了,出了错误也容易找到出错的地方,这是C语言的基础;后期的'重点要转移到掌握编程的思路和基本算法上来。课后多做习题,找一些经典例子尝试自己编写,写程序切忌半途而费,想到一个思路,就要按自己思路把它写完,就算错了,也可以让自己了解为什么这样做会错?错在哪里?会出什么结果?以后自己也很难在这个地方犯同样的错误。当学到一个新的知识点,就试着把它运用到以前做的习题上,不但巩固了以前学的内容,也更加能加强新知识的理解。
学习C语言就是要经过以上这样几个反复,才能前后融会贯通,积累所应该掌握的知识。C语言是这样,其他语言也是这样,从基本抓起,多动手,多动脑,不懂就问,注意平时积累。
sql语言的ddl实验报告 篇三
一、基本操作
创建数据库:createdatabasedatabas_name;
创建表:createtabletable_name(var_name1var_type,var_name2var_type,...);
查看表格式:desctable_name;
删除表:droptabletable_name;
查看数据:select*fromtable_name;
添加数据:intotable_name(column_name1,column_name2,...)
value('value1','value2',...);
选择数据:selectcolumns_namefromtable_name
whereconditions;
更改数据:updatetable_name
setcolumn_name1=value1,column_name2=value2(可以用表达式,如x=x+1)
whereconditions;
删除数据:fromtable_name
whereconditions;
增加列:altertabletable_name(也可用于修改其它的表的特性)
addcolumncolumn_namevar_type(first/last/after/beforecolumn_name2(指定列位置));
改变列数据类型:altertabletable_name
changecolumncolumn_name_oldcolumn_name_newvar_type_new,
modifycolumncolumn_namevar_type_new
排序:orderbycolumn_name(desc)
改特征值分组:groupbycolumn_name
复制表:createtablenew_table_nameas
select*fromold_table_name
二、细节设置和高级命令
限定不允许Null:列数据类型加上notnull
限定赋值范围:列数据类型加上check
列取默认值:列数据类型加上defaultvalue
主键设定:主键特征类型设定为notnull,可以加auto_increment实现自动递增
声明主键:primarykey(column_name)
限制查询数量:limitnumber/number1,number2
声明外键:constraintconstraint_name
foreignkey(column_name)
referenceforeign_column_name(column_name)
联接,给出两列所有的组合可能:
_name1,_name2
fromtable_name1asname1
crossjoin
table_name2asname2(as可以不写)
自然联接,要求联接的表中名称相同的列要有相同的值,才会选择:naturaljoin
外联接,给出不仅给出满足条件的项,还会列出其中一个表中不满足条件的项,而另一个表对应的数据为Null
子查询,即中间暂存变量,以括号内给出的select语句作为外层查询的输入。据称所有使用子查询的地方都可以用联接来实现
合并,将多次选择得到的结果合并起来:union
视图,即将查询做成函数,方便调用:
createviewview_nameas
selectcolumn_namesfromtable_namewhereconditions
事务,要求一组数据操作要都一起完成,否则则都不进行,防止同时多方对表进行操作
starttransaction;%事务开始
……
rollback;%放弃上面的操作,回到操作前的状态
commit;%完成事务
三、选择时的条件表达
正则表达式:likeexpr
范围选取:in(value_name1,value_name2,...)
betweenvalue1andvalue2
四、表格设计原则
第一范式:1)数据要具有原子性,即每个特征只有一个值,且特征之间不能是同类,比如不应该设置特征为兴趣1,兴趣2,兴趣3...
2)每一行,既每个事例必须要有一个唯一的识别项,即主键
多表:利用多张表来使数据表符合第一范式,用专属表来专门处理具有多个值的特征,以外键将表关联起来
第二范式:1)符合第一范式
2)不存在部分函数依赖,即非主键特征依赖于组合主键的一部分而非全部,只要使用人工主键(与数据无关的id)作为主键即可
第三范式:1)符合第二范式
2)不存在传递函数依赖,即非主键特征之间不存在依赖
[SQL基础学习笔记]