小女巫 发表于 2015-1-16 22:40:30

MSSQL编程:PL/SQL进修条记(一)

在需要把许多新记录插入某个数据表的场合,DELAY_KEY_WRITE选项的作用将非常明显。另外,索引还会在硬盘上占用相当大的空间。因此应该只为最经常查询和最经常排序的数据列建立索引。注意,如果某个数据列包含许多重复的内容,为它建立索引就没有太大的实际效果。条记
1、PL/SQL中的数据范例,简列以下:



Number[(m,n)]独一的数值范例。m-精度,n-小数位数。INTEGER、REAL是NUMBER的同义词界说的。



VARCHAR2(maxsize)独一的字符串范例。CHAR、VACHAR是VARCHAR2的同义词界说的。NVARCHAR2与VARCHAR2的体现情势一样,只是用于国际字符集数据范例。



DATE日期/工夫范例。



BOOLEAN布尔型。只要TRUE、FALSE两个值。



2、PL/SQL的实行体



DECLARE



--变量声明



BEGIN



--运转语句



EXCEPTION



--非常处置



END;



3、PL/SQL把持布局



1、IF-THEN-ELSIF布局



IF前提THEN



ELSIF前提THEN



ENDIF;



2、CASE布局



CASE



WHEN前提THEN

WHEN前提THEN



...



ELSE一切前提不满意时实行



END;



4、轮回布局(见教例)



DECLAREiINTEGER;BEGIN



DBMS_OUTPUT.PUT_LINE(LOOPOUTPUT);i:=0;LOOPEXITWHENi>=10;DBMS_OUTPUT.PUT_LINE(i);i:=i+1;ENDLOOP;DBMS_OUTPUT.PUT_LINE(WHILEOUTPUT);i:=0;WHILEi<10LOOPDBMS_OUTPUT.PUT_LINE(i);i:=i+1;ENDLOOP;DBMS_OUTPUT.PUT_LINE(FOROUTPUT);FORiIN1..10LOOPDBMS_OUTPUT.PUT_LINE(i);ENDLOOP;



EXCEPTIONWHENOTHERSTHENDBMS_OUTPUT.PUT_LINE(EXCEPTION);RAISE;END;/






InnoDB数据表的索引,与InnoDB数据表相比,在InnoDB数据表上,索引对InnoDB数据表的重要性要大得多。在InnoDB数据表上,索引不仅会在搜索数据记录时发挥作用,还是数据行级锁定机制的苊、基础。

蒙在股里 发表于 2015-1-19 21:10:27

现在是在考虑:如果写到服务器端,我一下搞他个10个存储过程导过去,那久之服务器不就成垃圾箱了吗?即便优化了我的中间层.

乐观 发表于 2015-1-28 10:45:21

varchar(max)\\\\nvarchar(max)类型的引入大大的提高了编程的效率,可以使用字符串函数对CLOB类型进行操作,这是一个亮点。

再现理想 发表于 2015-2-5 19:20:04

这就引发了对varchar和char效率讨论的老问题。到底如何分配varchar的数据,是否会出现大规模的碎片?

爱飞 发表于 2015-2-13 06:23:17

备份方面可能还是一个老大难的问题。不能单独备份几个表总是感觉不爽。灵活备份的问题不知道什么时候才能解决。

冷月葬花魂 发表于 2015-3-3 17:00:59

只能告诉你,学好数据库语言和原理,多见识几种数据库软件,比一棵树上吊死要好。

柔情似水 发表于 2015-3-11 12:12:43

总感觉自己还是不会SQL

飘飘悠悠 发表于 2015-3-18 10:40:21

其中最有名的应该是row_number了。这个终于解决了用临时表生成序列号的历史,而且SQLServer2005的row_number比Oracle的更先进。因为它把Orderby集成到了一起,不用像Oracle那样还要用子查询进行封装。

海妖 发表于 2015-3-25 17:36:11

语句级快照和事务级快照终于为SQLServer的并发性能带来了突破。个人感觉语句级快照大家应该应用。事务级快照,如果是高并发系统还要慎用。如果一个用户总是被提示修改不成功要求重试时,会杀人的!
页: [1]
查看完整版本: MSSQL编程:PL/SQL进修条记(一)