仓酷云

标题: MSSQL教程之SQL循规蹈矩(1)先容SQL [打印本页]

作者: 若相依    时间: 2015-1-16 22:20
标题: MSSQL教程之SQL循规蹈矩(1)先容SQL
InnoDB事务型数据库的首选引擎,支持ACID事务,支持行级锁定先容SQL
  SQL(StructuredQueryLanguage,布局查询言语)是一个功效壮大的数据库言语。SQL一般利用于数据库的通信。ANSI(美国国度尺度学会)宣称,SQL是干系数据库办理体系的尺度言语。SQL语句一般用于完成一些数据库的操纵义务,好比在数据库中更新数据,大概从数据库中检索数据。利用SQL的罕见干系数据库办理体系有:Oracle、Sybase、MicrosoftSQLServer、Access、Ingres等等。固然尽年夜多半的数据库体系利用SQL,可是它们一样有它们自主别的的专有扩大功效用于它们的体系。可是,尺度的SQL命令,好比"Select"、"Insert"、"Update"、"Delete"、"Create"和"Drop"经常被用于完成尽年夜多半数据库的操纵。
  可是,不象别的的言语,如C、Pascal等,SQL没有轮回布局(好比if-then-else、do-while)和函数界说等等的功效。并且SQL只要一个数据范例的流动设置,换句话说,你不克不及在利用别的编程言语的时分创立你本人的数据范例。
SQL功效壮大,可是归纳综合起来,它能够分红以下几组:
DML(DataManipulationLanguage,数据操纵言语):用于检索大概修正数据;
DDL(DataDefinitionLanguage,数据界说言语):用于界说数据的布局,好比创立、修正大概删除数据库工具;
DCL(DataControlLanguage,数据把持言语):用于界说数据库用户的权限。
DML组能够细分为以下的几个语句:
SELECT:用于检索数据;
INSERT:用于增添数据到数据库;
UPDATE:用于从数据库中修正现存的数据
DELETE:用于从数据库中删除数据。
DDL语句能够用于创立用户和重修数据库工具。上面是DDL命令:
CREATETABLE
ALTERTABLE
DROPTABLE
CREATEINDEX
DROPINDEX
DCL命令用于创立干系用户会见和受权的工具。上面是几个DCL命令:
ALTERPASSWORD
GRANT
REVOKE
CREATESYNONYM
为了让你对SQL有一个直不雅的熟悉,上面先给出一个复杂SQL语句的例子:
我们利用SQL语句来从Employees中检索DepartmentID为CS的姓名:
SELECTEmployees.Name
FROMEmployees
WHEREEmployees.DeptID="CS"
大概你如今一入手下手不太了解这些语句,大概你会一头雾水,没关系的,经由过程本教程的进修后,你会发明这段语句是何等的一般。为了不让你狐疑,上面我也举行一番注释:
先对FROM子句吧,语句中的FROMEmployees意义是从Employees表中检索数据。
而语句WHEREEmployees.DeptID="CS"意义是检索Employees的DeptID列为”CS”的行,如许SQL语句检索的了局将是DeptID为CS的列的一切数据,好比:
EmpID


Name


Dept



123


Purple


CS


124


Zsc


CS


最初,我们来注释一个SELECT子句,它指定了从Name列检索来的一切数据,好比

Name


Purple


Zsc


好吧,入手下手我们下一节的教程-------表的基础常识。
在Windows中MySQL以服务形式存在,在使用前应确保此服务已经启动,未启动可用netstartmysql命令启动。而Linux中启动时可用“/etc/rc.d/init.d/mysqldstart"命令,注意启动者应具有管理员权限。
作者: 第二个灵魂    时间: 2015-1-19 09:11
对一张百万级别的表建游标,同时又没有什么过滤条件,取得游标效率是如果直接SQL查询百万条数据;如果再对每条记录做处理,耗时将更长。
作者: 山那边是海    时间: 2015-1-26 21:58
而SQLServer如果能像Oracle一样可以为登陆分配如:5%的cpu,10%的内存。就可以解决这个漏洞。
作者: 再现理想    时间: 2015-2-4 21:50
数据库物理框架没有变动undo和redo都放在数据库得transaction中,个人感觉是个败笔。如果说我们在设计数据库的时候考虑分多个数据库,可能能在一定程度上避免I/O效率问题。
作者: 老尸    时间: 2015-2-10 19:51
对一张百万级别的表建游标,同时又没有什么过滤条件,取得游标效率是如果直接SQL查询百万条数据;如果再对每条记录做处理,耗时将更长。
作者: 仓酷云    时间: 2015-3-1 15:10
如果,某一版本可以提供强大的并发响应,但是没有Oracle的相应版本稳定,或者价格较贵,那么,它就是不适合的。
作者: 活着的死人    时间: 2015-3-10 19:46
SQLServer的异构移植功能个人感觉最好了。(如果对比过SQLServer的链接服务器和Oracle的透明网关的朋友会发现SQLServer的sp_addlinkedserver(openquery)异构数据库系列比Oracle真是强太多了。)
作者: 飘飘悠悠    时间: 2015-3-17 09:26
Mirror可以算是SQLServer的Dataguard了。但是能不能被大伙用起来就不知道了。
作者: 简单生活    时间: 2015-3-24 06:06
这是一个不错的新特性。虽然索引的附加字段没有索引键值效率高,但是相对映射到数据表中效率还是提高了很多。我做过试验,在我的实验环境中会比映射到表中提高30%左右的效率。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2