动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Oracle教程 ]的信息

本月文章推荐
.Oracle中三种上载文件技术(三).
.如何在硬碟建置Linux系统之启动虚.
.Oracle常见错误代码的分析与解决.
.研究生管理信息系统的开发流程一.
.Oracle的TNS-12502 错误原因及解.
.Windows下常见Oracle服务介绍.
.带参数动态执行sql语句:Execute .
.一次standby open read only 故障.
.oracle中用Create Table创建表时.
.Oracle 8i中字符集乱码问题.
.Oracle数据库Decode()函数的使用.
.如何学习Oracle.
.关于裸设备及Oracle的20个实用问.
.数据库正规化和设计技巧的一些方.
.Oracle 9i 的增强型内存使用率查.
.ado.net执行oracle 存储过程.
.通过分析SQL语句的执行计划优化S.
.如何设置一个邮件地址的控制者.
.轻松掌握oracle数据库开发中序列.
.内置XML能成为oracle的救世主吗?.

结构化查询语言(SQL)原理

发表日期:2008-2-9 |



  第一部分:介绍
  
  结构化查询语言(SQL)是现代数据库体系结构的基本构成部分之一。SQL定义了在大多数平台上建立和操作关系数据库的方法。乍看这种语言很可怕,很复杂,但它真的不是那么糟。现在你将会知道它的原理,你会向往它,用它来操作数据库的。
  
  这周,我们SQL系列的第一篇文章会介绍SQL的基本概念,我们会快速的看看数据库的创建和修改命令。在整篇文章,请记住我们的意图:我们会了解SQL的大概――不是把握那些单个的命令。我们会提供一些例子来说明这个意图和解释它的原理,但是读完这篇文章后假如你还不会写自己的SQL命令请不要灰心。我们将在以后几个星期会具体介绍那些主要命令的。
  
  随便说说,SQL的正确发音在数据库交流中是有争论的。对于SQL标准,美国标准协会认为官方发音是“es queue el.”。然而,许多数据库专家用行话“sequel”。这看你自己的选择。
  
  SQL有好几种版本。Oracle 数据库定义它的PL/SQL。Microsoft SQL Server 定义它的Transact-SQL。然而,所有这些版本都是基于工业标准的ANSI SQL。在该指南,我们坚持用适用于任何现代关系数据库系统的基于ANSI标准的SQL命令
  
  SQL命令可以分成两大子系统语言。数据定义语言(DDL)包含那写用用于建立和删除数据库以及数据库实体的命令。用DDL语言定义了数据库结构后,数据库治理者和用户就可以利用数据操作语言来插入、得到和修改数据内容。在本文章的下两个部分,我们将更具体地探讨DDL和DML。在以后的文章中我们将会对非凡的SQL命令做更深入的探讨。
  
  现在让我们看看数据定义语言。
  
  
  
  第二部分:数据定义语言
  
  数据定义语言(DDL)是用来定义和删除数据库以及数据库实体的。这些命令主要是被数据库治理者用来建立和删除数据库实体的。让我们来看看四种基本DDL命令的结构和用法。
  
  CREATE
  
  在计算机上安装一个数据库治理系统以便你建立和治理许多独立的数据库。比如,你要维护一个销售部门的消费者库和人力资源部的职员数据库。用CREATE命令就能在你的平台上建立这些数据库。例如下面的命令:
  
  CREATE DATABASE employees
  
  在你的数据库治理系统上建立一个叫“employees”的空库。建立数据库后,下一步你就建一些包含这些数据的表。(假如这个没有意义,你可以看看关于Microsoft Access原理的文章来得到数据库和表的总的看法)。CREATE的另一个参数可用于这个目的。看:
  
  CREATE TABLE personal_info
  
  (first_name char(20) not null, last_name char(20) not null, employee_id int not null)
  
  在当前的数据库中建一个叫“personal_info”的表。在我们的例子中,表包含三个属性:first_name,last_name 和employee_id。不要担心此命令所包含的其它信息――我们将在以后的文章中有所介绍。
  
  USE
  
  USE命令让你能在你的数据库治理系统中指定要操作的数据库。比如,我们当前使用的是sales数据库,而我们要发出一些操作employees数据库的命令,我们就的先执行以下的命令:
  
  USE employees
  
  在执行命令和操作数据库前,你要有意识地确定你要操作的数据库,这是很重要的。
  
  ALTER
  
  一旦你在数据库中建立了一个表,你也许想要修改它。ALTER命令能让你改变数据库的结构而不用删除它之后在重建。看看下面的命令:
  
  ALTER TABLE personal_info
  
  ADD salary money null
  
  这个例子给personal_info表添加了一列新的属性――employee's salary。“money”指定的格式使职员的薪水用美元和美分的格式存放。最后,为空(NULL)则告诉数据库对任何职员次列可以为空值。
  
  DROP
  
  数据定义语言的最后一个命令,DROP,答应我们从数据库治理系统中移去整个数据库实体。比如,假如你想永远的移去你建立了的personal_info表,我们就的用下面的命令:
  
  DROP TABLE personal_info
  
  同样的,下面的命令将用来移去整个employee数据库:
  
  DROP DATABASE employees
  
  请小心地使用这个命令!记住DROP命令会删除整个的数据库。假如你想删掉某个记录,用数据治理语言的DELETE命令。
  
  那只是数据定义语言的一小部分。在本文的下一部分,我们将看看数据操作语言怎样被用来操作数据库中的信息内容。请继续!
  
  
  
  第三部分:数据操作语言
  
  数据操作语言(DML)用来得到、插入和修改数据库信息的。用户在常规的数据库操作中使用这些命令。让我们来大概地了解一下基本的DML命令:
  
  INSERT
  
  在SQL中INSERT命令被用来在表中添加一些记录。回到上面的personal_info例子,假设人力资源部要往库中添加一个新的employee记录。他们会用到类似于下面的命令:
  
  INSERT INTO personal_info
  
  values('bart','simpson',12345,$45000)
  
  请注重,在记录中指定了四个值。
