一、Oracle数据库操作1、创建数据库createdatabasedatabasename2。删除数据库dropdatabasedbname3。backupdatabasefullbackupexpdemo/demo@orclbuffer=1024file=d:\back.dmpfull=ydemo:用户名,密码buffer:缓存大小file:具体备份文件地址full:是否导出所有文件ignore:忽略错误,如果表已经存在,也覆盖导出数据库中system用户和sys用户的表expdemo/demo@orclfile=d:\backup\1.dmpowner=(system,sys)export指定表expdemo/demo@orclfile=d:\backup2.dmptables=(teachers,students)根据过滤条件导出expdemo/demo@orclfile=d:\back.dmptables=(table1)query=\"wherefiled1like'fg%'\"可以在导出时压缩;在命令后添加compress=y;如果需要日志,后面:log=d:\log.txt备份远程服务器的数据库expusername/password@remoteIP:port/instancefile=storagelocation:\filename.dmpfull=y4,恢复数据库,打开cmd直接执行如下命令即可,无需登录sqlplus。完全恢复impdemo/demo@orclfile=d:\back.dmpfull=yignore=ylog=D:\implog.txt指定log很重要,方便分析错误和修复。导入指定表impdemo/demo@orclfile=d:\backup2.dmptables=(teachers,students)restoretoremoteserverimpusername/password@remoteIP:port/instancefile=storagelocation:\filename.dmpfull=y2.Oracle表操作1.Createtablecreatetabletabname(col1type1[notnull][primarykey],col2type2[notnull],..)在已有表的基础上新建一张表:A:select*intotable_newfromtable_old(使用oldtabletocreateanewtable)B:createtabletab_newasselectcol1,col2...fromtab_olddefinitiononly<仅适用于Oracle>2、deletetabledroptabletabname3,renametabledescription:altertabletablenamerenametonewtablenameeg:altertabletablenamerenametonewtablename4.添加字段说明:altertabletablenameadd(字段名字段类型默认值为空);例子:altertabletablenameadd(IDint);altertabletablenameadd(IDvarchar2(30)default'empty'notnull);5.修改字段说明:altertable表名修改(字段名字段类型默认值是否为空);例如:altertabletablenamemodify(IDnumber(4));6、重复名称字段说明:altertable表名renamecolumn列名为新列名(其中:column为关键字)eg:altertabletablenamerenamecolumnIDtonewID;7、删除字段说明:altertable表名dropcolumn字段名;例如:altertabletablenamedropcolumnID;8.添加主键altertabletabnameaddprimarykey(col)9.删除主键altertabletabnamedropprimarykey(col)10.创建索引create[unique]indexidxnameontabname(col....)11.删除索引dropindexidxname注意:索引不可更改。如果你想改变它,你必须删除它并重建它12、创建视图createviewviewnameasselectstatement13,删除视图dropviewviewname3,Oracle操作数据1,数据查询select<列名>from<表名>[where<查询条件表达式测试>][orderby<排序后的列名>[asc或desc]]2.Insertdatainsertintotablenamevalues(所有列的值);插入测试值(1,'zhangsan',20);插入表名(列)值(对应值);插入测试(id,名称)值(2,'lisi');3.更新数据updatetablesetcolumn=newvalue[wherecondition]-->更新满足条件的记录updatetestsetname='zhangsan2'wherename='zhangsan'updatetablesetcolumn=newvalue-->updatealldataupdatetestsetage=20;4、删除数据deletefromtablenamewherecondition-->删除满足条件的记录deletefromtestwhereid=1;deletefromtest-->Deleteallcommits;-->提交数据回滚;-->回滚数据删除方法可以恢复删除的数据,但是提交之后,就没有办法删除了。delete删除的时候会记录日志-->Delete会很慢,truncatetable表名删除所有数据,不会影响表结构,不会记录日志,数据无法恢复-->deletequicklydroptable表名删除所有数据,包括表结构,不会记录日志,数据无法恢复-->deletequickly5、datacopytabledatacopyinsertintotable1(select*fromtable2);复制表结构createtabletable1select*fromtable2where1>1;复制表结构和数据createtabletable1select*fromtable2;复制指定字段createtabletable1asselectid,namefromtable2where1>1;4.数据库复制命令
