DM数据库管理模式对象空间、表、索引、触发器、视图、序列列、同义词等。
一、管理模式对象的空间
模式对象的空间管理关系到空间的有效使用和数据的合理分布。
1、设置存储参数
对于普通表和索引,DM8提供了以下的存储参数:
初始簇数目INITIAL:指建立表时分配的簇个数,必须为整数,最小值为1,最大值为256,缺省为1;
下次分配簇数目NEXT:指当表空间不够时,从数据文件中分配的簇个数,必须为整数,最小值为1,最大值为256,缺省为1;
最小保留簇数目MINEXTENTS:当删除表中的记录后,如果表使用的簇数目小于这个值,就不再释放表空间,必须为整数,最小值为1,最大值为256,缺省为1;
填充比例FILLFACTOR:指定插入数据时数据页的充满程度,取值范围从 0 到 100。默认值为0,等价于100,表示全满填充,未充满的空间可供页内的数据更新时使用。插入数据时填充比例的值越低,可由新数据使用的空间就越多;更新数据时填充比例的值越大,更新导致出现的页分裂的几率越大;
表空间名:在指定的表空间上建表或索引,表空间必须已存在,默认为用户缺省的表空间。
如表PERSON建立在表空间TS_PERSON中,初始簇大小为5,最小保留簇数目为5,下次分配簇数目为2,填充比例为85。
CREATE TABLE PERSON.PERSON ( PERSONID INT IDENTITY(1,1) CLUSTER PRIMARY KEY, SEX CHAR(1) NOT NULL, NAME VARCHAR(50) NOT NULL, EMAIL VARCHAR(50), PHONE VARCHAR(25)) STORAGE( INITIAL 5, MINEXTENTS 5, NEXT 2, ON TS_PERSON, FILLFACTOR 85); |
也可以在分区表上指定某个分区的存储参数,如下面的建表语句指定了PAR2分区存储在TS_PAR2表空间上。
CREATE TABLE PARTITION_TABLE (C1 INT, C2 INT) PARTITION BY RANGE(C1)(PARTITION PAR1 VALUES LESS THAN(5), PARTITION PAR2 VALUES LESS THAN(100) STORAGE (ON TS_PAR2)); |
堆表
对于堆表可以指定并发分支BRANCH和非并发分支NOBRANCH的数目,其范围是(1=\<BRANCH \<= 64,1\<=NOBRANCH\<=64),堆表最多支持128个链表
。
如下例创建的LIST_TABLE表有并发分支2个,非并发分支4个。
HUGE表
HUGE表是建立在自己特有的HTS表空间上的。建立HUGE表如果不使用默认的表空间,则必须要先创建一个HUGE TABLESPACE,默认HTS表空间为HMAIN。
如建立一个名称HTS_NAME的HTS表空间,表空间路径为为e:\HTSSPACE。示例如下:
CREATE HUGE TABLESPACE HTS_NAME PATH 'e:\HTSSPACE'; |
对于HUGE表可以指定如下参数:
区大小(一个区的数据行数)。 区大小可以通过设置表的存储属性来指定,区的大小必须是2的多少次方,如果不是则向上对齐。取值范围:1024行~1024*1024行。默认值为65536行。
是否记录区统计信息,即在修改时是否做数据的统计。
所属的表空间。创建HUGE表,需要通过存储属性指定其所在的表空间,不指定则存储于默认表空间HMAIN中。HUGE表指定的表空间只能是HTS表空间。
文件大小。创建HUGE表时还可以指定单个文件的大小,通过表的存储属性来指定,取值范围为16M~1024*1024M。不指定则默认为64M。文件大小必须是2的多少次方,如果不是则向上对齐。
日志属性。1)LOG NONE:不做镜像;2)LOG LAST:做部分镜像;3)LOG ALL:全部做镜像。
如下面的建表语句:STUDENT表的区大小为65536行,文件大小为64M,指定所在的表空间为HTS_NAME,做完整镜像,S_comment列指定的区大小为不做统计信息,其它列(默认)都做统计信息。
CREATE HUGE TABLE STUDENT (S_NO INT, S_CLASS VARCHAR, S_COMMENT VARCHAR(79) STORAGE(STAT NONE) )STORAGE(SECTION(65536) , FILESIZE(64), ON HTS_NAME) LOG ALL; |
CREATE TABLE LIST_TABLE(C1 INT) STORAGE(BRANCH (2,4)); |
2、 收回多余的空间
DM8中表和索引对象的所占用的簇要么是全满的状态要么是半满的状态,空闲的簇会被系统自动回收。
1、用户和表上的空间限制
1 .1用户的空间限制
用户占用的空间是其下所有用户表对象占用空间的总和。可以限制用户使用空间的大小,当用户创建表,创建索引,或者插入更新数据超过了指定的空间限制时,会报空间不足的错误。如创建用户TEST_USER时可指定该用户使用的最大磁盘空间为50M。
CREATE USER TEST_USER IDENTIFIED BY TEST_PASSWORD DISKSPACE LIMIT 50; |
对用户的空间限制也可进行更改,如修改用户TEST_USER的磁盘空间限制为无限制。
ALTER USER TEST_USER DISKSPACE UNLIMITED; |
1.2 表对象的空间限制
表对象占用的空间是其上所有索引占用空间的总和。可以限制表对象使用空间的大小,当在表对象上创建索引或者插入更新数据超过了指定的空间限制时,会报空间不足的错误。如创建表TEST时可指定该表对象可使用的最大磁盘空间为500M。
CREATE TABLE TEST (SNO INT, MYINFO VARCHAR) DISKSPACE LIMIT 500; |
对表对象空间的限制也可进行更改,如修改表TEST的磁盘空间限制为50M。
ALTER TABLE TEST MODIFY DISKSPACE LIMIT 50; |
3 、查看模式对象的空间使用
查看用户占用的空间
可以使用系统函数USER_USED_SPACE得到用户占用空间的大小,函数参数为用户名,返回值为占用的页的数目。
SELECT USER_USED_SPACE('TEST_USER'); |
查看表占用的空间
可以使用系统函数TABLE_USED_SPACE得到表对象占用空间的大小,函数参数为模式名和表名,返回值为占用的页的数目。
SELECT TABLE_USED_SPACE('SYSDBA', 'TEST'); |
查看表使用的页数
可以使用系统函数TABLE_USED_PAGES得到表对象实际使用页的数目,函数参数为模式名和表名,返回值为实际使用页的数目。
SELECT TABLE_USED_PAGES('SYSDBA', 'TEST'); |
查看索引占用的空间
可以使用系统函数INDEX_USED_SPACE得到索引占用空间的大小,函数参数为索引ID,返回值为占用的页的数目。
SELECT INDEX_USED_SPACE(33555463); |
查看索引使用的页数
可以使用系统函数INDEX_USED_PAGES得到索引实际使用页的数目,函数参数为索引ID,返回值为实际使用页的数目。
SELECT INDEX_USED_PAGES(33555463); |
二、管理表
以下通过建表、改表、删表、清空表、查看表信息介绍DM管理表的准则。
1、创建表;
如果要在所属模式中创建新表,需要有CREATE TABLE数据库权限;而要在其他用户的模式中创建新表,则需要有CREATE ANY TABLE数据库权限。创建表时,应当为表指定一个表空间,否则,表将在MAIN创建。下面给出一个创建一个简单表的例子。
CREATE TABLE EMPLOYEE ( EMPNO INT PRIMARY KEY, ENAME VARCHAR(15) NOT NULL, JOB VARCHAR(10), MGR INT CONSTRAINT EMP_FKEY REFERENCES EMPLOYEE(EMPNO), HIREDATE DATE DEFAULT (CURDATE), SALARY FLOAT, DEPTNO TINYINT NOT NULL CONSTRAINT DEPT_FKEY REFERENCES DEPT(DEPTNO))STORAGE (INITIAL 50, NEXT 50, MINEXTENTS 10,FILLFACTOR 80,ON USERS); |
在上述CREATE TABLE语句中,在users表空间上建立了employee表,并有几个完整性约束,其中包含定义在不同列上的一个主键和外键。
2、更改表;
想更改的表如果在所属的模式中,用户必须具有ALTER TABLE数据库权限;若在其他模式中,用户必须有ALTER ANY TABLE的数据库权限。
通过更改表,用户可以对数据库中的表作如下修改:
添加或删除列,或修改现有的列的定义(列名、数据类型、长度、默认值)。其中,对于添加列,当设置INI参数ALTER_TABLE_OPT为1时,添加列采用查询插入实现,可能会导致ROWID的改变;ALTER_TABLE_OPT为2时,系统开启快速加列功能,对于没有默认值或者默认值为NULL的新列,系统内部会标记为附加列,能够达到瞬间加列的效果,此时记录ROWID不会改变,若有默认值且默认值不为NULL,则默认值的存储长度不能超过4000字节,此时仍旧采取查询插入实现;ALTER_TABLE_OPT为3时,系统会开启快速加列功能,允许指定新增列的默认值,系统会为该列设置附加列标记,查询表中已存在的数据时,会自动为记录设置追加列默认值,此时记录ROWID不会改变;
添加、修改或删除与表相关的完整性约束;
重命名一个表;
启动或停用与表相关的完整性约束;
启动或停用与表相关的触发器;
修改表的SPACE LIMIT;
增删自增列。
3、删除表;
当一个表不再使用时,可以将其删除。删除表时,将产生以下结果:
表的结构信息从数据字典中删除,表中的数据不可访问;
表上的所有索引和触发器被一起清除;
所有建立在该表上的同义词、视图和存储过程变为无效;
所有分配给表的簇标记为空闲,可被分配给其他的数据库对象。
一般情况下,普通用户只能删除自己模式下的表。若要删除其他模式下的表,则必须具有DROP ANY TABLE数据库权限。
以下语句可删除employee表:
DROP TABLE employee; |
删除不存在的表会报错。若指定IF EXISTS关键字,删除不存在的表,不会报错,如:
DROP TABLE IF EXISTS employee; |
如果要删除的表被其他表引用,即其他表的外键引用了表的任何主键或唯一键,则需要在DROP TABLE 语句中包含CASCADE 选项,如:
DROP TABLE employee CASCADE; |
4、清空表;
有些情况下,当表的数据不再使用时,需要删除表的所有行,即清空该表。DM8支持以下方式来删除表中的所有的行:
1、使用DELETE语句;
使用DELETE清空表,当表有很多行时,会消耗很多系统资源。因为,DELETE操作需要CPU时间,并且会产生大量的REDO日志和UNDO记录。另外,如果表上关联了元组级触发器,每删除一行,就会启动一次触发器。这都需要大量的系统资源。
2、使用DROP和CREATE 语句;
当删除和重新创建表时,所有与之相关联的索引、完整性约束和触发器也被删除。同样,所有针对被删除表的授权也会被删除。
3、使用TRUNCATE语句。
TRUNCATE语句为我们提供了一种快速、有效地删除表所有行的方法。并且TRUNCATE是一个DDL语句,不会产生任何回滚信息。执行TRUNCATE会立即提交,而且不能回滚。如果要清空的表被其他表引用,即其他表的外键引用了表的任何主键或唯一键,并且子表不为空或子表的外键约束未被禁用,则不能TRUNCATE该表。
5、查看表信息。
创建表后,可以通过SP_TABLEDEF系统过程查看表的定义。
CALL SP_TABLEDEF('SYSDBA', 'employee'); |
DM支持INT和BIGINT两种数据类型的自增列,并提供以下函数查看表上自增列的当前值、种子和增量等信息:
IDENT_CURRENT:获得表上自增列的当前值;
IDENT_SEED:获得表上自增列的种子信息;
IDENT_INCR:获得表上自增列的增量信息。
CREATE TABLE IDENT_TABLE (C1 INT IDENTITY(100, 100),C2 INT ); SELECT IDENT_CURRENT('SYSDBA.IDENT_TABLE'); SELECT IDENT_SEED('SYSDBA.IDENT_TABLE'); SELECT IDENT_INCR('SYSDBA.IDENT_TABLE'); |
查看表的空间使用情况
DM使用段、簇和页实现数据的物理组织。DM支持查看表的空间使用情况,包括:
TABLE_USED_SPACE:已分配给表的页面数;
TABLE_USED_PAGES:表已使用的页面数。
CREATE TABLE SPACE_TABLE (C1 INT,C2 INT ); SELECT TABLE_USED_SPACE('SYSDBA','SPACE_TABLE'); SELECT TABLE_USED_PAGES('SYSDBA','SPACE_TABLE'); |
三、索引管理
DM8提供了几种最常见类型的索引,对不同场景有不同的功能,它们是:
聚集索引:每一个普通表有且只有一个聚集索引;
唯一索引:索引数据根据索引键唯一;
函数索引:包含函数/表达式的预先计算的值;
位图索引:对低基数的列创建位图索引;
位图连接索引:针对两个或者多个表连接的位图索引,主要用于数据仓库中;
全文索引:在表的文本列上而建的索引。具体内容请参考第19章。
索引在逻辑上和物理上都与相关的表的数据无关,作为无关的结构,索引需要存储空间。 创建或删除一个索引,不会影响基本的表、数据库应用或其他索引。当插入、更改和删除相关的表的行时,DM8会自动管理索引。如果删除索引,所有的应用仍继续工作,但访问以前被索引了的数据时速度可能会变慢。索引其他的增删改和什么样的列适合什么样的索引这边就不具体赘述了。
四、触发器
触发器(TRIGGER)定义当某些与数据库有关的事件发生时,数据库应该采取的操作。通过触发器机制,用户可以定义、删除和修改触发器。DM自动管理和运行这些触发器,从而体现系统的主动性,方便用户使用。触发器是一种特殊的存储过程,它在创建后就存储在数据库中。触发器的特殊性在于它是建立在某个具体的表或视图之上的,或者是建立在各种事件前后的,而且是自动激发执行的,如果用户在这个表上执行了某个DML操作(INSERT、DELETE、UPDATE),触发器就被激发执行。
触发器常用于自动完成一些数据库的维护工作。例如,触发器可以具有以下功能:
可以对表自动进行复杂的安全性、完整性检查;
可以在对表进行DML操作之前或者之后进行其它处理;
进行审计,可以对表上的操作进行跟踪;
实现不同节点间数据库的同步更新。
五、视图、序列和同义词
视图是从一个或几个基表(或视图)导出的表,但它是一个虚表,即数据字典中只存放视图的定义(由视图名和查询语句组成),而不存放对应的数据,这些数据仍存放在原来的基表中。当对一个视图进行查询时,视图将查询其对应的基表,并且将所查询的结果以视图所规定的格式和次序进行返回。因此当基表中的数据发生变化时,从视图中查询出的数据也随之改变了。
CREATE VIEW normal_view AS SELECT name FROM person; CREATE VIEW special_view AS SELECT name, sex, email, phone FROM person;
序列(sequence)是DM数据库中的数据库实体之一。通过使用序列,多个用户可以产生和使用一组不重复的有序整数值。比如可以用序列来自动地生成主关键字值。序列通过提供唯一数值的顺序表来简化程序设计工作。
序列可以是循环的,当序列的值达到最大值/最小值时,序列将从最小值/最大值计数。使用一个序列时,不保证将生成一串连续不断递增的值。例如,如果查询一个序列的下一个值供insert使用,则该查询是能使用这个序列值的唯一会话。如果未能提交事务处理,则序列值就不被插入表中,以后的insert将继续使用该序列随后的值。
同义词相当于模式对象的别名,起着连接数据库模式对象和应用程序的作用。假如模式对象需要更换或者修改,则不用修改应用程序而直接修改同义词就可以了。
同义词是用来实现下列用途的数据库对象:
为可以存在于本地或远程服务器上的其他数据库对象(称为基础对象)提供备用名称;
提供抽象层以免客户端应用程序对基础对象的名称或位置进行更改。
同义词的好处在于用户可能需要某些对象在不同的场合采用不用的名字,使其适合不同人群的应用环境。例如,创建表product,如果客户不认识这个英文词,这时可以增加同义词,命名“产品”,这样客户就有较直观的观念,一目了然。
六、存储管理
1、管理表空间
创建表空间
创建表空间时需要指定表空间名和其拥有的数据文件列表。比如创建名为bookshop的表空间,并指定该空间上拥有2个数据文件,每个数据文件的大小为128M。
CREATE TABLESPACE bookshop DATAFILE 'd:\bookshop1.dbf' SIZE 128, 'd:\bookshop2.dbf' SIZE 128; |
删除表空间
只可以删除用户创建的表空间并且只能删除未使用过的表空间。删除表空间时会删除其拥有的所有数据文件。例如删除bookshop表空间。
DROP TABLESPACE bookshop; |
修改表空间名
可修改已存在的由用户创建的表空间的名称。比如可修改bookshop表空间名为books。
ALTER TABLESPACE bookshop RENAME TO books; |
修改表空间状态
用户表空间有联机和脱机两种状态。系统表空间、回滚表空间、重做日志表空间和临时文件表空间不允许脱机。设置表空间状态为脱机状态时,如果该表空间有未提交的事务,则脱机失败报错。脱机后可对表空间的数据进行备份。例如修改bookshop表空间状态为脱机。
ALTER TABLESPACE bookshop OFFLINE; |
修改bookshop表空间状态为联机。
ALTER TABLESPACE bookshop ONLINE; |
MPP环境下,可能发现节点间的表空间不一致情况,如:EP01为ONLINE状态,EP02为OFFLINE状态,这个时候,无论执行ONLINE还是OFFLINE都是报错。需要用户介入,才可以解决问题。用户LOCAL方式登陆实例,并执行SP_SET_SESSION_LOCAL_TYPE(1),使得该会话可以执行DDL操作,再执行ONLINE或者OFFLINE即可。
修改表空间数据缓冲区
ALTER TABLESPACE bookshop CACHE= "KEEP";
查询表空间与数据文件对应关系
SELECT ts.NAME, df.PATH FROM V$TABLESPACE ts, V$DATAFILE AS df WHERE ts.ID = df.GROUP_ID;
表空间文件失效检查
在dm.ini中参数FIL_CHECK_INTERVAL的值指定DM系统检查数据文件是否仍存在的时间间隔。将其设为0表示不进行检查。也可以通过系统过程SP_FILE_SYS_CHECK()来手动的进行检查。
表空间失效文件恢复
LINUX系统中被删除的文件,只要其句柄没有被关闭,可以在/proc/<pid>/fd中找到其对应的文件副本。其中<pid>指打开该文件的进程id。
利用该方法,结合OS命令,DM提供失效文件的恢复方案如下:
调用系统过程SP_TABLESPACE_PREPARE_RECOVER(tablespace_name)准备进行恢复;
如果使用过程中DM报错表空间数据文件被删除,通过操作系统的ps命令找到当前dmserver的PID:ps –ef|grep dmserver;
使用操作系统ls命令查看被删除文件对应的副本:ls /proc/<PID>/fd–l,会发现被删除的文件后有(deleted)字样;
使用操作系统的cp命令将文件复制到原位置:
cp bak_fildata_file_path_dir; |
- 复制成功后,调用系统过程SP_TABLESPACE_RECOVER(ts_name)完成表空间失效文件的恢复。
注意,要保证数据文件正确修复,需要保证在SP_TABLESPACE_PREPARE_RECOVER后进行数据文件的复制。
2、 管理数据文件
添加数据文件
可以在用户表空间中添加数据文件。添加的数据文件大小最小为4096*页大小,如页大小为8K,则可添加的文件最小值为4096*8k=32M。比如在bookshop表空间中添加大小为64M的数据文件。
ALTER TABLESPACE bookshop ADD DATAFILE 'd:\book.dbf' SIZE 64; |
扩展数据文件的大小
可以扩展用户表空间中已存在的数据文件的大小。比如扩展bookshop表空间中数据文件book.dbf大小至128M。
ALTER TABLESPACE bookshop RESIZE DATAFILE 'd:\book.dbf' TO 128; |
指定数据文件的扩展属性
可以指定数据文件是否可以扩展,每次扩展的空间大小以及数据文件可扩展到的最大空间大小,子句的语法为:
AUTOEXTEND OFF\|ON [NEXT \<文件扩展大小\>] [MAXSIZE \<文件限制大小\>] |
OFF表示文件不可扩展,ON表示文件可扩展。文件扩展大小表示当需要扩展文件时,文件一次增大的空间大小,取值范围是0—2048,单位是M。文件限制大小表示文件可扩展的最大空间大小,为0或者UNLIMITED表示无限制,单位是M。缺省情况下,文件扩展大小是1M,文件的最大大小是无限制的。
创建表空间时可指定文件的扩展属性。如创建表空间时指定数据文件的扩展属性为可自动扩展,每次扩展大小为10M,最大可扩展到100M:
CREATE TABLESPACE bookshop DATAFILE 'd:\book.dbf' SIZE 32 AUTOEXTEND ON NEXT 10 MAXSIZE 100; |
在表空间中添加文件时可指定文件的扩展属性。如添加数据文件时指定扩展属性为不可自动扩展:
ALTER TABLESPACE bookshop ADD DATAFILE 'd:\book.dbf' SIZE 1024 AUTOEXTEND OFF; |
可修改表空间中已存在的数据文件的扩展属性。如修改数据文件的扩展属性为可自动扩展:
ALTER TABLESPACE bookshop DATAFILE 'd:\book.dbf' ; |
修改数据文件的路径
可以修改用户表空间中已存在数据文件的路径,待修改的数据文件所在表空间必须处于脱机状态并且只可修改用户创建的表空间中文件的路径。如修改bookshop表空间中文件book.dbf的路径为e:\ book.dbf。
ALTER TABLESPACE bookshop RENAME DATAFILE 'd:\book.dbf' TO 'e:\book.dbf'; |
3、管理重做日志文件
添加重做日志文件
在服务器打开状态下,可以添加新的重做日志文件。添加的数据文件大小最小为4096*页大小,如页大小为8K,则可添加的文件最小值为4096*8k=32M。如添加重做大小为128M的重做日志文件DAMENG03.log。
ALTER DATABASE ADD LOGFILE 'd:\DAMENG03.log' size 128; |
扩展重做日志文件
在服务器打开状态下,可以扩展已有的重做日志文件的大小。如扩展重做日志文件DAMENG03.log到256M。
ALTER DATABASE RESIZE LOGFILE 'd:\DAMENG03.log' to 256; |
管理回滚空间
回滚空间的管理和用户表空间的管理基本是一样的,区别是回滚空间的空间名固定为ROLL,不可修改。可增加和扩展回滚空间中的回滚文件,设置回滚空间的扩展属性,相关操作可参考16.2管理数据文件中的说明。
回滚文件的路径记录在控制文件里面,可以使用dmctlcvt工具在DM服务器关闭的状态下对控制文件进行修改。使用dmctlcvt工具将控制文件转换为文本文件,编辑文本文件中要修改的文件的路径后再使用dmctlcvt工具将文本文件转换为控制文件即可。
首先转换控制文件到文本文件:
dmctlcvt c2t D:\dm.ctl D:\ctl.txt |
编辑ctl.txt文本文件中fil_path=d:\roll.dbf为fil_path=e:\ roll.dbf,保存文本文件。复制d:\roll.dbf文件为e:\ roll.dbf。
最后转换文本文件到控制文件:
dmctlcvt t2c D:\ctl.txt D:\dm.ctl |
这种修改文件路径的方法也可用于重做日志文件,系统表空间文件等路径的修改。
管理控制文件
可以在dm.ini中通过设置CTL_PATH配置参数的值来指定控制文件的路径,缺省控制文件dm.ctl在数据目录下。例如可以把dm.ctl文件复制到D盘下,同时修改dm.ini中CTL_PATH = D:\dm.ctl。
DM数据库管理模式对象空间、表、索引、触发器、视图、序列列、同义词等。相关推荐
- oracle查看表空间的内容,学习笔记:Oracle查看object对象 表空间 表 索引 数据文件的使用空间...
天萃荷净 运维DBA咨询想要查看Oracle的object对象的使用空间大小,包括表空间 表 索引 数据文件的使用空间 1.查看Oracle表空间大小 Select Tablespace_Name,S ...
- mysql join on 索引_连接查询,表关联查询join on,索引,触发器,视图
一.连接查询 1.统计每一个部门的人数 "部门名,部门的人数" select department,count(eid) from employee group by depar ...
- mysql创建全外连接的视图_关系型数据库 MySQL 表索引和视图详解
原创: JiekeXu JiekeXu之路 一.索引 数据库索引通俗的讲就是和书本的目录一样,主要就是为了提高查询数据的效率.由于数据存储在数据库表中,所以索引是创建在数据库表对象上,由表中的一个字段 ...
- SQL基础(3)-索引/触发器/视图操作
本文只列出索引,触发器,视图的简单操作语句 1.索引 a.创建 create index idx_name on fdh_client_info(name); --普通索引(单列索引) create ...
- 如何利用SQLyog数据库管理工具生成各表的关系视图
工具: 1. SQLyog-12.0.9-0.x64 2. Mysql5.7 mysql5.7直接去官网下载就可以了.SQLyog的破解版,在这个网址有http:// ...
- 3.1 《数据库系统概论》SQL概述及数据定义(模式SCHEMA、表TABLE、索引INDEX)
文章目录 0.前言 1.思维导图 2.SQL概述 (1)什么是SQL? (2)SQL的特点 (3) SQL的基本概念 3.数据字典 4.数据定义 (1)数据定义概览 (2)模式的定义与删除---SCH ...
- 笔记:SQL概述及数据定义(模式SCHEMA、表TABLE、索引INDEX)
SQL概述及数据定义(模式SCHEMA.表TABLE.索引INDEX)的学习笔记.修改与补充 目录 0.前言 1.思维导图 2.SQL概述 (1)什么是SQL? (2)SQL的特点 (3) SQL的基 ...
- 第 8 章:管理模式对象
返回课程列表 目的 模式是一个数据库对象的集合.模式为一个数据库用户所有,并具有与该用户相同的名称.模式对象是由用户创建的逻辑结构,用以包含或引用他们的数据.模式对象包含诸如表.视图和索引之类的结构. ...
- Lucene 5.2.1 + jcseg 1.9.6中文分词索引(Lucene 学习序列2)
Lucene 5.2.1 + jcseg 1.9.6中文分词索引(Lucene 学习序列2) jcseg是使用Java开发的一个开源的中文分词器,使用流行的mmseg算法实现.是一款独立的分词组件,不 ...
最新文章
- 哇 跨行竞争 Python竟能替代PS完成海报设计
- 哈希表(HashMap)分析及实现(JAVA)
- svn 413 Request Entity Too Large 错误
- cassandra 存储list数组
- 【Python】torrentParser1.00
- 自定义控件的子控件支持设计模式
- python装饰器功能是冒泡排序怎么做_传说中Python最难理解的点|看这完篇就够了(装饰器)...
- 【转】排除被冲销的物料凭证
- python怎么输入文件数据库_python学习日记——文件及数据库
- 【转】ANSI与GB2312的编码问题
- 游戏数仓分析(一)数据准备阶段
- java 实现气泡 源码分析_冒泡排序算法原理及JAVA实现代码
- Poj 1284 Primitive Roots
- linux杀死进程删除文件,linux 常用到的命令 删除 移动 复制 查询端口 杀死进程 查询进程...
- upper_bound()与lower_bound()
- 编写一个学生类 student,包含的属性有学号、姓名年龄,将所有学生存储在一个数组中
- 近600个教学学习资料链接(zz)
- 对齐函数:ALIGN()
- 看了就会的浏览器帧原理
- NFS搭建错误处理:exportfs:No options for /home/source/*(rw,sync,no_root_squash):suggest(sync) to avoid warn
热门文章
- 【正点原子Linux连载】第十一章 网络编程 摘自【正点原子】I.MX6U嵌入式Qt开发指南V1.0.2
- 这周改了90多份简历...
- indesign里怎么打根号_曲面生成帮下载-高精度函数建模软件 v1.1 官方版 - 安下载...
- Quartz定时任务总结
- 【计算机网络】第四章:数据链路层(Part2.广播信道的数据链路)
- 现在需要在input框输入年月yyyymm的正则_2020年4月!火星、土星和木星将在地球上空上演!...
- Android V7包学习笔记更新中.....
- C语言之Problem 2291 排序
- 计算机f g 盘找不到了,电脑E/F盘符突然不见了该怎么数据恢复?
- 美洲杯-阿圭罗进球 国米前锋破门 阿根廷2-0出线