怎么把数据库表导入数据库

怎么把数据库表导入数据库,第1张

1 如何将数据库文件导入数据库中

1)打开你的sql server,找到要导入数据的数据库,右键——〉任务——〉导入数据

2)按照图示选择要导入的excel

3)选择导入到哪个数据库

4)导入excel选择第一项即可,选择第二项是表与表直接内容的筛选复制

5)选择源表和源视图

6)编辑映射页面

7)继续下一步,点击完成,看到传输数据完成页面

8

8)进入数据库刷新,查看刚刚导入的表,完成!

2 如何把excel表格数据导入到数据库

1、打开SQL Server 2014 Management Studio 数据库,并且登录进去;

2、新建一个数据库,将excel导入,在新建的数据名字上,鼠标右键,选择任务选项,之后导入数据,就会看到导入excel文件的窗口;

3、下拉框选中Microsoft Excel,浏览添加你需要导入到数据库的excel文件,然后点击下一步;

4、下拉框选中sql开头的,验证方式自己选择,一般是默认的验证方式,然后下面的数据库;

5、出现的这个页面不用动任何 *** 作,直接继续点击下一步即可;

6、现在表示导入成功,上面有各类详细的数据,可以选择关闭,这个时候记得刷新数据库的表,否则看不到新导入的数据。

3 怎样将EXCEL数据表导入到SQL中

第一步:登录到 SQL Server Management Studio

第二步:在 “对象资源管理器 ”中右键单击 “管理 ”,在d出列表中单击 “导入数据 ”

第三步:在 “导入向导 ”对话框中单击 “下一步 ”,进入到 “选择数据源 ”对话框,在 “数据源 ”列表中选择 “Microsoft Excel ”,同时选择相应的 Excel 文档,完成后单击 “下一步 ”(一定要勾选该对话框中的 “首行包含列名称 ”,因此它是将 Excel文档中的列标题为数据库表中的列项标题)

第四步:指定目标数据库服务,依次单击 “下一步 ”。。。。至到 “完成 ”

第五步:重新打到 SQL Server Management Studio,进入到导入的数据库表,可以发现所导入的 Excel文档数据。

4 sqlserver中怎么将sql文件导入数据库中

1打开SQL Server Management Studio,在对象资源管理器中,展开“SQLServer 实例”→“数据库”→“Be”节点,单击鼠标右键,选择“任务”→“导入数据”命令。出现欢迎界面,单击“下一步”按钮,出现“选择数据源”对话框。在“选择数据源”对话框中设置如下选项

2单击“下一步”按钮,出现“指定表复制或查询”对话框。在“指定表复制或查询”对话框中选中“复制一个或多个表或视图的数据”单选按钮,单击“下一步”按钮。出现“选择源表和源视图”对话框,设置如下选项,如图49所示,然后单击“下一步”按钮。

3在“保存并执行包”对话框中选中“立即执行”复选框,然后单击“下一步” 按钮。

在如图所示的对话框中单击“完成”按钮。

当执行完后,单击“关闭”按钮。

SQL Server:一提到SQL Server,大家一般都只想到Microsoft SQL Server,而非Sybase SQL Server。SQL Server最初是由Microsoft, Sybase and Ashton-Tate三家公司拦下的生意,是为IBM(又出现了)公司的OS/2 *** 作系统开发的。随着OS/2项目的失败,大家也分道扬镳。 Microsoft自然转向自己的win *** 作系统,作为windows NT软件方案的一部分。而Sybase则专注于Linux/Unix方向的数据库开发。

MS SQL Server主要面向中小企业。其最大的优势就是在于集成了MS公司的各类产品及资源,提供了强大的可视化界面、高度集成的管理开发工具,在快速构建商业智能(BI)方面颇有建树。 MS SQL Server是MS公司在软件集成方案中的重要一环,也为WIN系统在企业级应用中的普及做出了很大贡献。

典型应用场景

关于“大型数据库”,并没有严格的界定,有说以数据量为准,有说以恢复时间为准。如果综合数据库应用场景来说,大型数据库应用有以下特点:海量数据、高吞吐量;复杂逻辑、高计算量,以及高可用性。从这点上来说,Oracle,DB2就是比较典型的大型数据库,Sybase SQL Server也算是吧。下面分别说明之前三种数据库的应用场景。

5 怎么把excel表格导入sql数据库

方法/步骤

1

打开SQL Server Management Studio,按图中的路径进入导入数据界面。

2

导入的时候需要将EXCEL的文件准备好,不能打开。点击下一步。

数据源:选择“Microsoft Excel”除了EXCEL类型的数据,SQL还支持很多其它数据源类型。

选择需要导入的EXCEL文件。点击浏览,找到导入的文件确定。

再次确认文件路径没有问题,点击下一步。

默认为是使用的WINODWS身份验证,改为使用SQL身份验证。输入数据库密码,注意:数据库,这里看看是不是导入的数据库。也可以在这里临时改变,选择其它数据库。

选择导入数据EXCEL表内容范围,若有几个SHEET表,或一个SHEET表中有些数据我们不想导入,则可以编写查询指定的数据进行导入。点击下一步。

选择我们需要导入的SHEET表,比如我在这里将SHEET表名改为price,则导入后生面的SQL数据库表为price$。点击进入下一步。

点击进入下一步。

在这里完整显示了我们的导入的信息,执行内容,再次确认无误后,点击完成,开始执行。

可以看到任务执行的过程和进度。

执行成功:我们可以看看执行结果,已传输1754行,表示从EXCEL表中导入1754条数据,包括列名标题。这样就完成了,执行SQL查询语句:SELECT FROM price$就可以查看已导入的数据内容。

