仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 944|回复: 8
打印 上一主题 下一主题

[学习教程] ASP编程:SQL语法参考手册

[复制链接]
简单生活 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:59:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
对于中小型web应用来说,php有很强的竞争力,linux+apache+mysql+php(lamp)的组合几乎可以胜任绝大多数网站的解决方案,对于大型应用来讲,对于系统架构要求更高,需要有成熟的框架支持,jsp的struts是个不错的框架,国内介绍它的资料也非常多,应用逐渐广泛起来。asp就不用说了,sql语法|参考|参考手册|语法参考DB2供应了干系式材料库的查询言语SQL(StructuredQueryLanguage),是一种十分白话化、既易学又易懂的语法。此一言语几近是每一个材料库体系都必需供应的,用以暗示干系式的操纵,包括了材料的界说(DDL)和材料的处置(DML)。SQL本来拼成SEQUEL,这言语的原型以"体系R"的名字在IBM圣荷西实行室完成,经由IBM外部及其他的很多利用性及效力测试,其了局相称使人中意,并决意在体系R的手艺基本开展出来IBM的产物。并且美国国度尺度学会(ANSI)及国际尺度化构造(ISO)在1987遵守一个几近是以IBMSQL为基本的尺度干系式材料言语界说。

1、材料界说DDL(DataDefinitionLanguage)
材料定言语是指对材料的格局和形状下界说的言语,他是每一个材料库要创建时分时起首要面临的,举凡材料分哪些表格干系、表格内的有什麽栏位主键、表格和表格之间相互参考的干系等等,都是在入手下手的时分所必需计划好的。

1、建表格:
CREATETABLEtable_name(
column1DATATYPE[NOTNULL][NOTNULLPRIMARYKEY],
column2DATATYPE[NOTNULL],
...)
申明: 
DATATYPE--是材料的格局,详见表。
NUTNULL--可不成以同意材料有空的(还没有有材料填进)。
PRIMARYKEY--是本表的主键。

