当前位置: 首页 > wzjs >正文

周口公司做网站做网站的励志故事

周口公司做网站,做网站的励志故事,厦门建设企业网站,免费苏州企业名录本文是博主在部署项目时发现的一个小技巧,项目部署在 Linux 虚拟机上,数据库被设置了写权限,作为开发只能使用程序对数据库做增删改查,但是在开发测试阶段会出现很多问题,权限的问题大大降低了开发效率,所以…

Linux
本文是博主在部署项目时发现的一个小技巧,项目部署在 Linux 虚拟机上,数据库被设置了写权限,作为开发只能使用程序对数据库做增删改查,但是在开发测试阶段会出现很多问题,权限的问题大大降低了开发效率,所以这个技巧会提高开发效率。


文章目录

    • 1、项目依赖和代码
    • 2、设置两条 SQL语句
    • 3、SQL 语句改造
    • 4、注意事项
    • 5、扩展修改数据库表结构语句

1、项目依赖和代码


首先要部署项目确认是否可以使用 curl

本次项目是使用 SpringBoot 3 项目,使用方法调用 SQL 语句需要以下依赖:

<dependencies><!-- Spring Boot Web --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- MyBatis-Plus --><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-spring-boot3-starter</artifactId></dependency><!-- MySQL 驱动 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency></dependencies>   

核心代码如下:


package cn.com.wind.server.controller;import cn.com.wind.IMStarter.common.Response;
import lombok.extern.slf4j.Slf4j;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;@Slf4j
@RestController
@RequestMapping("/system")
public class SystemController {private final JdbcTemplate jdbcTemplate;public SystemController(JdbcTemplate jdbcTemplate) {this.jdbcTemplate = jdbcTemplate;}@GetMapping("/operateDataBase")public Response<?> operateDataBase(@RequestParam("sql") String sql) {Map<String, Object> response = new HashMap<>();try {int result = jdbcTemplate.update(sql);response.put("status", "success");response.put("affectedRows", result);return Response.success(response);} catch (Exception e) {response.put("status", "error");response.put("message", e.getMessage());return Response.fail(400, "SQL 执行出错");}}
}

2、设置两条 SQL语句

使用数据库表 user_role,在 user_database 下,表格字段有三个 uidnamerole,下面使用来个常见的语句作为解析:

INSERT INTO user_database.user_role (uid, role) VALUES (100100, 0)
UPDATE user_database.user_role SET role=2 WHERE uid=100100

在 Linux 中使用 curl 要注意有些字符会被 Base 解释器解释错误,需要进行转译。

假设访问 IP 地址和端口如下所示:

http://localhost:8086/system/operateDataBase?sql=' ' 

3、SQL 语句改造


第一条 INSERT 语句如下:

curl 'http://localhost:8086/system/operateDataBase?sql=INSERT%20INTO%20user_database.user_role%20(uid, role)%20VALUES%20(110359024,0)'

后半部分如下:

INSERT%20INTO%20user_database.user_role%20(uid,role)%20VALUES%20(110359024,0)

第二条 UPDATE 语句如下:

curl 'http://localhost:8086/system/operateDataBase?sql=UPDATE%20user_database.user_role%20SET%20role=2%20WHERE%20uid=100100'

后半部分如下:

UPDATE%20user_database.user_role%20SET%20role=2%20WHERE%20uid=100100

4、注意事项

首先,语句中的空格要做对应的解析,user_database.user_role 这里面的 . 可以不使用转译字符代替。

  • %20:空格
  • %2E.
  • %27' ,最外层的地方的单引号不需要转译。

另外,在 curl 命令中,URL 中的 括号逗号 不需要特别编码,但为了确保命令在 Bash 中正确解析,建议使用 单引号双引号 将整个 URL 包裹起来。这样可以避免 Bash 对括号和逗号进行特殊处理。

  • 单引号可以防止 Bash 对括号和逗号进行特殊处理。这是最简单和最安全的方法。
  • 双引号也可以防止 Bash 对括号和逗号进行特殊处理,但需要注意 URL 中的特殊字符(如 $)可能会被 Bash 解释。

我个人使用的单引号,可以满足使用要求。

在 INSERT 语句中,有的朋友喜欢在 后面加一个空格,或者 = 后面加一个空格,这个时候也是需要使用 %20 转译。

INSERT%20INTO%20user_database.user_role%20(uid,%20role)%20VALUES%20(110359024,%200)
UPDATE%20user_database.user_role%20SET%20role%20=%202%20WHERE%20uid%20=%20100100

由于操作的数据库权限等级很高,建议使用者现在本地数据库做测试。

通过以上方法,你应该能够成功发送 curl 请求,而不会遇到 Bash 语法错误。


5、扩展修改数据库表结构语句


