当前位置:首页 » 操作系统 » 导行式数据库

导行式数据库

发布时间: 2025-06-10 04:31:02

‘壹’ sqlserver导数据库有几种方法

1. SQL Server导入导出向导,这种方式是最方便的.

导入向导,微软提供了多种数据源驱动,包括SQL Server Native Cliant, OLE DB For Oracle,Flat File Source,Access,Excel,XML等,基本上可以满足系统开发的需求.
同样导出向导也有同样多的目的源驱动,可以把数据导入到不同的目的源.
对数据库管理人员来说这种方式简单容易操作,导入时SQL Server也会帮你建立相同结构的Table.

2. 用.NET的代码实现(比如有一个txt或是excel的档案,到读取到DB中)
2.1 最为常见的就是循环读取txt的内容,然后一条一条的塞入到Table中.这里不再赘述.
2.2 集合整体读取,使用OLEDB驱动.
代码如下:

代码
string strOLEDBConnect = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\1\;Extended Properties='text;HDR=Yes;FMT=Delimited'";
OleDbConnection conn = new OleDbConnection(strOLEDBConnect);
conn.Open();
SQLstmt = "select * from 1.txt";//读取.txt中的数据
DataTable dt=new DataTable();
OleDbDataAdapter da = new OleDbDataAdapter(SQLstmt, conn);
da.Fill(dt);//在DataSet的指定范围中添加或刷新行以匹配使用DataSet、DataTable 和IDataReader 名称的数据源中的行。
if(dt.Rows.Count>0)
foreach(DataRow dr in dt.Rows)
{
SQLstmt = "insert into MyTable values('" + dr..."

3.BCP,可以用作大容量的数据导入导出,也可以配合来使用.
语法:

代码
bcp {[[database_name.][schema].]{table_name | view_name} | "query"}
{in | out | queryout | format} data_file
[-mmax_errors] [-fformat_file] [-x] [-eerr_file]
[-Ffirst_row] [-Llast_row] [-bbatch_size]
[-ddatabase_name] [-n] [-c] [-N] [-w] [-V (70 | 80 | 90 )]
[-q] [-C { ACP | OEM | RAW | code_page } ] [-tfield_term]
[-rrow_term] [-iinput_file] [-ooutput_file] [-apacket_size]
[-S [server_name[\instance_name]]] [-Ulogin_id] [-Ppassword]
[-T] [-v] [-R] [-k] [-E] [-h"hint [,...n]"]

请注意数据导入导出的方向参数:in,out,queryout
如:

如:

4.BULK INSERT. T-SQL的命令,允许直接导入数据
语法:

BULK INSERT
[ database_name. [ schema_name ] . | schema_name. ] [ table_name | view_name ]
FROM 'data_file'
[ WITH
(
[ [ , ] BATCHSIZE =batch_size ]
[ [ , ] CHECK_CONSTRAINTS ]
[ [ , ] CODEPAGE = { 'ACP' | 'OEM' | 'RAW' | 'code_page' } ]
[ [ , ] DATAFILETYPE =
{ 'char' | 'native'| 'widechar' | 'widenative' } ]
[ [ , ] FIELDTERMINATOR = 'field_terminator' ]
[ [ , ] FIRSTROW = first_row ]
[ [ , ] FIRE_TRIGGERS ]
[ [ , ] FORMATFILE ='format_file_path' ]
[ [ , ] KEEPIDENTITY ]
[ [ , ] KEEPNULLS ]
[ [ , ] KILOBYTES_PER_BATCH =kilobytes_per_batch ]
[ [ , ] LASTROW =last_row ]
[ [ , ] MAXERRORS =max_errors ]
[ [ , ] ORDER ( { column [ ASC | DESC ] } [ ,...n ] ) ]
[ [ , ] ROWS_PER_BATCH =rows_per_batch ]
[ [ , ] ROWTERMINATOR ='row_terminator' ]
[ [ , ] TABLOCK ]
[ [ , ] ERRORFILE ='file_name' ]
)]

重要参数:

FIELDTERMINATOR,字段分隔符
FIRSTROW:第一个数据行
ROWTERMINATOR:行终结符
如:

BULK INSERT dbo.ImportTest
FROM 'C:\ImportData.txt'
WITH ( FIELDTERMINATOR =',', FIRSTROW = 2 )

5. OPENROWSET也是T-SQL的命令,包含有DB连接的信息和其它导入方法不同的是,OPENROWSET可以作为一个目标表参与INSERT,UPDATE,DELETE操作.
语法:

OPENROWSET
( { 'provider_name', { 'datasource';'user_id';'password'
| 'provider_string' }
, { [ catalog. ] [ schema. ] object
| 'query'
}
| BULK 'data_file',
{ FORMATFILE ='format_file_path' [ <bulk_options> ]
| SINGLE_BLOB | SINGLE_CLOB | SINGLE_NCLOB }
} )<bulk_options> ::=
[ , CODEPAGE = { 'ACP' | 'OEM' | 'RAW' | 'code_page' } ]
[ , ERRORFILE ='file_name' ]
[ , FIRSTROW = first_row ]
[ , LASTROW = last_row ]
[ , MAXERRORS = maximum_errors ]
[ , ROWS_PER_BATCH =rows_per_batch ]

如:

INSERT INTO dbo.ImportTest
SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:\ImportData.xls', 'SELECT * FROM [Sheet1$]') WHERE A1 IS NOT NULL

6.OPENDATASOURCE
语法:
OPENDATASOURCE ( provider_name,init_string )

如:

INSERT INTO dbo.ImportTest
SELECT * FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
'Data Source=C:\ImportData.xls;Extended Properties=Excel 8.0')...[Sheet1$]

