红粉体育

网站首页 首页 > 今日资讯 > 正文

pls如何导出库里的所有用户 plsql导出pdm

2024-06-02 08:14 今日资讯 来源:

请问oracle数据库如何导出数据库的表结构?

oracle数据库导出数据库的表结构,使用sql查询将查到的数据到Excel表中保存中即可。查询代码:

pls如何导出库里的所有用户 plsql导出pdmpls如何导出库里的所有用户 plsql导出pdm


SELECT t.table_name,

t.colUMN_NAME,

t.DATA_TYPE || '(' || t.DATA_LENGTH || ')',

t1.COMMENTS

FROM User_Tab_Cols t, User_Col_Comments t1

WHERE t.table_name = t1.table_name

AND t.column_name = t1.column_name;

扩展资料

Oracle Export导出为.dmp的文件格式,.dmp文件是二进制的,可以跨平台,还能包含权限,效率也很不错,用得为广泛 。

Sql Insert导出为.sql文件的,可用文本编辑器查看,通用性比较好,适合小数据量导入导出。尤其注意的是表中不能有大字段(blob,clob,long),如果有会提示不能导出。

(提示如下: table contains one or more LONG columns cannot export in sql format,user Pl/sql developer format instead)。

pl/sql developer导出为.pde格式的,.pde为Pl/sql developer自有的文件格式,只能用Pl/sql developer自己导入导出,不能用编辑器查看。

参考资料:

1、打开PLSQL,找到工具栏,打开“导出表”,如图。

2、进入导出主页,输入需要导出的文件名称。

3、点击保存。

4、点击一下右下角的“导出”,就可以看到导出数据的概况。

5、流程: Tools –> Export User Objects。

6、后点击导出就可以了,导出的文件格式为.sql ,查看文本编辑器查看person.sql文件。

7、如图所示,中途若无报错,则可以根据选定的路径找到文件,备份操作完成。

哪有那么麻烦?

进入plsql

找到table那个大项,点出来,下边会罗列出许多表

右键点中你所需要的那个表名

找到DBMS_Metadata

然后选项里有ddl

弹出来那个窗口就是你的表结构,拷贝出来直接在另一个库里执行就可以啦

-----------------------------补充------------------------

PLSQL里

tools下

export user objects of

按shift批量选择表

执行就行了

有个办法,先插一条记录

create table newtable as

select

from oldtable

where rownum<=1

再删掉这条记录

试一下这个:

c:\>;exp userid=scott/tiger owner=scott

c:\>;imp userid=scott/tiger full=y indexfile=scott.sql

注意着时import并没有真正写入数据库,而是将DDL写在scott.sql里。

scott.sql:

REM CREATE TABLE "SCOTT"."BONUS" ("ENAME" VARCHAR2(10), "JOB"

REM VARCHAR2(9), "SAL" NUMBER, "COMM" NUMBER) PCTFREE 10 PCTUSED 40

REM INITRANS 1 MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS 1 FREELIST

REM GROUPS 1) TABLESPACE "USERS" LOGGING NOCOMPRESS ;

REM ... 0 rows

REM CREATE TABLE "SCOTT"."DEPT" ("DEPTNO" NUMBER(2, 0), "DNAME"

REM VARCHAR2(14), "LOC" VARCHAR2(13)) PCTFREE 10 PCTUSED 40 INITRANS 1

REM MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS 1 FREELIST GROUPS 1)

REM TABLESPACE "USERS" LOGGING NOCOMPRESS ;

REM ... 4 rows

REM CREATE TABLE "SCOTT"."DUMMY" ("DUMMY" NUMBER) PCTFREE 10 PCTUSED 40

REM INITRANS 1 MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS 1 FREELIST

REM GROUPS 1) TABLESPACE "USERS" LOGGING NOCOMPRESS ;

REM ... 1 rows

REM CREATE TABLE "SCOTT"."EMP" ("EMPNO" NUMBER(4, 0) NOT NULL ENABLE,

REM "ENAME" VARCHAR2(10), "JOB" VARCHAR2(9), "MGR" NUMBER(4, 0),

REM "HIREDATE" DATE, "SAL" NUMBER(7, 2), "COMM" NUMBER(7, 2), "DEPTNO"

REM NUMBER(2, 0)) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255

REM STORAGE(INITIAL 65536 FREELISTS 1 FREELIST GROUPS 1) TABLESPACE

REM "USERS" LOGGING NOCOMPRESS ;

REM ... 14 rows

REM CREATE TABLE "SCOTT"."SALGRADE" ("GRADE" NUMBER, "LOSAL" NUMBER,

REM "HISAL" NUMBER) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255

REM STORAGE(INITIAL 65536 FREELISTS 1 FREELIST GROUPS 1) TABLESPACE

REM "USERS" LOGGING NOCOMPRESS ;

REM ... 5 rows

把前面的REM去了,再去掉后一行。创建表的DDL就做好了。

TO:楼主

PL/SQL 中可以选择command 窗口,我的是可以操作的

求快速统计SQL Server 某个库里所有表的方法,count() 函数很慢的。

select schema_name(t.schema_id) as [Schema], t.name as TableName,i.rows as [RowCount]

from sys.tables as t, sysindexes as i

where t.object_id = i.id and i.indid <=1

查询系统表吧!

系统表里面有存储表行数的哦!

如有疑问,及时沟通!

oracle exp命令如何批量导出在数据库中开头为XX的所有表?

导出时使用参数文件比较方便, 你可以在参数文件中指定这些表名字, 很方便。举例如下:

exp.exe parfile=C:\TEMP\tmp\plsexp.par

--plsexp.par文件内容:

log=C:\TEMP\tmp\plsexp.log

file=D:\besdosapp_zs110506.dmp

