CRUD小技巧
sql:
sql小知识:
1、深入理解SQL中where 1=1的用处:
1、where的条件永远为真
select from table1 where 1=1 与select from table1 完全没有区别,甚至还有其他许多写法, 1<>2,‘a’=’a’,‘a’<>’b’,
其目的就只有一个,where 的条件为永真,得到的结果就是未加约束条件的在SQL注入时会用到这个,例如
select * from table1 where name=’lala’
给强行加上
select * from table1 where name=’lala’ or 1=1
这就又变成了无约束的查询了。
2、在后台写不定数量的查询就使用到,便于规范语句
在后台写不定数量的查询的字段的时候:
在不使用where 1=1的情况下
if(params.containsKey(“name”)){
String key = params.get(“name”).toString();
sql+=”where a.name=’”+key +”‘“;
}
if(params.containsKey(“age”)){
String key = params.get(“age”).toString();
sql+=”where a.age=’”+key +”‘“;
}
if(params.containsKey(“class “)){
String key = params.get(“class “).toString();
sql+=”where a.class =’”+ke
当时用where 1=1 的时候
String sql = “select * from table a where 1=1”;if(params.containsKey(“name”)){
String key = params.get(“name”).toString();
sql+=” and a.name=’”+key +”‘“;
}
if(params.containsKey(“age”)){
String key = params.get(“age”).toString();
sql+=” and a.age=’”+key +”‘“;
}
if(params.containsKey(“class “)){
String key = params.get(“class “).toString();
sql+=” and a.class =’”+key +”‘“;
}
2、第二种解决方式:
1 | ``` java |
sql去除重复的数据:
(29条消息) 【mysql】mysql删除重复记录并且只保留一条_千千-CSDN博客
1 | DELETE |
现确定重复的值,以及确定数据的组件,留下最小的值 。
sql in()中字段串分割:
1 | /** |
sql sever 小知识:
多个字段查寻
1 | #sql ("plantDoinfoList") |
1、null isnull
SQL Serve中的isnull()函数:
isnull(value1,value2)
1、value1与value2的数据类型必须一致。
2、如果value1的值不为null,结果返回value1。
3、如果value1为null,结果返回vaule2的值。vaule2是你设定的值。
1 | 例如:select isnull(fs,6) from xuesheng where name='张三' 在表xuesheng中,fs分数如果为空,结果输出8。如果不为空,输出fs |
的值。
同时要注意,在sql server中字段为空的写法,select name,fs from xuesheng where name is null\is not null 而不是name=null、name=' '
*Mysql的ifnull()函数:*
ifnull(value1,value2)
1、如果value1不为空,结果返回value1。
2、如果value1为空,结果返回value2。同上
sqlserver 备份还原:
备份:
[怎么备份SQL Server 2008数据库-百度经验 (baidu.com)](https://jingyan.baidu.com/article/cdddd41c62cc3d53ca00e15a.html#:~:text=在使用服务器的时候,我们需要定时的备份数据库来防止数据的丢失,下面为大家介绍怎么备份SQL Server 2008 数据库。 在开始菜单中点击”SQL,Server Management Studio”在弹出的界面点击连接,在数据库选项中选择需要备份的数据库文件,然后右击选择”任务”中的”备份” 在出现的界面中点击文件夹后面的”…”选择按钮。 在出来的界面中就可以看到备份文件的名称以及路径了。)
还原:
(4条消息) sqlserver 2008导入备份数据库_jzhou_0808的博客-CSDN博客_sqlserver导入备份数据库
【问题&解决】还原数据库提示“介质集有2个介质簇,但只提供了1个。必须提供所有成员”的解决办法 - 叶超Luka - 博客园 (cnblogs.com)