计算机, 程序设计
SQL查询命令
SQL - 最常见的编程语言来创建和管理数据库,以及为各种与数据本身的行动之一。
实践表明,这是很容易使用,使得大部分的英语语言的标准词汇。 像任何其他的编程语言中,SQL有它自己的逻辑和语法,一套供他们使用的基本命令和规则。
SQL命令的分类
所有标准的SQL命令可以根据自己的目的地予以考虑。 至于分类vneglasnoy的基础上可以采取这样的集作为:
查询命令。
球队内置程序和功能。
触发器和系统表命令。
组合设置日期和字符串变量工作。
命令与数据和表格的工作。
这种分类是无止境的,但基本的SQL语言命令集的编译,因为这些类型的精确。
考虑到语言的分类,更何况,这是普遍的,它的使用范围得到证明。 这种编程语言及其变体利用不仅在标准的环境,而且在其他程序中,其中,这种或那种方式,你都习惯了。
使用SQL的范围可以从办公软件的角度来看,即MicrosoftAccess查看。 这种语言,或者更确切地说,它的品种 - MySQL,你可以管理网络数据库。 基于其在查询的SQL命令,甚至使用Oracle开发环境。
在MicrosoftAccess使用SQL
其中最常见的用途语言数据库编程软件包被认为是的MicrosoftOffice。 该软件的研究提供了计算机科学的学校课程,并在高二时被认为是 一个数据库管理系统 MicrosoftAccess。
它是学生结识语言开发的应用程序的研究 数据库 ,并得到所有它包括一个基本的了解。 SQL访问团队相当原始的,当然,如果我们考虑他们以专业的方式。 运行这样的命令很简单,他们适应在代码编辑器。
考虑一个具体的例子:
SELECT Pe_SurName
从弗森
WHERE Pe_Name = '玛丽';
根据命令语法,你可以理解它返回的人的用户名,在这种情况下,一个叫玛丽的女子,这是存储在联系人数据库表。
尽管在Access中使用SQL是有限的,有时这种简单的查询可以大大简化的分配任务的落实。
使用的是Oracle SQL语句
甲骨文 - 它可能是唯一的Microsoft SQL Server的一个强有力的竞争对手。 这是该开发环境和管理 数据库 是不断导致的软件公司微软产品功能的竞争中提高-是进步的动力。 尽管不断较劲,SQL甲骨文队反复SQL。 应当指出的是,虽然甲骨文和被认为是SQL的几乎完整副本,该系统的逻辑和语言通常被认为是更容易。
使用一组特定命令的Oracle系统是没有这样一个复杂的结构。 如果我们考虑数据库开发环境的数据功能,Oracle没有嵌套查询的复杂结构。
这种差异让许多次,以加快与数据的工作,但是,与此相反,导致使用效率低的内存,在一些个别情况下。 甲骨文结构在很大程度上建立在临时表和它们的用途。 举个例子:在系统中的SQL命令是基于SQL语言本身的标准类比,虽然没有显著从中有所不同。
SELECTCONCAT(CONCAT(CONCAT( '雇员',SNAME),CONCAT(SUBSTR(FNAME,0,1),SUBSTR(otch,0,1))),CONCAT( 'prinyatnarabotu',acceptdate))FROM雇员WHERE acceptdate> TO_DATE ('01 .01.80 '' DD.MM.YYYY“);
此查询将返回有关员工,都采用的一定时间内谁的数据。 尽管查询结构是不同 的Microsoft SQL Server, SQL的执行这些指令系统是相似的,除了细微的细节。
在互联网上使用SQL
随着万维网的出现,即互联网,SQL语言是扩大了使用范围。 众所周知,网络存储大量的信息,但它不是混乱,并根据一定的标准对网站和服务器发布。
对于存储在互联网上的信息,以及在其他地方,负责直接向数据库和网站都控制系统。 通常情况下,网站和代码在不同的编程语言是有组织的,但数据库是基于类型的SQL,它是数据库创建的语言,在MySQL的Web界面为导向。
语法和基本API集,语言完全复制所有熟悉SQL,与他的一些补充,这给他不像微软TSQL服务器的命令。
SQL命令完全相似,不仅语法而且一组标准的虚词。 唯一的区别是在呼叫请求和结构。 例如,考虑创建一个新表的请求,她是第一次他们在计算机上的学校教孩子:
$链接= mysqli_connect( '本地主机', “根”, '', '测试');
如果(!$链接)死亡( “错误”);
$查询=“创建表的用户(
登录VARCHAR(20)
密码VARCHAR(20)
“);
如果(mysqli_query($连接,$查询))回声 “表创建。”;
elseecho“表尚未建立:” .mysqli_error();
mysqli_close($链接);
作为这种请求的结果,你可以得到一个新表“用户”,其中将有两个字段:用户名和密码。
语法网络下的改变,而是基于MicrosoftSQLServer队。
建立查询MicrosoftSQLServer
一组特定的数据表中的样品为SQL的主要任务之一。 对于这样的操作,SQL提供的选择命令。 这就是它在下面讨论。
条款团队建设是非常简单的,而在SQL非常SELECT命令构造如下。 例如,存在一种可供员工谁,例如,一个人的名字中的数据表。 我们提出的是,表中,您需要选择有关雇员的数据,出生日期该问题 - 从一月的第一个到第一当年三月的间隔,包容性。 对于这样的样本是必要的,以执行SQL命令,这不仅是一个标准的设计,而且还选择条件:
选择从人*
其中P_BerthDay> = '01 / 01/2016 '和P_BerthDay <= '03 / 01/2016'
执行该命令将返回所有数据有关的员工,他的生日是在此期间,已设定由你。 有时你可能会被质疑只显示姓,名和雇员的父。 为此,请求建立一个稍微不同的方式,例如,如下所示:
SelectP_Name - 名
P_SurName - 姓
P_Patronimic - 父
从Person
其中P_BerthDay> = '01 / 01/2016 '和P_BerthDay <= '03 / 01/2016'
然而,这仅仅是一个什么选择。 他是在本质上并没有什么影响,但只是提供信息。 但是,如果你决定要认真对待SQL语言,你将不得不学习如何修改数据库,因为他们的建筑,没有它是根本不可能的。 如何做到这一点,将在下面讨论。
基本的SQL命令来更改数据
语法是建立不仅对查询,而且对数据操作。 基本上,任务数据库程序员编写的样品和报告的脚本,但有时你需要更改表。 SQL命令列表这样的动作很小,主要由三个队:
插入(反式。插入)。
更新(反式。更新)。
删除(反式。删除)。
这些团队的目的是容易确定,这是不够的,只是翻译他们的名字。 这些命令易于使用,没有计划的结构复杂,但值得一提的是,他们中的一些,如果使用不当,会造成无法弥补的伤害到数据库。
作为一项规则,使用这些命令MSSQL之前,你需要考虑,并考虑到其实施的所有可能的后果。
学习这些命令后,你就可以完全启动与数据库的表,从而修改并作出了一些新的变数或删除旧的。
插入队
将数据插入到使用最安全团队的表格 - 插入。 正确插入数据总是可以删除并重新添加到数据库中。
插入命令插入新的数据到表中,并允许您添加一套完整的,并选择性。
例如,考虑在先前描述的表人插入的命令。 为了使SQL命令必须在数据表中,它允许插入所有数据表或选择性地填充它运行。
INSERT INTO人
选择“格里戈里耶夫”“维塔利”,“彼得罗维奇”,“1988年1月1日”
MS SQL SERVER命令这样一个计划自动填充表中的与所述指定的数据的所有单元格。 在有些情况下的员工没有中间名首字母,例如情况下,他来到了从德国的交换工作。 在这种情况下,运行以下命令插入数据,这将带来的表只有什么是必要的。 该命令的语法如下:
Insertintoperson(P_Name,P_SurName,P_BerthDay)
VALUES( '大卫', '钩', '1986年2月11日')
该团队仅填充指定的单元格,和所有其他人将是空的。
命令来改变数据
要改变数据的整体利益,而一些小区使用更新SQL命令。 执行此命令只需要一定的条件,即,恰恰表明有必要进行更改的数量的哪一行。
更新SQL命令的语法很简单。 为了确保正确使用,可以指定一列和记录数据应该有所改变。 接下来,创建一个脚本并执行它。 考虑一个例子。 我们需要改变戴维·胡克,这是在5号包含在雇员表的出生日期。
更新人
设置P_BerthDay = '02 /1986分之10“,其中P_ID = 5
条件(脚本)不会改变的所有表记录的出生日期,并且只更新必要的。
这是这个团队的程序员最经常使用的,因为它允许您更改表中的数据,而不会造成整个信息显著损害。
命令使用内置的过程和函数
随着语言SQL的帮助下,你不仅可以建立查询,同时也为处理数据创建内置机制。 通常,当你想在前面的书面查询样品的身体利用有次。
从逻辑上看,那么你需要复制并粘贴在合适的地方示范文本,但你可以做一个简单的解决方案。 考虑一个例子,其中的工作界面显示的按钮以打印报告,例如在Excel中。 将根据需要进行此操作。 对于这样的目的,是内置的存储过程。 命令 SQL查询, 在这种情况下,是在这个过程中,并通过SQLEXEC队造成的。
让我们假设与先前描述的Person表员工的出生日期撤出的程序创建的。 在这种情况下,有没有必要写整个查询。 以获得必要的信息足以执行该命令执行[过程名]并传递必要的参数进行采样。 作为一个例子,我们可以考虑为创作过程的这样一种性质的机制:
CREATEPROCEDUREPrintPerson
@DB SMALLDATETIME
@DE SMALLDATETIME
AS
SET NOCOUNT ON;
从个人SELECT *
从HumanResources.vEmployeeDepartmentHistory
WHERE P_BerthDay> = @DB和P_BerthDay <= @DE
ANDEndDateISNULL;
GO
此过程返回有关员工的生日会在一个给定的时间段内的所有信息。
组织数据的完整性。 触发器
一些MS SQL命令,一个甚至可以说,该设计不仅可以整理数据操作,也能保证其完整性。 对于这样的目的,在语言设计的系统设计,它创建了一个程序员自己。 这些是所谓的触发器,其可提供数据的控制。
在这种情况下,使用标准的SQL查询命令测试条件的组织。 在触发器,可以创造很多的,将控制不仅获得信息,而且还禁止拆卸,改装,或插入数据的数据条件和限制。
可在触发器中使用SQL命令的种类,并不限于此。 请看下面的例子。
如果我们描述了创建触发器的机制,那么类型的SQL命令都是一样的创建过程时。 算法本身将在下面描述。
第一步是描述服务命令创建触发器:
CREATE TRIGGER Person_Insert
接下来指向一个表:
ONPerson
指示用于该数据的操作(在这种情况下,数据改变操作)。
下一步是指定表和变量:
声明@ID int类型。 @date SMALLDATETIME @nID INT。 @nDatesmalldatetime
进一步声明光标选择数据表取出和插入数据:
从插入的声明光标C1为选择P_ID,P_BerthDay
声明光标C2的选择P_ID,P_BerthDay已删除
定义数据选择步骤。 一旦进入体内游标规定条件和反应将其:
如果@ID = @nID和@nDate = '01 / 01/2016'
开始
sMasseges'运行操作是不可能的。 日期是不恰当的“
结束
值得一提的是,触发不仅能够创造,而且还关闭了一段时间。 这样的操作只能容纳一个程序员在执行SQL Server命令:
altertablePERSONdisabletriggerall - 禁用为表创建的所有触发器,因此,altertablePERSONenabletriggerall - 列入。
这些基本的SQL命令最常用的,但他们的组合可以是非常不同的。 SQL - 一个非常灵活的编程语言,使开发人员最大的可能性。
结论
从上面我们只能得出结论:SQL语言技巧,谁想要在编程认真搞一绝。 它坐落在互联网和国内数据库执行的所有操作的心脏。 这就是为什么未来程序员必须知道的语言的命令的数量,因为只有他们就可以了,可以这么说,与计算机进行通信。
当然,也有不足之处,如在这个世界上的一切,但他们是如此之小,案情简单的前苍白。 在所有的SQL编程语言几乎是同类产品中唯一的一个,因为它是普遍的,在编写脚本的知识和代码是几乎所有网站的基础。
无条件的SQL的主要优点可以被认为是简单的,因为毕竟是包含在学校课程中的他。 即使是一个新手程序员也可以处理它,而不是精通语言。
Similar articles
Trending Now