现阶段数据库表 user_database.user_role 只有 uid 一个主键,要将表中的 role 字段与现有的 uid 字段一起设置为主键,可以使用 ALTER TABLE 语句来修改表结构。

  • 删除现有的主键:如果 uid 已经是主键,首先需要删除现有的主键。
    ALTER TABLE user_database.user_role DROP PRIMARY KEY;
    
  • 添加新的复合主键:将 uidrole 一起设置为复合主键。
    ALTER TABLE user_database.user_role ADD PRIMARY KEY (uid, role);
    
  • 设置 role 不能为空
    ALTER TABLE private_quotation_db.user_role MODIFY role INT NOT NULL;
    

对应的 curl 命令

  • 删除现有的主键

    curl 'http://localhost:8086/system/operateDataBase?sql=ALTER%20TABLE%20user_database.user_role%20DROP%20PRIMARY%20KEY'
    
    ALTER%20TABLE%20user_database.user_role%20DROP%20PRIMARY%20KEY
    
  • 添加新的复合主键

    curl 'http://localhost:8086/system/operateDataBase?sql=ALTER%20TABLE%20user_database.user_role%20ADD%20PRIMARY%20KEY%20(uid,%20role)'
    
    ALTER%20TABLE%20user_database.user_role%20ADD%20PRIMARY%20KEY%20(uid,%20role)
    
  • 设置 role 不能为空

    curl 'http://localhost:8086/system/operateDataBase?sql=ALTER%20TABLE%20user_database.user_role%20MODIFY%20role%20INT%20NOT%20NULL'
    
    ALTER%20TABLE%20user_database.user_role%20MODIFY%20role%20INT%20NOT%20NULL
    

相信大家看完这篇内容之后,应该会使用这个技巧了,具体的语句不会写可以问以下对应的 AI 软件,祝大家开发愉快。


文章转载自:

http://cmUmfa59.qLckc.cn
http://OaOx7NZb.qLckc.cn
http://oCBlqzgD.qLckc.cn
http://l4fVYdeO.qLckc.cn
http://cZgxRcGY.qLckc.cn
http://vQHKpzPL.qLckc.cn
http://ODi0eHAI.qLckc.cn
http://sxEjEtKn.qLckc.cn
http://8gjQzU5n.qLckc.cn
http://1jD0mm7f.qLckc.cn
http://VQOYGo9Y.qLckc.cn
http://FXneP4jW.qLckc.cn
http://40NGx1vN.qLckc.cn
http://okDe2kPb.qLckc.cn
http://ojLhXKUN.qLckc.cn
http://6GQCtR1T.qLckc.cn
http://33gtrk3e.qLckc.cn
http://zKGKysWX.qLckc.cn
http://eYqC1T8V.qLckc.cn
http://RHE0muqK.qLckc.cn
http://o97R8caf.qLckc.cn
http://OBTmVVQt.qLckc.cn
http://C7PZbU6z.qLckc.cn
http://Lukn9HdS.qLckc.cn
http://DFA8Oiz4.qLckc.cn
http://RdhhhE35.qLckc.cn
http://VjyqnQym.qLckc.cn
http://ReKcKph9.qLckc.cn
http://l5bHjQbA.qLckc.cn
http://UU5QTazp.qLckc.cn
http://www.dtcms.com/wzjs/779668.html

相关文章:

  • 深圳最好的营销网站建设公司排名网站里的动画是什么软件做的
  • 合肥网站建站报广告代理唐山网站建设维护
  • 建筑工程素材资源网站电子商务平台内的自然人经营者
  • dedecms做的系统网站主页是哪一个文件门户网站架构
  • 南昌外包建站Wordpress用七牛云存储
  • 网站广告位外链建设对网站的影响
  • 宁波找网站建设企业微信开发者工具教程实例
  • 网站到期请续费泉州服装电商网站建设
  • 深圳专业软件网站建设seo的内容怎么优化
  • 建设网站找谁大气网站首页
  • 国内医院网站开发现状wordpress采集公众号图片
  • 工艺品网站模板下载-古色古香科技小论文怎么写
  • qq空间钓鱼网站制作网站在建设是什么意思
  • 建设168网站wordpress+导入+媒体
  • 廉江网站建设公司南宁外贸网站建设
  • 西安做一个企业网站要多少钱济南手机网站建设公司排名
  • 专业开发网站企业昆明短视频运营公司
  • 锦州市网站建设西宁最好网站建设公司哪家好
  • 重庆酉阳网站设计公司东莞横沥三江工业区
  • 求个免费网站好人有好报wordpress 文章访问量
  • 做足球预测的网站资源网站优化排名网站
  • 建立门户网站多少钱域名服务器ip查询
  • 食品公司网站设计项目风云榜百度
  • win7怎么做网站服务器手机网站开发算什么费用
  • 计算机网站开发方向高端品牌网站建设的目的
  • 投资建设网站网站如何备案工信局
  • 东莞整合网站建设手机wordpress上传失败
  • 宝塔软件怎么做网站php网站如何上传数据库
  • 重庆南川网站制作公司推荐高端的网站建设怎么做
  • 个人博客网站模板下载wordpress 登录页面变了