6 如何把SQL文件导入到数据库

附加数据库 或者导入数据库

SQL本身有数据导入的 *** 作。但如果要从一个备份的文件中导入数据,则要进行另外的 *** 作。下面以一个例子进行说明。

SQL服务器上已有一个DOE数据库,并且里面有大量的数据,现准备从另外一个备份文件A1BAK(不是DOE数据库的备份文件)中导入另外的数据(即导入后在DOE中增加一些数据表,表中已录有数据),并保持原DOE的数据不变。

1、首先,在“SQL企业管理器”中新建一个临时数据库A1。

2、右击A1数据库,选择:所有任务->还原数据库。

3、在“还原数据库”窗口中,选择:“从设备”。

4、点击“选择设备”。

5、点击“添加”。

6、从文件名中选择要还原的数据库文件,如A1BAK。

7、点击“确定”,返回“还原数据库”窗口。

8、点击“选项”卡,进入选项设置。

9、钩选:“在现有数据库上强制还原”。

10、修改“移到物理文件名”为:“c:\a1ldf”、“c:\a1mdf”。

11、点确定,即可导入备份文件中的数据到临时数据库A1中。

12、此时,你可以将数据从A1导入到另外一真正要导入的数据库中,如DOE数据库。

(下面的数据导入 *** 作为SQL2000企业管理器的一般数据导入导出 *** 作。)

13、在“SQL企业管理器”中选择“DOE”数据库。

14、右击DOE数据库,选择:所有任务->导入数据。

15、在“DTS导入/导出向导”窗口的“选择数据源”中,数据源选择刚才建立并导入数据的临时数据库A1。点击下一步。

16、在“选择目的”中,系统已经默认为DOE数据库。

17、连续点击“下一步”,直到完成。

经过上面的 *** 作,你已经成功地将备份文件A1BAK中数据导入DOE数据库中,并且DOE数据库原有数据不变。

此时,你可以删除临时数据库A1。

-------------------------------------------------------------

1打开SQLCC

2连接数据库

3连接表"ragnarok"(没有的可以新建一个)

4选择表按CTRL+Q

5点左侧的"打开"按扭(图标为一个文件夹)导入SQL文件

6删除深红色的部分(注意要全部删除,不然导入过程可能会出错)

7修改开头的数据库为"ragnarok",结尾修改数据库的用户名和密码

8按右侧的"导入"按扭(图标为一个感叹号)开始导入

9导入完毕后关闭窗口

10重新连接数据库,即可看到"ragnarok"里的数据表了

7 怎么将sql文件导入数据库啊

1、打开企业管理器,打开要导入数据的数据库,在表上按右键,所有任务-->;导入数据,d出DTS导入/导出向导,按 下一步 ,

2、选择数据源 Microsoft Excel 97-2000,文件名 选择要导入的xls文件,按 下一步 ,

3、选择目的 用于SQL Server 的Microsoft OLE DB提供程序,服务器选择本地(如果是本地数据库的话,如 VVV),使用SQL Server身份验证,用户名sa,密码为空,数据库选择要导入数据的数据库(如 client),按 下一步 ,

4、选择 用一条查询指定要传输的数据,按 下一步 ,

5、按 查询生成器,在源表列表中,有要导入的xls文件的列,将各列加入到右边的 选中的列 列表中,这一步一定要注意,加入列的顺序一定要与数据库中字段定义的顺序相同,否则将会出错,按 下一步 ,

6、选择要对数据进行排列的顺序,在这一步中选择的列就是在查询语句中 order by 后面所跟的列,按 下一步 ,

7、如果要全部导入,则选择 全部行,按 下一步,

8、则会看到根据前面的 *** 作生成的查询语句,确认无误后,按 下一步,

9、会看到 表/工作表/Excel命名区域 列表,在 目的 列,选择要导入数据的那个表,按 下一步,

10、选择 立即运行,按 下一步,

11、会看到整个 *** 作的摘要,按 完成 即可。

当然,在以上各个步骤中,有的步骤可以有多种选择,你可以根据自己的需要来选择相应的选项。例如,对编程有兴趣的朋友可以在第10步的时候选择保存DTS包,保存成Visual Basic文件,可以看看里面的代码,提高自己的编程水平