这些对应表中定义的属性:first_name,last_name,employee_id,and salary。
  
  SELECT
  
  SELECT命令是SQL最常用的命令。它答应数据库使用者从一个数据库中得到他们想要的信息。让我们看点例子,继续用employees库中的personal_info表。
  
  下面的命令得到personal_info表中的所有信息。注重,星号在SQL中是通配符。下面的意思是:“从personal_info表中取所有信息”。
  
  SELECT *
  
  FROM personal_info
  
  作为选择,用户想限定从数据库中得到的数据列。比如,人力资源部想列出公司中所有职员的名字。下面的SQL命令就能得到这些信息:
  
  SELECT last_name
  
  FROM personal_info
  
  最后,WHERE子句用来限定得到的记录,使其合乎要求。CEO也许会想得到所有高薪的职员的信息。下面的命令将从personal_info表得到薪水高于50,000美元的记录:
  
  SELECT *
  
  FROM personal_info
  
  WHERE salary > $50000
  
  UPDATE
  
  UPDATE命令用来更新表的内容,无论是成批的还是单个的记录。每年公司给每个职员加30%的生活津贴。下面的命令用来快速地使所有的职员的记录实现这个目的:
  
  UPDATE personal_info
  
  SET salary = salary * 1.03
  
  另一方面,我们一个新的职员art Simpson超额完成工作。治理者想嘉奖他5,000美元。用WHERE子句就能单个地给Bart添加薪水:
  
  UPDATE personal_info
  
  SET salary = salary + $5000
  
  WHERE employee_id = 12345
  
  DELETE
  
  最后,我们来看看DELETE命令。你会发现它的语法类似于其它的DML命令。不幸的是,最新的公司收入报告比预想的还差,可怜的Bart被解雇了。用带WHERE的DELETE命令从personal_info表中删去他的记录。
  
  DELETE FROM personal_info
  
  WHERE employee_id = 12345
上一篇:查看各种对象的SQL 人气:417
下一篇:PL/SQL的异常 人气:453
浏览全部Oracle教程的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-9-7 站长中国企业(公司)网站系统 v4.2
2008-9-7 PBDigg v2.0 Build 20080821
2008-9-7 玩玩小游戏FLASH系统 v2.1
2008-9-7 522QQ在线电视直播程序 v1.1
2008-9-7 Pcook cms 文章管理系统 (老Y CM
2008-9-7 仿代码小说小偷系统 v1.0
2008-9-7 百度一搜集成搜索管理系统
2008-9-7 小贤统计器 v1.0
2008-9-7 UCenter Home-中秋搏饼插件 v1.2
2008-9-7 iBlacklist通话黑名单汉化破解补
2008-9-7 EndlessWalls无尽壁纸 v1.0.4破解
2008-9-7 Dynolicious车载测量仪v1.1破解版
2008-9-7 iVoodoo巫毒娃娃1.0.1破解版
2008-9-7 iWallpape精品墙纸1.2破解版
2008-9-7 iChillout自然音效工具1.1破解版
2008-9-7 Todo计划提醒1.2破解版
2008-9-7 allRadio电台集合1.01破解版
2008-9-7 My Money个人理财1.0破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | Html转换js | js/vbs加密 | md5加密 | 进制转换
实用工具:汉字翻译拼音 | 符号对照表 | 个税计算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号