场景
在winform中连接mysql数据库并执行相应的sql,需要判断sql字符串中是否指定的字符串比如
删表的关键字drop database等,而且还得不区分大小写,即包含大写和小写的都不被允许。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
1、通过ToLower()将要比较的字符串全部转换为小写,然后进行比较
通过字符串的Contains方法判断字符串中是否包含另一个字符串。
sql.ToLower().Contains(arr.ToLower())
2、完整示例方法
public static bool checkSql(string sql)
{
bool isRight = true;
string[] notAllowKeyWords = { "drop", "drop database" , "drop table" , "truncate", "alter","rename" , "create" };
for (int i = 0; i < notAllowKeyWords.Length; i++)
{
string arr = notAllowKeyWords[i];
if (sql.ToLower().Contains(arr.ToLower())) {
isRight = false;
}
}
return isRight;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/136091.html