同步两个SQLServer数据库\x0d\\x0d\如何同步两个sqlserver数据库的内容程序代码可以有版本管理cvs进行同步管理,可是数据库同步就非常麻烦,只能自己改了一个后再去改另一个,如果忘记了更改另一个经常造成两个数据库的结构或内容上不一致各位有什么好的方法吗\x0d\\x0d\一、分发与复制\x0d\\x0d\用强制订阅实现数据库同步 *** 作 大量和批量的数据可以用数据库的同步机制处理:\x0d\//\x0d\说明:\x0d\为方便 *** 作,所有 *** 作均在发布服务器(分发服务器)上 *** 作,并使用推模式\x0d\在客户机器使用强制订阅方式。\x0d\\x0d\二、测试通过\x0d\\x0d\1:环境\x0d\\x0d\服务器环境:\x0d\机器名称: zehuadb\x0d\ *** 作系统:windows 2000 server\x0d\数据库版本:sql 2000 server 个人版\x0d\\x0d\客户端\x0d\机器名称:zlp\x0d\ *** 作系统:windows 2000 server\x0d\数据库版本:sql 2000 server 个人版\x0d\\x0d\2:建用户帐号\x0d\\x0d\在服务器端建立域用户帐号\x0d\我的电脑管理->本地用户和组->用户->建立\x0d\username:zlp\x0d\userpwd:zlp\x0d\\x0d\3:重新启动服务器mssqlserver\x0d\\x0d\我的电脑->控制面版->管理工具->服务->mssqlserver 服务\x0d\(更改为:域用户帐号,我们新建的zlp用户 \zlp,密码:zlp)\x0d\\x0d\4:安装分发服务器\x0d\\x0d\a:配置分发服务器\x0d\工具->复制->配置发布、订阅服务器和分发->下一步->下一步(所有的均采用默认配置)\x0d\\x0d\b:配置发布服务器\x0d\工具->复制->创建和管理发布->选择要发布的数据库(sz)->下一步->快照发布->下一步->选择要发布的内容->下一步->下一步->下一步->完成\x0d\\x0d\c:强制配置订阅服务器(推模式,拉模式与此雷同)\x0d\工具->复制->配置发布、订阅服务器和分发->订阅服务器->新建->sql server数据库->输入客户端服务器名称(zlp)->使用sql server 身份验证(sa,空密码)->确定->应用->确定\x0d\\x0d\d:初始化订阅\x0d\复制监视器->发布服务器(zehuadb)->双击订阅->强制新建->下一步->选择启用的订阅服务器->zlp->下一步->下一步->下一步->下一步->完成\x0d\\x0d\5:测试配置是否成功\x0d\\x0d\复制监视器->发布衿zehuadb)->双击sz:sz->点状态->点立即运行代理程序\x0d\\x0d\查看:\x0d\复制监视器->发布服务器(zehuadb)->sz:sz->选择zlp:sz(类型强制)->鼠标右键->启动同步处理\x0d\\x0d\如果没有错误标志(红色叉),恭喜您配置成功\x0d\\x0d\6:测试数据\x0d\\x0d\在服务器执行:\x0d\\x0d\选择一个表,执行如下sql: insert into wq_newsgroup_s select '测试成功',5\x0d\\x0d\复制监视器->发布服务器(zehuadb)->sz:sz->快照->启动代理程序 ->zlp:sz(强制)->启动同步处理\x0d\\x0d\去查看同步的 wq_newsgroup_s 是否插入了一条新的记录\x0d\\x0d\测试完毕,通过。\x0d\7:修改数据库的同步时间,一般选择夜晚执行数据库同步处理\x0d\(具体 *** 作略) :d\x0d\\x0d\/\x0d\注意说明:\x0d\服务器一端不能以(local)进行数据的发布与分发,需要先删除注册,然后新建注册本地计算机名称\x0d\\x0d\卸载方式:工具->复制->禁止发布->是在"zehuadb"上静止发布,卸载所有的数据库同步配置服务器\x0d\\x0d\注意:发布服务器、分发服务器中的sqlserveragent服务必须启动\x0d\采用推模式: "d:\microsoft sql server\mssql\repldata\unc" 目录文件可以不设置共享\x0d\拉模式:则需要共享~!\x0d\/\x0d\少量数据库同步可以采用触发器实现,同步单表即可。\x0d\\x0d\三、配置过程中可能出现的问题\x0d\\x0d\在sql server 2000里设置和使用数据库复制之前,应先检查相关的几台sql server服务器下面几点是否满足:\x0d\\x0d\1、mssqlserver和sqlserveragent服务是否是以域用户身份启动并运行的(\administrator用户也是可以的)\x0d\\x0d\如果登录用的是本地系统帐户local,将不具备网络功能,会产生以下错误:\x0d\\x0d\进程未能连接到distributor '@server name'\x0d\\x0d\(如果您的服务器已经用了sql server全文检索服务, 请不要修改mssqlserver和sqlserveragent服务的local启动。\x0d\会照成全文检索服务不能用。请换另外一台机器来做sql server 2000里复制中的分发服务器。)\x0d\\x0d\修改服务启动的登录用户,需要重新启动mssqlserver和sqlserveragent服务才能生效。\x0d\\x0d\2、检查相关的几台sql server服务器是否改过名称(需要srvid=0的本地机器上srvname和datasource一样)\x0d\\x0d\在查询分析器里执行:\x0d\use master\x0d\select srvid,srvname,datasource from sysservers\x0d\\x0d\如果没有srvid=0或者srvid=0(也就是本机器)但srvname和datasource不一样, 需要按如下方法修改:\x0d\\x0d\use master\x0d\go\x0d\-- 设置两个变量\x0d\declare @serverproperty_servername varchar(100),\x0d\@servername varchar(100)\x0d\-- 取得windows nt 服务器和与指定的 sql server 实例关联的实例信息\x0d\select @serverproperty_servername = convert(varchar(100), serverproperty('servername'))\x0d\-- 返回运行 microsoft sql server 的本地服务器名称\x0d\select @servername = convert(varchar(100), @@servername)\x0d\-- 显示获取的这两个参数\x0d\select @serverproperty_servername,@servername\x0d\--如果@serverproperty_servername和@servername不同(因为你改过计算机名字),再运行下面的\x0d\--删除错误的服务器名\x0d\exec sp_dropserver @server=@servername\x0d\--添加正确的服务器名\x0d\exec sp_addserver @server=@serverproperty_servername, @local='local'\x0d\\x0d\修改这项参数,需要重新启动mssqlserver和sqlserveragent服务才能生效。\x0d\\x0d\这样一来就不会在创建复制的过程中出现18482、18483错误了。\x0d\\x0d\3、检查sql server企业管理器里面相关的几台sql server注册名是否和上面第二点里介绍的srvname一样\x0d\\x0d\不能用ip地址的注册名。\x0d\\x0d\(我们可以删掉ip地址的注册,新建以sql server管理员级别的用户注册的服务器名)\x0d\\x0d\这样一来就不会在创建复制的过程中出现14010、20084、18456、18482、18483错误了。\x0d\\x0d\4、检查相关的几台sql server服务器网络是否能够正常访问\x0d\\x0d\如果ping主机ip地址可以,但ping主机名不通的时候,需要在\x0d\\x0d\winnt\system32\drivers\etc\hosts (win2000)\x0d\windows\system32\drivers\etc\hosts (win2003)\x0d\\x0d\文件里写入数据库服务器ip地址和主机名的对应关系。\x0d\\x0d\例如:\x0d\\x0d\127001 localhost\x0d\192168035 oracledb oracledb\x0d\192168065 fengyu02 fengyu02\x0d\2028410193 bj_db bj_db\x0d\或者在sql server客户端网络实用工具里建立别名,例如:\x0d\5、系统需要的扩展存储过程是否存在(如果不存在,需要恢复):\x0d\\x0d\sp_addextendedproc 'xp_regenumvalues',@dllname ='xpstardll'\x0d\go\x0d\sp_addextendedproc 'xp_regdeletevalue',@dllname ='xpstardll'\x0d\go\x0d\sp_addextendedproc 'xp_regdeletekey',@dllname ='xpstardll'\x0d\go\x0d\sp_addextendedproc xp_cmdshell ,@dllname ='xplog70dll' \x0d\\x0d\接下来就可以用sql server企业管理器里[复制]-> 右键选择 ->[配置发布、订阅服务器和分发]的图形界面来配置数据库复制了。\x0d\\x0d\下面是按顺序列出配置复制的步骤:\x0d\\x0d\1、建立发布和分发服务器\x0d\\x0d\[欢迎使用配置发布和分发向导]->[选择分发服务器]->[使"@servername"成为它自己的分发服务器,sql server将创建分发数据库和日志]\x0d\->[制定快照文件夹]-> [自定义配置] -> [否,使用下列的默认配置] -> [完成]\x0d\\x0d\上述步骤完成后, 会在当前"@servername" sql server数据库里建立了一个distribion库和 一个distributor_admin管理员级别的用户(我们可以任意修改密码)。\x0d\\x0d\服务器上新增加了四个作业:\x0d\\x0d\[ 代理程序历史记录清除: distribution ]\x0d\[ 分发清除: distribution ]\x0d\[ 复制代理程序检查 ]\x0d\[ 重新初始化存在数据验证失败的订阅 ]\x0d\\x0d\sql server企业管理器里多了一个复制监视器, 当前的这台机器就可以发布、分发、订阅了。\x0d\\x0d\我们再次在sql server企业管理器里[复制]-> 右键选择 ->[配置发布、订阅服务器和分发]\x0d\\x0d\我们可以在 [发布服务器和分发服务器的属性] 窗口-> [发布服务器] -> [新增] -> [确定] -> [发布数据库] -> [事务]/[合并] -> [确定] -> [订阅服务器] -> [新增] -> [确定]\x0d\\x0d\把网络上的其它sql server服务器添加成为发布或者订阅服务器\x0d\\x0d\新增一台发布服务器的选项:\x0d\\x0d\我这里新建立的jin001发布服务器是用管理员级别的数据库用户test连接的,\x0d\\x0d\到发布服务器的管理链接要输入密码的可选框, 默认的是选中的,\x0d\\x0d\在新建的jin001发布服务器上建立和分发服务器fengyu/fengyu的链接的时需要输入distributor_admin用户的密码。到发布服务器的管理链接要输入密码的可选框,也可以不选,也就是不需要密码来建立发布到分发服务器的链接(这当然欠缺安全,在测试环境下可以使用)。\x0d\\x0d\2、新建立的网络上另一台发布服务器(例如jin001)选择分发服务器\x0d\\x0d\[欢迎使用配置发布和分发向导]->[选择分发服务器]\x0d\\x0d\-> 使用下列服务器(选定的服务器必须已配置为分发服务器) -> [选定服务器](例如fengyu/fengyu)\x0d\\x0d\-> [下一步] -> [输入分发服务器(例如fengyu/fengyu)的distributor_admin用户的密码两次]\x0d\\x0d\-> [下一步] -> [自定义配置] -> [否,使用下列的默认配置]\x0d\\x0d\-> [下一步] -> [完成] -> [确定]\x0d\\x0d\建立一个数据库复制发布的过程:\x0d\\x0d\[复制] -> [发布内容] -> 右键选择 -> [新建发布]\x0d\\x0d\-> [下一步] -> [选择发布数据库] -> [选中一个待发布的数据库]\x0d\\x0d\-> [下一步] -> [选择发布类型] -> [事务发布]/[合并发布]\x0d\\x0d\-> [下一步] -> [指定订阅服务器的类型] -> [运行sql server 2000的服务器]\x0d\\x0d\-> [下一步] -> [指定项目] -> [在事务发布中只可以发布带主键的表] -> [选中一个有主键的待发布的表]\x0d\\x0d\->[在合并发布中会给表增加唯一性索引和 rowguidcol 属性的唯一标识符字段[rowguid],默认值是newid()]\x0d\\x0d\(添加新列将: 导致不带列列表的 insert 语句失败,增加表的大小,增加生成第一个快照所要求的时间)\x0d\\x0d\->[选中一个待发布的表]\x0d\\x0d\-> [下一步] -> [选择发布名称和描述] ->\x0d\\x0d\-> [下一步] -> [自定义发布的属性] -> [否,根据指定方式创建发布]\x0d\\x0d\-> [下一步] -> [完成] -> [关闭]\x0d\\x0d\发布属性里有很多有用的选项:设定订阅到期(例如24小时)\x0d\\x0d\设定发布表的项目属性:\x0d\\x0d\常规窗口可以指定发布目的表的名称,可以跟原来的表名称不一样。\x0d\\x0d\下图是命令和快照窗口的栏目\x0d\\x0d\( sql server 数据库复制技术实际上是用insert,update,delete *** 作在订阅服务器上重做发布服务器上的事务 *** 作\x0d\\x0d\看文档资料需要把发布数据库设成完全恢复模式,事务才不会丢失\x0d\\x0d\但我自己在测试中发现发布数据库是简单恢复模式下,每10秒生成一些大事务,10分钟后再收缩数据库日志,\x0d\这期间发布和订阅服务器上的作业都暂停,暂停恢复后并没有丢失任何事务更改 )\x0d\\x0d\发布表可以做数据筛选,例如只选择表里面的部分列:\x0d\\x0d\例如只选择表里某些符合条件的记录, 我们可以手工编写筛选的sql语句:\x0d\\x0d\发布表的订阅选项,并可以建立强制订阅:\x0d\\x0d\成功建立了发布以后,发布服务器上新增加了一个作业: [ 失效订阅清除 ]\x0d\\x0d\分发服务器上新增加了两个作业:\x0d\[ jin001-dack-dack-5 ] 类型[ repl快照 ]\x0d\[ jin001-dack-3 ] 类型[ repl日志读取器 ]\x0d\\x0d\上面蓝色字的名称会根据发布服务器名,发布名及第几次发布而使用不同的编号\x0d\\x0d\repl快照作业是sql server复制的前提条件,它会先把发布的表结构,数据,索引,约束等生成到发布服务器的os目录下文件\x0d\(当有订阅的时候才会生成, 当订阅请求初始化或者按照某个时间表调度生成)\x0d\\x0d\repl日志读取器在事务复制的时候是一直处于运行状态。(在合并复制的时候可以根据调度的时间表来运行)\x0d\\x0d\建立一个数据库复制订阅的过程:\x0d\\x0d\[复制] -> [订阅] -> 右键选择 -> [新建请求订阅]\x0d\\x0d\-> [下一步] -> [查找发布] -> [查看已注册服务器所做的发布]\x0d\\x0d\-> [下一步] -> [选择发布] -> [选中已经建立发布服务器上的数据库发布名]\x0d\\x0d\-> [下一步] -> [指定同步代理程序登录] -> [当代理程序连接到代理服务器时:使用sql server身份验证]\x0d\(输入发布服务器上distributor_admin用户名和密码)\x0d\\x0d\-> [下一步] -> [选择目的数据库] -> [选择在其中创建订阅的数据库名]/[也可以新建一个库名]\x0d\\x0d\-> [下一步] -> [允许匿名订阅] -> [是,生成匿名订阅]\x0d\\x0d\-> [下一步] -> [初始化订阅] -> [是,初始化架构和数据]\x0d\\x0d\-> [下一步] -> [快照传送] -> [使用该发布的默认快照文件夹中的快照文件]\x0d\(订阅服务器要能访问发布服务器的repldata文件夹,如果有问题,可以手工设置网络共享及共享权限)\x0d\\x0d\-> [下一步] -> [快照传送] -> [使用该发布的默认快照文件夹中的快照文件]\x0d\\x0d\-> [下一步] -> [设置分发代理程序调度] -> [使用下列调度] -> [更改] -> [例如每五分钟调度一次]\x0d\\x0d\-> [下一步] -> [启动要求的服务] -> [该订阅要求在发布服务器上运行sqlserveragent服务]\x0d\\x0d\-> [下一步] -> [完成] -> [确定]\x0d\\x0d\成功建立了订阅后,订阅服务器上新增加了一个类别是[repl-分发]作业(合并复制的时候类别是[repl-合并])\x0d\\x0d\它会按照我们给的时间调度表运行数据库同步复制的作业。\x0d\\x0d\3、sql server复制配置好后, 可能出现异常情况的实验日志:\x0d\\x0d\1发布服务器断网,sql server服务关闭,重启动,关机的时候,对已经设置好的复制没有多大影响\x0d\\x0d\中断期间,分发和订阅都接收到没有复制的事务信息\x0d\\x0d\2分发服务器断网,sql server服务关闭,重启动,关机的时候,对已经设置好的复制有一些影响\x0d\\x0d\中断期间,发布服务器的事务排队堆积起来\x0d\(如果设置了较长时间才删除过期订阅的选项, 繁忙发布数据库的事务日志可能会较快速膨胀),\x0d\\x0d\订阅服务器会因为访问不到发布服务器,反复重试\x0d\我们可以设置重试次数和重试的时间间隔(最大的重试次数是9999, 如果每分钟重试一次,可以支持约69天不出错)\x0d\\x0d\分发服务器sql server服务启动,网络接通以后,发布服务器上的堆积作业将按时间顺序作用到订阅机器上:\x0d\\x0d\会需要一个比较长的时间(实际上是生成所有事务的insert,update,delete语句,在订阅服务器上去执行)\x0d\我们在普通的pc机上实验的58个事务100228个命令执行花了7分28秒\x0d\\x0d\3订阅服务器断网,sql server服务关闭,重启动,关机的时候,对已经设置好的复制影响比较大,可能需要重新初试化\x0d\\x0d\我们实验环境(订阅服务器)从18:46分意外停机以, 第二天8:40分重启动后, 已经设好的复制在8:40分以后又开始正常运行了, 发布服务器上的堆积作业将按时间顺序作用到订阅机器上, 但复制管理器里出现快照的错误提示, 快照可能需要重新初试化,复制可能需要重新启动(我们实验环境的机器并没有进行快照初试化,复制仍然是成功运行的)\x0d\\x0d\4、删除已经建好的发布和定阅可以直接用delete删除按钮\x0d\\x0d\我们最好总是按先删定阅,再删发布,最后禁用发布的顺序来 *** 作。\x0d\\x0d\如果要彻底删去sql server上面的复制设置, 可以这样 *** 作:\x0d\\x0d\[复制] -> 右键选择 [禁用发布] -> [欢迎使用禁用发布和分发向导]\x0d\\x0d\-> [下一步] -> [禁用发布] -> [要在"@servername