7.OPENQUERY.是在linked server的基础上执行的查询.所以执行之前必须先建立好link server.OPENQUERY的结果集可以作为一个table参与DML的操作.

语法:
OPENQUERY (linked_server ,'query')

如:

EXEC sp_addlinkedserver 'ImportData',
'Jet 4.0', 'Microsoft.Jet.OLEDB.4.0',
'C:\ImportData.xls',
NULL,
'Excel 8.0'
GO

INSERT INTO dbo.ImportTest
SELECT *
FROM OPENQUERY(ImportData, 'SELECT * FROM [Sheet1$]')

‘贰’ 怎么导数据库

-- 一、 导出/导入(Export/Import)
---- 利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回Oracle数据库中去。
---- 1. 简单导出数据(Export)和导入数据(Import)
---- Oracle支持三种类型的输出:
---- (1)表方式(T方式),将指定表的数据导出。
---- (2)用户方式(U方式),将指定用户的所有对象及数据导出。
---- (3)全库方式(Full方式),将数据库中的所有对象导出。
---- 数据导出(Import)的过程是数据导入(Export)的逆过程,它们的数据流向不同。
---- 2. 增量导出/导入
---- 增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。在进行此种导出时,系统不要求回答任何问题。导出文件名缺省为export.dmp,如果不希望自己的输出文件定名为export.dmp,必须在命令行中指出要用的文件名。
---- 增量导出包括三个类型:
---- (1)“完全”增量导出(Complete)
---- 即备份整个数据库,比如:
---- $exp system/manager inctype=complete file=990702.dmp
---- (2) “增量型”增量导出
---- 备份上一次备份后改变的数据。比如:
---- $exp system/manager inctype=incremental file=990702.dmp
---- (3) “累计型”增量导出(Cumulative)
---- 累计型导出方式只是导出自上次“完全” 导出之后数据库中变化了的信息。比如:
---- $exp system/manager inctype=cumulative file=990702.dmp
---- 数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效地完成。
---- 比如数据库的备份任务可作如下安排:
---- 星期一:完全导出(A)
---- 星期二:增量导出(B)
---- 星期三:增量导出(C)
---- 星期四:增量导出(D)
---- 星期五:累计导出(E)
---- 星期六:增量导出(F)
---- 星期日:增量导出(G)
---- 如果在星期日,数据库遭到意外破坏,数据库管理员可按以下步骤来恢复数据库:
---- 第一步:用命令CREATE DATABASE重新生成数据库结构;
---- 第二步:创建一个足够大的附加回段。
---- 第三步:完全增量导入A:
---- $imp system./manager inctype= RECTORE FULL=Y FILE=A
---- 第四步:累计增量导入E:
---- $imp system/manager inctype= RECTORE FULL=Y FILE =E
---- 第五步:最近增量导入F:
---- $imp system/manager inctype=RESTORE FULL=Y FILE=F
---- 二、 冷备份
---- 冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份是将关键性文件拷贝到另外位置的一种说法。对于备份Oracle信息而言,冷备份是最快和最安全的方法。冷备份的优点是:
---- 1.是非常快速的备份方法(只需拷贝文件)
---- 2.容易归档(简单拷贝即可)
---- 3.容易恢复到某个时间点上(只需将文件再拷贝回去)
---- 4.能与归档方法相结合,作数据库“最新状态”的恢复。
---- 5.低度维护,高度安全。
---- 但冷备份也有如下不足:
---- 1.单独使用时,只能提供到“某一时间点上”的恢复。
---- 2.在实施备份的全过程中,数据库必须要作备份而不能作其它工作。也就是说,在冷备份过程中,数据库必须是关闭状态。
---- 3.若磁盘空间有限,只能拷贝到磁带等其它外部存储设备上,速度会很慢。
---- 4.不能按表或按用户恢复。
---- 如果可能的话(主要看效率),应将信息备份到磁盘上,然后启动数据库(使用户可以工作)并将所备份的信息拷贝到磁带上(拷贝的同时,数据库也可以工作)。冷备份中必须拷贝的文件包括:
---- 1.所有数据文件
---- 2.所有控制文件
---- 3.所有联机REDO LOG文件
---- 4.Init.ora文件(可选)。
---- 值得注意的是冷备份必须在数据库关闭的情况下进行,当数据库处于打开状态时,执行数据库文件系统备份是无效的
---- 下面是做冷备份的完整例子:
---- (1) 关闭数据库$sqldba lmode=y
---- SQLDBA >connect internal;
---- SQLDBA >shutdown normal;
---- (2) 用拷贝命令备份全部的时间文件、重做日志文件、控制文件、初始化参数文件
---- SQLDBA >! cp < file > < backup directory >
---- (3) 重启Oracle数据库
---- $sqldba lmode=y
---- SQLDBA >connect internal;
---- SQLDBA >startup;
---- 三、 热备份
---- 热备份是在数据库运行的情况下,采用archivelog mode方式备份数据的方法。所以,如果你有昨天夜里的一个冷备份而且又有今天的热备份文件,在发生问题时,就可以利用这些资料恢复更多的信息。热备份要求数据库在Archivelog方式下操作,并需要大量的档案空间。一旦数据库运行在archivelog状态下,就可以做备份了。热备份的命令文件由三部分组成:
---- 1.数据文件一个表空间一个表空间地备份。
---- (1)设置表空间为备份状态
---- (2)备份表空间的数据文件
---- (3)恢复表空间为正常状态
---- 2.备份归档log文件。
---- (1)临时停止归档进程
---- (2)log下那些在archive redo log目标目录中的文件
---- (3)重新启动archive进程
---- (4)备份归档的redo log 文件
---- 3.用alter database backup controlfile命令来备份拷贝文件
---- 热备份的优点是:
---- 1.可在表空间或数据文件级备份,备份时间短。
---- 2.备份时数据库仍可使用。
---- 3.可达到秒级恢复(恢复到某一时间点上)。
---- 4.可对几乎所有数据库实体作恢复。
---- 5.恢复是快速的,在大多数情况下在数据库仍工作时恢复。
---- 热备份的不足是:
---- 1.不能出错,否则后果严重。
---- 2.若热备份不成功,所得结果不可用于时间点的恢复。
---- 3.因难于维护,所以要特别仔细小心,不允许“以失败而告终”。

