当一个文件的扩展名是.sql,并且该文件中编写了大量的sql语句,我们称为这样的文件为sql脚本。
首先可以完成数据迁移,生成数据库的脚本可以直接在另一个服务器的数据库中直接执行;另外就是可以提高数据访问的效率,并进行相关的数据处理。
我们这里准备了一个测试脚本如下所示。
CREATE DATABASE school;
USE school;
/*----------学生信息表----------*/
CREATE TABLE `student` (
`sid` int NOT NULL COMMENT '学号',
`sname` varchar(100) DEFAULT NULL COMMENT '学生姓名',
`gender` char(1) DEFAULT NULL COMMENT '学生性别',
`class_id` int DEFAULT NULL COMMENT '班号',
PRIMARY KEY (`sid`) USING BTREE
) COMMENT='学生表';
INSERT INTO student (sid, sname, gender, class_id) VALUES(1, '张三', '女', 1);
INSERT INTO student (sid, sname, gender, class_id) VALUES(2, '李四', '女', 1);
INSERT INTO student (sid, sname, gender, class_id) VALUES(3, '王五', '男', 2);
INSERT INTO student (sid, sname, gender, class_id) VALUES(4, '张三', '男', 3);
有两种执行方式,一种是在数据库中执行,另一种是在命令行中执行。
首先我们打开命令行通过客户端连接mysql服务器,输入如下命令执行sql脚本,格式为source 【sql脚本文件路径全名】。
source test.sql
首先我们打开命令行,输入如下的命令执行sql脚本,格式为mysql –u用户名 –p密码 –D数据库<【sql脚本文件路径全名】。
注意:如果在sql脚本文件中使用了use 数据库,则-D数据库选项可以忽略。
mysql -uroot -p123456 <test.sql
执行完成,查看最终的结果。
D:\test>mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 60
Server version: 8.0.33 MySQL Community Server - GPL
Copyright (c) 2000, 2023, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> use school;
Database changed
mysql> select * from student;
+-----+-------+--------+----------+
| sid | sname | gender | class_id |
+-----+-------+--------+----------+
| 1 | 张三 | 女 | 1 |
| 2 | 李四 | 女 | 1 |
| 3 | 王五 | 男 | 2 |
| 4 | 张三 | 男 | 3 |
+-----+-------+--------+----------+
4 rows in set (0.00 sec)
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- ryyc.cn 版权所有 湘ICP备2023022495号-3
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务