如何配置才能使客户端连到数据库:\x0d\\x0d\要使一个客户端机器能连接oracle数据库,需要在客户端机器上安装oracle的客户端软件,唯一的例外就是java连接数据库的时候,可以用 \x0d\jdbc \x0d\thin模式,不用装oracle的客户端软件。加入你在机器上装了oracle数据库,就不需要在单独在该机器上安装oracle客户端了,因为装 \x0d\oracle数据库的时候会自动安装oracle客户端。\x0d\ 用过sql \x0d\server数据库然后又用oracle的新手可能会有这样的疑问:问什么我用sql server的时候不用装sql \x0d\server的客户端呢?原因很简单,sql server也是microsoft的,它在 *** 作系统中集成了sql \x0d\server客户端,如果microsoft与oracle有协议,将oracle客户端也集成到 *** 作系统中,那我们也就不用在客户端机器装oracle\x0d\ 客户端软机就可访问数据库了,不过,这好像是不可能实现的事情。\x0d\ 也有的人会问:为什么在sql \x0d\server中没有侦听端口一说,而在oracle中要配置侦听端口?其实sql \x0d\server中也有侦听端口,只不过microsoft将侦听端口固定为1433,不允许你随便改动,这样给你一个错觉感觉sql \x0d\server中没有侦听端口,咳,microsoft把太多的东西都封装到黑盒子里,方便使用的同时也带来的需要副作用。而oracle中的侦听端口直接\x0d\ 在配置文件中,允许随便改动,只不过无论怎样改动,要与oracle服务器端设置的侦听端口一致。\x0d\好,言归正传,我们如何做才能使客户端机器连接到oracle数据库呢?\x0d\A. 安装相关软件\x0d\B. 进行适当的配置\x0d\\x0d\A.在适当的位置安装适当的软件:\x0d\在客户端机器:\x0d\1.在客户端机器上安装ORACLE的Oracle Net通讯软件,它包含在oracle的客户端软件中。\x0d\2.正确配置了sqlnetora文件:\x0d\NAMESDIRECTORY_PATH = (TNSNAMES, )\x0d\NAMESDEFAULT_DOMAIN=DB_DOMAIN\x0d\一般情况下我们不用NAMESDEFAULT_DOMAIN参数。如果想不用该参数用#注释掉或将该参数删除即可,对于NAMESDIRECTORY_PATH参数采用缺省值即可,对于NAMESDEFAULT_DOMAIN参数有时需要注释掉,在下面有详细解释。\x0d\3.正确配置了tnsnameora文件\x0d\\x0d\在服务器端机器:\x0d\1.保证listener已经启动\x0d\2.保证数据库已经启动。\x0d\如果数据库没有启动,用:\x0d\Oracle 9i:\x0d\dos>sqlplus “/ as sysdba”\x0d\sqlplus> startup\x0d\Oracle 8i:\x0d\dos>svrmgrl\x0d\svrmgrl>connect internal\x0d\svrmgrl>startup\x0d\命令启动数据库\x0d\如果listener没有启动,用:\x0d\lsnrctl start [listener name]\x0d\lsnrctl status [listener name]\x0d\命令启动listener\x0d\B.进行适当的配置\x0d\如何正确配置tnsnameora文件:\x0d\\x0d\可\x0d\ 以在客户端机器上使用oracle Net Configuration Assistant或oracle Net \x0d\Manager图形配置工具对客户端进行配置,该配置工具实际上修改tnsnamesora文件。所以我们可以直接修改tnsnamesora文件,\x0d\ 下面以直接修改tnsnamesora文件为例:\x0d\该文件的位置为: \network\admin\tnsnamesora (for windows)\x0d\/network/admin/tnsnamesora (for unix)\x0d\此处,假设服务器名为testserver,服务名为orcltestservercom,使用的侦听端口为1521,则tnsnamsora文件中的一个test网络服务名(数据库别名)为:\x0d\test =\x0d\(DESCRIPTION=\x0d\(ADDRESS_LIST=\x0d\(ADDRESS=(PROTOCOL=TCP)(HOST=testserver)(PORT=1521))\x0d\)\x0d\(CONNECT_DATA=(SERVICE_NAME=orcltestservercom)\x0d\)\x0d\)\x0d\此处的笑脸为)。\x0d\ 红色的内容为需要根据实际情况修改的内容,现解释如下:\x0d\ PROTOCOL:客户端与服务器端通讯的协议,一般为TCP,该内容一般不用改。\x0d\\x0d\HOST:数据库侦听所在的机器的机器名或IP地址,数据库侦听一般与数据库在同一个机器上,所以当我说数据库侦听所在的机器一般也是指数据库所在的机 \x0d\ \x0d\器。在UNIX或WINDOWS下,可以通过在数据库侦听所在的机器的命令提示符下使用hostname命令得到机器名,或通过ipconfig(for\x0d\ WINDOWS) or ifconfig(for \x0d\UNIX)命令得到IP地址。需要注意的是,不管用机器名或IP地址,在客户端一定要用ping命令ping通数据库侦听所在的机器的机器名,否则需要在\x0d\ hosts文件中加入数据库侦听所在的机器的机器名的解析。\x0d\\x0d\PORT:数据库侦听正在侦听的端口,可以察看服务器端的listenerora文件或在数据库侦听所在的机器的命令提示符下通过lnsrctl status [listener name]命令察看。此处Port的值一定要与数据库侦听正在侦听的端口一样。\x0d\ SERVICE_NAME:在服务器端,用system用户登陆后,sqlplus> show parameter service_name命令察看。\x0d\ 如何利用配置的网络服务名连接到数据库:\x0d\ 用sqlplus程序通过test网络服务名进行测试,如sqlplus system/manager@test。\x0d\ 如果不能连接到数据库,则在tnsnameora文件中的test网络服务名(net \x0d\service)后面加上sqlnetora文件中NAMESDEFAULT_DOMAIN参数的值,此处我的参数值为 \x0d\testservercom,将其加到网络服务名后面,修改后的tnsnameora中关于该网络服务名的内容为:\x0d\\x0d\ 什么情况下会引起oracle自动设置NAMESDEFAULT_DOMAIN参数?\x0d\ \x0d\ 出现这种情况的典型环境为windows的客户端的‘我得电脑à属性à计算机名à更改à其它à此计算机的主DNS后缀’中设置了‘primary \x0d\ dns \x0d\suffix’,因为在这种情况下安装客户端时,会在sqlnetora文件中自动设置NAMESDEFAULT_DOMAIN参数,或许当把计算机\x0d\ 加入域中安装oracle客户端时也会出现这种情况,有条件的话大家可以试一下。\x0d\\x0d\我在设置oracle的客户端时一般手工修改tnsnamesora文件,但是还有许多人喜欢用图形工具配置,该图形工具最终还是修改tnsnamesora文件,但是它有时会引起其它的问题:\x0d\\x0d\在用oracle的图形配置软件'net assistant'或‘Net Configuration \x0d\Assistant’配置网络服务名时,假如已经设置了‘primary dns \x0d\suffix’,但是在图形配置软件中写的网络服务名的名字中没有‘primary dns \x0d\suffix’,如只是写了test,则图形配置软件会自动在后面加上‘primary dns \x0d\suffix’,使之变为testtestservercom,并存在tnsnamesora中,而不管你的sqlnetora文件中是否有 \x0d\NAMESDEFAULT_DOMAIN参数。此时,用图形工具进行测试连接是通过的,但是假如此时sqlnetora文件中没有 \x0d\NAMESDEFAULT_DOMAIN参数,则你在使用网络服务名时应该使用在tnsnamesora中的 \x0d\testtestservercom,而不是你在图形配置软件中键入的test。解决的办法为:\x0d\可以在sqlnetora文件中设置NAMESDEFAULT_DOMAIN= testservercom,这时你可以用test或testtestservercom连接数据库\x0d\在sqlnetora文件中不设置NAMESDEFAULT_DOMAIN参数,在tnsnamesora文件中将testtestservercom中的testservercom去掉,这时你可以用test连接数据库。\x0d\\x0d\关于为什们在网络服务名后面加db_domain参数,需要了解sqlplus连接数据库的原理,我在后面解决12154常见故障中给出了详细的说明。\x0d\\x0d\如果上面的招数还不奏效的话,只好用一下乾坤大挪移了。\x0d\将客户端的网络服务名部分\x0d\testtestservercom =\x0d\(DESCRIPTION=\x0d\(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=testserver)(PORT=1521))\x0d\)\x0d\(CONNECT_DATA=(SERVICE_NAME=orcltestservercom)\x0d\)\x0d\)\x0d\此处的笑脸为)。\x0d\拷贝到服务器的tnsnamesora文件中。然后再服务器端用sqlplus system/manager@testtestservercom连接到数据库。\x0d\ 如果能连接成功,说明你的客户端与服务器端的网络有问题。\x0d\ 如果连接不成功,用前面的部分检查网络服务名部分部分是否正确,如果确信网络服务名部分正确而且所有的客户端都连不上数据库则可能为系统TCP/IP或Oracle系统有问题,建议重新安装数据库。\x0d\该错误表示用于连接的网络服务名在tnsnamesora文件中不存在,如上面的tnsnamesora中的网络服务名只有test,假如用户在连接时用sqlplus system/manager@test1则就会给出TNS-12154错误。\x0d\要注意的是,有时即使在tnsnamesora文件中有相应的网络服务名,可是用该网络服务名连接时还会出错,出现这种情况的典型配置如下(在客户端的机器上):\x0d\sqlnetora文件:\x0d\NAMESDIRECTORY_PATH = (TNSNAMES, )\x0d\NAMESDEFAULT_DOMAIN = servercom\x0d\tnsnamesora文件:\x0d\test =\x0d\(DESCRIPTION=\x0d\(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=testserver)(PORT=1521))\x0d\)\x0d\(CONNECT_DATA=(SERVICE_NAME=orcltestservercom)\x0d\)\x0d\)\x0d\此处的笑脸为)。\x0d\sqlplus运行基本机理:\x0d\ 在用户输入sqlplus system/manager@test后,sqlplus程序会自动到sqlnetora文件中找NAMESDEFAULT_DOMAIN参数,假 如该参数存在,则将该参数中的值取出,加到网络服务名的后面, \x0d\\x0d\即此例中你的输入由sqlplus system/manager@test自动变为sqlplus system/manager@testservercom\x0d\ \x0d\,然后再到tnsnamesora文件中找testservercom网络服务名,这当然找不到了,因为该文件中只有test网络服务名,所以报 \x0d\ 错。解决的办法就是将sqlnetora文件中的NAMESDEFAULT_DOMAIN参数注释掉即可,如 \x0d\#NAMESDEFAULT_DOMAIN = \x0d\servercom。假如NAMESDEFAULT_DOMAIN参数不存在,则sqlplus程序会直接到tnsnamesora文件中找 \x0d\test网络服务名,然后取出其中的host,port,tcp,service_name,利用这些信息将连接请求发送到正确的数据库服务器上。\x0d\ 另外原则上tnsnamesora中的配置不区分大小写,但是我的确遇到区分大小写的情况,所以最好将使用的网络服务与tnsnamesora中配置的完全一样。\x0d\ORA-12514: TNS:listener could not resolve SERVICE_NAME given in connect Descriptor\x0d\该错误表示能在tnsnamesora中找到网络服务名,但是在tnsnamesora中指定的SERVICE_NAME与服务器端的SERVICE_NAME不一致。解决的办法是修改tnsnamesora中的SERVICE_NAME。\x0d\\x0d\ 易混淆术语介绍:\x0d\ \x0d\ Db_name:对一个数据库(Oracle database)的唯一标识,该数据库为第一章讲到的Oracle \x0d\database。这种表示对于单个数据库是足够的,但是随着由多个数据库构成的分布式数据库的普及,这种命令数据库的方法给数据库的管理造成一定的负 \x0d\ 担,因为各个数据库的名字可能一样,造成管理上的混乱。为了解决这种情况,引入了Db_domain参数,这样在数据库的标识是由Db_name和 \x0d\Db_domain两个参数共同决定的,避免了因为数据库重名而造成管理上的混乱。这类似于互连网上的机器名的管理。我们将Db_name和 \x0d\Db_domain两个参数用’’连接起来,表示一个数据库,并将该数据库的名称称为Global_name,即它扩展了Db_name。 \x0d\Db_name参数只能由字母、数字、’_’、’#’、’$’组成,而且最多8个字符。\x0d\\x0d\ Db_domain:定义一个数据库所在的域,该域的命名同互联网的’域’没有任何关系,只是数据库管理员为了更好的管理分布式数据库而根据实际情况决定的。当然为了管理方便,可以将其等于互联网的域。\x0d\\x0d\Global_name:对一个数据库(Oracle \x0d\database)的唯一标识,oracle建议用此种方法命令数据库。该值是在创建数据库是决定的,缺省值为Db_name \x0d\Db_domain。在以后对参数文件中Db_name与Db_domain参数的任何修改不影响Global_name的值,如果要修改 \x0d\Global_name,只能用ALTER DATABASE RENAME GLOBAL_NAME TO \x0d\命令进行修改,然后修改相应参数。\x0d\\x0d\Service_name:该参数是oracle8i新引进的。在8i以前,我们用SID来表示标识数据库的一个实例,但是在Oracle的并行环境中,\x0d\ \x0d\一个数据库对应多个实例,这样就需要多个网络服务名,设置繁琐。为了方便并行环境中的设置,引进了Service_name参数,该参数对应一个数据库,\x0d\ 而不是一个实例,而且该参数有许多其它的好处。该参数的缺省值为Db_name \x0d\Db_domain,即等于Global_name。一个数据库可以对应多个Service_name,以便实现更灵活的配置。该参数与SID没有直接关\x0d\ 系,即不必Service name 必须与SID一样。\x0d\Net service name:网络服务名,又可以称为数据库别名(database alias)。是客户端程序访问数据库时所需要,屏蔽了客户端如何连接到服务器端的细节,实现了数据库的位置透明的特性。