‘叁’ 如何用命令从linux的mysql中导出数据库

要在Linux系统中通过命令行导出MySQL数据库,首先需要使用正确的命令行连接到MySQL服务端。具体步骤如下:

1. 打开终端,输入以下命令以连接到MySQL服务端:

mysql -h hostname -u username -p

其中,hostname是MySQL服务器的地址,username是你的MySQL用户名。执行此命令后,系统会提示你输入密码。

2. 连接到MySQL服务端后,可以通过执行SQL语句来导出数据库。例如,要导出名为mydatabase的数据库,可以使用以下命令:

mysqlmp -h hostname -u username -p mydatabase > mydatabase.sql

其中,mydatabase.sql是导出的SQL文件名。执行此命令后,系统会提示你输入密码。输入密码后,数据库将被导出为mydatabase.sql文件。

3. 如果要导出整个MySQL服务器中的所有数据库,可以使用以下命令:

mysqlmp -h hostname -u username -p --all-databases > all_databases.sql

这个命令会创建一个名为all_databases.sql的文件,其中包含服务器上所有数据库的导出数据。

4. 在导出数据库后,可以使用以下命令来检查导出文件:

mysql -h hostname -u username -p < mydatabase.sql

这个命令将文件mydatabase.sql的内容导入到MySQL服务器中,以验证导出和导入过程是否成功。

