Files
mayfly-go/server/internal/db/dbm/sqlparser/sqlparser_test.go

38 lines
1.2 KiB
Go
Raw Normal View History

2024-10-18 12:32:53 +08:00
package sqlparser
import (
"fmt"
"strings"
"testing"
)
func TestSQLSplit(t *testing.T) {
allsql := `
/*删除*/
DELETE FROM t_sys_log
WHERE
2024-10-18 17:15:58 +08:00
id IN (59) and name='哈哈哈' and name2="hahah;呵呵呵;";delete form tsyslog;
2024-10-18 12:32:53 +08:00
-- alter sql语句
ALTER TABLE mayfly_go.t_sys_log
DROP COLUMN delete_time;
--插入sql语句
INSERT INTO t_sys_log VALUES(15, 2, '用户登录', '{"ip":"::1 ",\\n"username":"test_user"}', 'errCode: 401, errMsg: --您的密码安全等级较低请修改后重新登录', '-', 0, '2024-04-23 20:00:35', 0, NULL, '');
--插入sql语句
INSERT INTO t_sys_log VALUES(15, 2, '用户登录', NULL, ' 成孔 砼浇筑 桩头掏渣 桩基检测配合;
其他工作 甲方现场要求乙方完成的其它临时工作', '{"ip":"::1 ","username":"test_user"}', 'errCode: 401, errMsg: 您的密码安全等级较低请修改后重新登录;\n信息嘻嘻嘻', '-', 0, '2024-04-23 20:00:35', 0, NULL, '');
`
2024-10-18 17:15:58 +08:00
err := SQLSplit(strings.NewReader(allsql), ';', func(sql string) error {
2024-10-18 12:32:53 +08:00
// if strings.Contains(sql, "INSERT") {
// return fmt.Errorf("不能存在INSERT语句")
// }
fmt.Println(sql)
fmt.Println()
return nil
})
if err != nil {
t.Fatal(err)
}
}