zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

Oracle,postgresql,MySQL如何运行SQL文件

2023-09-14 09:13:14 时间

Oracle,postgresql,MySQL如何运行SQL脚本

Oracle,postgresql,MySQL这三个数据库同属关系型数据库,主要的开发语言都是SQL语言,自然,也是支持SQL脚本的导入导出了。通常,SQL脚本是包含一到多个 sql 命令的 sql 语句集合,我们可以将这些 sql 脚本放在一个文本文件中(我们称之为“sql 脚本文件”),然后通过相关的命令执行这个 sql 脚本文件。运行SQL文件是在迁移库或者增加修改表这样的初始化数据库的时候使用。它们运行SQL脚本基本都是雷同的(形式,方法上),只是有一些细微的差别。

一,Oracle数据库的SQL脚本导入方法

Oracle的自带的数据库管理工具是sqlplus,该工具十分稳定,可靠,Windows和Linux系统都有,因此,是运行SQL脚本的首选。

(1)登陆sqlplus

sqlplus username/password@dbname  --用户名/密码@数据库名称

(2)执行SQL脚本,比如执行root目录下的demo.sql这个脚本

@/root/demo.sql     --@绝对路径/SQL脚本名称   这里注意,一般情况下请写绝对路径,相对路径并不可靠,虽然可以相对路径。

二,postgresql数据库的SQL脚本导入方法

方法有两种,第一种类似Oracle数据库。

(1)不登陆psql

postgresql的自带的数据库管理工具是psql,该工具十分稳定,可靠,Windows和Linux系统都有,因此,是运行SQL脚本的首选。

psql -U username -d myDataBase -a -f /root/demo.sql    ##username是登陆用户名,mydatabase是要登陆哪个数据库,-f后接脚本绝对路径

(2)登陆psql

psql -h ip 然后输入密码登陆,如果是本地登陆,-h ip 可省略,只输入psql即可。

\c 数据库名称    ##切换到要使用脚本的数据库

\i /root/demo.sql   ##绝对路径,执行demo.sql这个脚本

三,MySQL执行SQL脚本

(1)重定向,这个不需要登陆,仅仅验证一次权限而已。

在 Windows 下使用 cmd 命令执行(或 Unix 或 Linux 控制台下)
mysql –u用户名 –p密码 –D数据库<sql脚本绝对路径+全名,示例:
C:\MySQL\bin\mysql –uroot –p123456 -Dtest<C:\demo.sql


注意:
A、如果在 sql 脚本文件中使用了 use 数据库,则 -D数据库 选项可以忽略
B、如果【Mysql的bin目录】中包含空格,则需要使用“”包含,如:“C:\Program Files\MySQL\bin\mysql” –u用户名 –p密码 –D数据库<【sql脚本文件路径全名】
C、如果 sql 没有创建数据库的语句,而且数据库管理中也没有该数据库,那么必须先用命令创建一个空的数据库。

(2),进入 MySQL 控制台(如:MySQL 5.5 Command Line Client),使用 source 命令执行
Mysql>source /root/demo.sql 

总结:三种数据库导入SQL脚本,可以使用一个通用的方法,登陆数据库管理工具,定位到要执行脚本的数据库,然后绝对路径+全名 执行脚本即可。