admin 管理员组文章数量: 1086019
2024年1月16日发(作者:inputbox怎么输入多个数)
在创建用户之前,先要创建表空间:
其格式为:格式:createtablespace表间名datafile'数据文件名'size表空间大小;
如:
SQL>createtablespacenews_tablespacedatafile'F:oradatanews'size500M;
其中'news_tablespace'是你自定义的表空间oradatanews'是数据文件的存放位置,''文件名也是任意取;'size500M'是指定该数据文件的大小,也就是表空间的大小。
现在建好了名为'news_tablespace'的表空间,下面就可以创建用户了:
其格式为:格式:createuser用户名identifiedby密码defaulttablespace表空间表;
如:
SQL>createusernewsidentifiedbynewsdefaulttablespacenews_tablespace;
默认表空间'defaulttablespace'使用上面创建的表空间。
接着授权给新建的用户:
SQL>grantconnect,resourcetonews;--表示把connect,resource权限授予news用户
SQL>grantdbatonews;--表示把dba权限授予给news用户
授权成功。
ok!数据库用户创建完成,现在你就可以使用该用户创建数据表了!
1.建表空间
createtablespacehoteldatadatafile200mautoextendonnext10mmaxsizeunlimited;
2.建用户
createuserhotelidentifiedbyhoteldefaulttablespacehoteldataaccountunlock;/DATABASE/'SIZE5MREUSE--建议用'../oradata/'
AUTOEXTENDONNEXT1MMAXSIZEUNLIMITEDEXTENT
MANAGEMENTLOCALUNIFORMSIZE12K;
CREATETABLESPACE"TEST"
LOGGING
DATAFILE'G:ORACLEORADATAMYORACLE'SIZE5MEXTENT
MANAGEMENTDICTIONARYDEFAULTSTORAGE(INITIAL1KNEXT2K
MINEXTENTS5MAXEXTENTS67PCTINCREASE4)MINIMUMEXTENT3K;
/******************************************************************/
--增加表空间,注意这里不能与原表空间文件名称相同
--添加一个新的大小为5M数据库文件
altertablespacemytesttablespaceadddatafile'c:test'size5M;
/******************************************************************/
--修改表空间数据库文件属性,myoracle为sid
--将数据库文件改为3M,其中resize可以是ONLINE,OFFLINE,RESIZE,AUTOEXTEND或END/DROP
alterdatabasemyoracledatafile'c:test'resize3M;
alterdatabasemyoracledatafile'$ORACLE_HOME/oradata/'autoextendonnext10mmaxsize500M;
/******************************************************************/
/*删除表空间
语法:droptablespacetablespace_nameincludingcontentsanddatafiles;
删除表空间时要系统不会删除表空间数据库文件,要彻底删除要手动删除
*/
droptablespacemytesttablespaceincludingcontentsanddatafiles;
/******************************************************************/
--创建用户
--命令:
--CREATEUSER名称IDENTIFIEDBY口令DEFAULTTABLESPACE"默认表空间名"TEMPORARYTABLESPACE"TEMP"ACCOUNTUNLOCK
--一般属性
--DEFAULTTABLESPACE:默认表空间名
--TEMPORARYTABLESPACE:临时表空间名,默认TEMP
--ACCOUNT:用户状态,默认UNLOCK未锁定;LOCK锁定
CREATEUSER"TEST"PROFILE"DEFAULT"
IDENTIFIEDBY"test"DEFAULTTABLESPACE"TEST"
TEMPORARYTABLESPACE"TEMP"
ACCOUNTUNLOCK;
--可以写成
CREATEUSER"TEST"PROFILE"DEFAULT"
IDENTIFIEDBY"test"DEFAULTTABLESPACE"TEST";
/******************************************************************/
--用户授权
--grant"connect,resource,dba"to"someuser"withadminoption;
--WITHADMINOPTION:管理选项
--授予usertestDBA权限
grantdbato"usertest"withadminoption;
--取消授权
--REVOKE"RESOURCE"FROM"SCOTT";
/******************************************************************/
--建表
--在usertest方案下建表,注意表名不能用关键字,否则报错ORA-00903:表名无效
--语法:
--createtable[schema.]
--
--.......
--)TABLESPACETABLESPACE_NAME;
--schema:表示所属的用户名称或模式名称亦即方案
--table_name:表示新建表的名称
--column_name:表示字段名称
--datatype:表示字段的数据类型
--default
--constraint:表示约束条件
--TABLESPACE_NAME:所用表空间
CREATETABLE"TEST"."TEST"(
"ID"NUMBER(10)DEFAULT0NOTNULL,
"NAME"VARCHAR2(20)NOTNULL,
"INFO"VARCHAR2(1000),
PRIMARYKEY("ID")
)TABLESPACE"TEST";
--也可以写成
CREATETABLE"TEST"."TEST"(
"ID"NUMBER(10)DEFAULT0PRIMARYKEY,
"NAME"VARCHAR2(20)NOTNULL,
"INFO"VARCHAR2(1000)
)TABLESPACE"TEST";
/******************************************************************/
--插入数据
--语法:
--INSERTINTOtablename(column1,column2,…)VALUES(expression1,expression2,…);
INSERTINTO"TEST"."TEST"("ID","NAME","INFO")VALUES(1,'testname','');
--也可以写成
INSERTINTO"TEST"."TEST"VALUES(1,'testname','');
/******************************************************************/
版权声明:本文标题:Oracle建表空间各种语句 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1705350084a482132.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论