2、变动表格 
ALTERTABLEtable_name
ADDCOLUMNcolumn_nameDATATYPE
申明:增添一个栏位(没有删除某个栏位的语法。
ALTERTABLEtable_name
ADDPRIMARYKEY(column_name)
申明:变动表得的界说把某个栏位设为主键。
ALTERTABLEtable_name
DROPPRIMARYKEY(column_name)
申明:把主键的界说删除。

3、创建索引 
CREATEINDEXindex_nameONtable_name(column_name)
申明:对某个表格的栏位创建索引以增添查询时的速率。

4、删除 
DROPtable_name
DROPindex_name

2、的材料形状DATATYPEs
smallint
16位元的整数。
interger
32位元的整数。
decimal(p,s)
p准确值和s巨细的十进位整数,准确值p是指全体有几个数(digits)巨细值,s是指小数
点後有几位数。假如没有出格指定,则体系会设为p=5;s=0。
float
32位元的实数。
double
64位元的实数。
char(n)
n长度的字串,n不克不及凌驾254。
varchar(n)
长度不流动且其最年夜长度为n的字串,n不克不及凌驾4000。
graphic(n)
和char(n)一样,不外其单元是两个字元double-bytes,n不克不及凌驾127。这个形状是为
了增援两个字元长度的字体,比方中笔墨。
vargraphic(n)
可变长度且其最年夜长度为n的双字元字串,n不克不及凌驾2000。
date
包括了年份、月份、日期。
time
包括了小时、分钟、秒。
timestamp
包括了年、月、日、时、分、秒、千分之一秒。

3、材料操纵DML(DataManipulationLanguage)
材料界说好之後接上去的就是材料的操纵。材料的操纵不过乎增添材料(insert)、查询材料(query)、变动材料(update)、删除材料(delete)四种形式,以下分别先容他们的语法:

1、增添材料:
INSERTINTOtable_name(column1,column2,...)
VALUES(value1,value2,...)
申明:
1.若没有指定column体系则会按表格内的栏位按次填进材料。
2.栏位的材料形状和所填进的材料必需符合。
3.table_name也能够是景不雅view_name。

INSERTINTOtable_name(column1,column2,...)
SELECTcolumnx,columny,...FROManother_table
申明:也能够经由一个子查询(subquery)把其余表格的材料填进。

2、查询材料:
基础查询
SELECTcolumn1,columns2,...
FROMtable_name
申明:把table_name的特定栏位材料全体列出来
SELECT*
FROMtable_name
WHEREcolumn1=xxx
[ANDcolumn2>yyy][ORcolumn3zzz]
申明:
1.*暗示全体的栏位都列出来。
2.WHERE之後是接前提式,把切合前提的材料列出来。

SELECTcolumn1,column2
FROMtable_name
ORDERBYcolumn2[DESC]
申明:ORDERBY是指定以某个栏位做排序,[DESC]是指从年夜到小分列,若没有指明,则是从小到年夜
分列

组合查询
组合查询是指所查询得材料来历其实不只要单一的表格,而是团结一个以上的
表格才干够失掉了局的。
SELECT*
FROMtable1,table2
WHEREtable1.colum1=table2.column1
申明:
1.查询两个表格中个中column1值不异的材料。
2.固然两个表格互相对照的栏位,其材料形状必需不异。
3.一个庞大的查询其动用到的表格大概会良多个。

整合性的查询:
SELECTCOUNT(*)
FROMtable_name
WHEREcolumn_name=xxx
申明:
查询切合前提的材料共有几笔。
SELECTSUM(column1)
FROMtable_name
申明:
1.盘算出总和,所选的栏位必需是可数的数字形状。
2.除此之外另有AVG()是盘算均匀、MAX()、MIN()盘算最年夜最小值的整合性查询。
SELECTcolumn1,AVG(column2)
FROMtable_name
GROUPBYcolumn1
HAVINGAVG(column2)>xxx
申明:
1.GROUPBY:以column1为一组盘算column2的均匀值必需和AVG、SUM等整合性查询的关头字
一同利用。
2.HAVING:必需和GROUPBY一同利用作为整合性的限定。

复合性的查询
SELECT*
FROMtable_name1
WHEREEXISTS(
SELECT*
FROMtable_name2
WHEREconditions)
申明:
1.WHERE的conditions能够是别的一个的query。
2.EXISTS在此是指存在与否。
SELECT*
FROMtable_name1
WHEREcolumn1IN(
SELECTcolumn1
FROMtable_name2
WHEREconditions)
申明: 
1.IN後面接的是一个汇合,暗示column1存在汇合内里。
2.SELECT出来的材料形状必需切合column1。

其他查询
SELECT*
FROMtable_name1
WHEREcolumn1LIKEx%
申明:LIKE必需和後面的x%相照应暗示以x为开首的字串。
SELECT*
FROMtable_name1
WHEREcolumn1IN(xxx,yyy,..)
申明:IN後面接的是一个汇合,暗示column1存在汇合内里。
SELECT*
FROMtable_name1
WHEREcolumn1BETWEENxxANDyy
申明:BETWEEN暗示column1的值介於xx和yy之间。

3、变动材料:
UPDATEtable_name
SETcolumn1=xxx
WHEREconditoins
申明:
1.变动某个栏位设定其值为xxx。
2.conditions是所要切合的前提、若没有WHERE则全部table的谁人栏位城市全体被变动。

4、删除材料:
DELETEFROMtable_name
WHEREconditions
申明:删除切合前提的材料。

申明:关于WHERE前提前面假如包括有日期的对照,分歧数据库有分歧的表达式。详细以下:
(1)假如是ACCESS数据库,则为:WHEREmydate>#2000-01-01#</p>缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。
第二个灵魂 该用户已被删除
沙发
发表于 2015-1-20 07:23:56 | 只看该作者
ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。
乐观 该用户已被删除
板凳
发表于 2015-1-27 19:26:32 | 只看该作者
Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write
深爱那片海 该用户已被删除
地板
发表于 2015-1-28 13:28:31 来自手机 | 只看该作者
我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标.
柔情似水 该用户已被删除
5#
发表于 2015-2-12 07:27:38 | 只看该作者
代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
活着的死人 该用户已被删除
6#
发表于 2015-3-2 23:57:21 | 只看该作者
以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。
若相依 该用户已被删除
7#
发表于 2015-3-11 07:43:49 | 只看该作者
学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。
再现理想 该用户已被删除
8#
发表于 2015-3-17 23:10:15 | 只看该作者
ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。
变相怪杰 该用户已被删除
9#
发表于 2015-3-25 06:41:37 | 只看该作者
我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-14 05:40

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表