以上就是在Linux系统中通过命令行导出MySQL数据库的具体步骤。确保你已经安装了mysqlmp工具,并且拥有足够的权限来执行这些操作。

此外,还可以使用图形界面工具如phpMyAdmin来导出数据库,但这需要先安装并配置phpMyAdmin。如果你更喜欢图形界面操作,可以考虑使用这种方式。

‘肆’ mysql命令行导入数据库什么方法最快

source 命令导入
1
连接进入数据库
windows :开始菜单->运行 cmd
linux : 如果没有配置环境变量, 则到mysql 的bin 目录中去

2
输入: mysql -u root -p 回车 进入数据库

3
使用库/创建库 譬如数据库名字为:testdb
如果数据库存在, 则 use testdb
如果数据库不存在, 则创建 create database testdb 然后在 use testdb

4
将你要导入的数据库文件 *.sql 放到 D或者任意方便输入的位置, 我放置到了D盘的根目录下

然后输入命令: source d:/testdb.sql 回车,会看到如图的

END
mysqlmp命令
1
进入到命令行模式。步骤直接同上第一步。
直接输入: mysqlmp -u root -p testdb < d:/testdb.sql 然后回车

2
会提示输入密码: 直接输入密码,回车搞定!

END
工具导入
1
我们常用的mysql工具有 phpmyadmin sqllog navcat 等。 工具导入的方式就以 sqllog 为例,
第一步新建数据库:输入数据库名,注意字符集和编码

2
右键数据库,“导入”->"执行SQL脚本" 然后选择数据库。 点击确定即可

3
点击“执行”, 可能会弹出一个对话框,直接忽略,点击“确定”就可以了
步骤阅读

热点内容
新东方云教室怎么缓存回放 发布:2025-08-17 11:41:32 浏览:374
安卓手机怎么用carplay怎么用 发布:2025-08-17 11:38:58 浏览:846
快手微信登录如何加密码 发布:2025-08-17 11:16:31 浏览:354
超降率算法 发布:2025-08-17 11:03:49 浏览:448
myeclipse编译快捷键 发布:2025-08-17 11:03:38 浏览:317
传奇大退挂机脚本 发布:2025-08-17 10:59:01 浏览:356
android滑动图片轮播 发布:2025-08-17 10:58:54 浏览:771
奔驰c有哪些配置 发布:2025-08-17 10:46:01 浏览:409
u盘电脑加密 发布:2025-08-17 10:44:32 浏览:810
超级视频安卓怎么安装后打不开了 发布:2025-08-17 10:29:06 浏览:992