关于数据库索引的数据结构,大多数数据库都是采用B树。

1、非主键索引需要在数据表本身的存储空间外额外开销存储空间,所以在更新的时候可能不仅要更新数据表本身,还要更新非主键索引,更新内容更多了,所以导致速度降低。反过来,如果数据表中的数据按照主键索引的顺序存储,更新的时候就没有额外的开销。

2、非主键索引对提高查询速度来讲,主要的方面是:检索的条件(where)如果命中对应的非主键索引的话,就不需要对数据表做全表扫描,效率肯定是大大提高。(索引的创建和使用是数据库设计和优化的重要部分,是一个数据库程序员的必修课,不同数据库系统的语法不同,但是原理基本相同)。

3、如果检索结果的字段包含在非主键索引中,即使对非主键索引做全扫描,也比对整表字段做全扫描快,因为只有非主键索引本身的数据需要从存储设备调入内存,节约了IO时间。

扩展资料:

1、选择唯一性索引 唯一性索引的值是唯一的,可以更快速的通过该索引来确定某条记录。例如,学生表中学号是具有唯 一性的字 段。为该字段建立唯一性索引可以很快的确定某个学生的信息。如果使用姓名的话,可能存 在同名现象, 从而降低查询速度。

2、尽量使用数据量少的索引 如果索引的值很长,那么查询的速度会受到影响。例如,对一个CHAR(100)类型的字段进行全文检索 需要的时间肯定要比对CHAR(10)类型的字段需要的时间要多。

3、尽量使用前缀来索引 如果索引字段的值很长,最好使用值的前缀来索引。例如,TEXT和BLOG类型的字段,进行全文检 索会很浪费时 间。如果只检索字段的前面的若干个字符,这样可以提高检索速度。

以上就是关于怎么把数据库表导入数据库全部的内容,包括:怎么把数据库表导入数据库、如何实现同步两个服务器的数据库、如何连接oracle数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9423776.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存