tables=(ADVICE_ORDER_HEADERS,。。。。。)

。。。。

怎样从数据库里把自己需要的数据导出到excel表格中?

SERVER、ACCESS、EXCEL数据转换,详细说明如下:

一、SQL SERVER 和ACCESS的数据导入导出

常规的数据导入导出:

使用DTS向导迁移你的Access数据到SQL Server,你可以使用这些步骤:

○1在SQL SERVER企业管理器中的Tools(工具)菜单上,选择Data Transformation

○2Services(数据转换服务),然后选择 czdImport Data(导入数据)。

○3在Choose a Data Source(选择数据源)对话框中选择Microsoft Access as the Source,然后键入你的.mdb数据库(.mdb文件扩展名)的文件名或通过浏览寻找该文件。

○4在Choose a Destination(选择目标)对话框中,选择Microsoft OLEDB Prov ider for SQLServer,选择数据库服务器,然后单击必要的验证方式。

○5在Specify Table Copy(指定表格)或Query(查询)对话框中,单击Copy tables(表格)。

○6在Select Source Tables(选择源表格)对话框中,单击Select All(全部选定)。下一步,完成。

Transact-SQL语句进行导入导出:

1.在SQL SERVER里查询access数据:

SELECT

FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',

'Data Source="c:\DB.mdb";User ID=Admin;Password=')...表名

2.将access导入SQL server

在SQL SERVER 里运行:

SELECT

INTO newtable

FROM OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0',

'Data Source="c:\DB.mdb";User ID=Admin;Password=' )...表名

3.将SQL SERVER表里的数据插入到Access表中

在SQL SERVER 里运行:

insert into OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',

'Data Source=" c:\DB.mdb";User ID=Admin;Password=')...表名

(列名1,列名2)

select 列名1,列名2 from sql表

实例:

insert into OPENROWSET('Microsoft.Jet.OLEDB.4.0',

'C:\db.mdb';'admin';'', Test)

select id,name from Test

INSERT INTO OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'c:\trade.mdb'; 'admin'; '', 表名)

SELECT

FROM sqltablename

二、SQL SERVER 和EXCEL的数据导入导出

1、在SQL SERVER里查询Excel数据:

SELECT

FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',

'Data Source="c:\book1.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$]

下面是个查询的示例,它通过用于 Jet 的 OLE DB 提供程序查询 Excel 电子表格。

SELECT

FROM OpenDataSource ( 'Microsoft.Jet.OLEDB.4.0',

'Data Source="c:\Finance\account.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions

2、将Excel的数据导入SQL server :

SELECT into newtable

FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',

'Data Source="c:\book1.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$]

实例:

SELECT into newtable

FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',

'Data Source="c:\Finance\account.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions

3、将SQL SERVER中查询到的数据导成一个Excel文件

T-SQL代码:

EXEC master..xp_cmdshell 'bcp 库名.dbo.表名out c:\Temp.xls -c -q -S"servername" -U"sa" -P""'

参数:S 是SQL服务器名;U是用户;P是密码

说明:还可以导出文本文件等多种格式

实例:EXEC master..xp_cmdshell 'bcp saletesttmp.dbo.CusAccount out c:\temp1.xls -c -q -S"pmserver" -U"sa" -P"sa"'

EXEC master..xp_cmdshell 'bcp "SELECT au_fname, au_lname FROM pubs..authors ORDER BY au_lname" queryout C:\ authors.xls -c -Sservername -Usa -Ppassword'

在VB6中应用ADO导出EXCEL文件代码:

Dim cn As New ADODB.Connection

cn.open "Driver={SQL Server};Server=WEBSVR;DataBase=WebMis;UID=sa;WD=123;"

cn.execute "master..xp_cmdshell 'bcp "SELECT col1, col2 FROM 库名.dbo.表名" queryout E:\DT.xls -c -Sservername -Usa -Ppassword'"

4、在SQL SERVER里往Excel插入数据:

insert into OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',

'Data Source="c:\Temp.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...table1 (A1,A2,A3) values (1,2,3)

T-SQL代码:

INSERT INTO

OPENDATASOURCE('Microsoft.JET.OLEDB.4.0',

'Extended Properties=Excel 8.0;Data source=C:\training\inventur.xls')...[Filiale1$]

(bestand, produkt) VALUES (20, 'Test')

oracle 如何导出所有用户名和密码

1、连上

oracle数据库。(使用sys或者sysdba)。

2、select

from

user$;

查找name为要修改的用户名。

3、update

user$

set

name=“新用户名”

where

4、alter

user

新用户名

identified

by

新密码。

oracle 怎么导出数据库里 所有的表结构和存储过程

exp username/password@server_name file=d:/expdata.dmp full=y

用户名密码使用具有权限的管理员dba进行登录导出

怎么用Sql语句获取一个数据库中的所有表的名字

在程序中通过sql语句查询来获得某个数据库的所有表名,代码如下:

SELECT

table_name

FROM

information_schema.tables

WHERE table_schema = 'mydatabasename'

AND table_type = 'base table'

扩展资料

1,利用sys.tables目录视图查询所有表的名字,sys.tables目录视图为每个表对象返回一行. 示例语句如下:

select from sys.tables

注意:sys.tables目录视图也只有在SQL SERVER2005及以上的版本中才能使用。

2,利用存储过程sp_tables sp_tables存储过程,可返回可在当前环境中查询的对象列表。这代表可在FROM子句中出现的任何对象。 我们可以执行如下语句:

exec sp_tables

在结果集中筛选出所有TABLE_TYPE等于TABLE的记录就是表信息了。

参考资料:


免责声明: 本文由用户上传,如有侵权请联系删除!


标签:

最新文章
热评文章
随机文章