欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > MySQL笔记

MySQL笔记

2025/3/28 12:58:04 来源:https://blog.csdn.net/qq_43780885/article/details/146399547  浏览:    关键词:MySQL笔记

目录

  • 一、基本语句
      • 1、建表
      • 2、新增
      • 3、查询
      • 4、修改
      • 5、删除
  • 二、存储过程
      • 1、新建
      • 2、执行
  • 三、数据库配置远程连接
      • 1、登录数据库:
      • 2、先创建用户
      • 3、再分配权限:
      • 4、刷新权限
      • 5. 测试连接

一、基本语句

1、建表

-- 创建 users 表
CREATE TABLE users (user_id INT AUTO_INCREMENT PRIMARY KEY,username VARCHAR(50) NOT NULL,email VARCHAR(100) NOT NULL UNIQUE,created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);-- 创建 orders 表
CREATE TABLE orders (order_id INT AUTO_INCREMENT PRIMARY KEY,user_id INT,order_date DATE NOT NULL,total_amount DECIMAL(10, 2) NOT NULL
);

2、新增

-- 插入用户数据
INSERT INTO users (username, email) VALUES
('Alice', 'alice@example.com'),
('Bob', 'bob@example.com');-- 插入订单数据
INSERT INTO orders (user_id, order_date, total_amount) VALUES
(1, '2023-10-01', 100.00),
(2, '2023-10-02', 200.00);

3、查询

-- 查询用户及其订单
SELECT u.username, o.order_id, o.order_date, o.total_amount
FROM users u
JOIN orders o ON u.user_id = o.user_id;

4、修改

--更新数据
UPDATE Users SET UserName = @UserName, Email = @Email WHERE UserID = @UserID

5、删除

--删除数据
DELETE FROM Users WHERE UserID = @UserID-- 删除表
DROP TABLE orders;

二、存储过程

1、新建

--存储过程-查询所有订单
CREATE DEFINER=`root`@`localhost` PROCEDURE `GetUserOrders`()
BEGINSELECT u.username, o.order_id, o.order_date, o.total_amountFROM users uJOIN orders o ON u.user_id = o.user_id;
END--存储过程-根据 姓名 查询订单
CREATE DEFINER=`root`@`localhost` PROCEDURE `GetUserOrdersByName`(IN iName varchar(50))
BEGINSELECT u.username, o.order_id, o.order_date, o.total_amountFROM users uJOIN orders o ON u.user_id = o.user_idWHERE username = iname;
END

2、执行

--执行存储过程
CALL GetUserOrders();CALL GetUserOrdersByName('Bob');

三、数据库配置远程连接

1、登录数据库:

win+r,输入cmd,输入命令:
mysql -uroot -p 
输入数据库登录密码:

在这里插入图片描述

2、先创建用户

CREATE USER 'root'@'%' IDENTIFIED BY '1234';
  • 将 your_password 替换为你想要设置的密码。
  • ‘root’@‘%’ 表示允许 root 用户从任何主机连接。如果只想允许特定主机(如 192.168.9.213),可以将 % 替换为 192.168.9.213。

3、再分配权限:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
  • ALL PRIVILEGES 表示授予所有权限。
  • 其中*.* 表示所有数据库和所有表。
  • WITH GRANT OPTION 表示允许用户将自己的权限授予其他用户。

4、刷新权限

FLUSH PRIVILEGES;

5. 测试连接

完成上述步骤后,重新“测试连接”,成功连接。
在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词