2023年8月3日发(作者:)
SQL的更新和删除
1、SQL更新数据关键字:UPDATE⽅式:有两种⽅式进⾏更新更新表中指定的⾏更新表中所有的⾏⽰例:UPDATE table_nameSET some_column = 'some_value',other_column = 'other_value'WHERE unique_column = 'unique_value' 上述⽰例⽰更新指定⾏,若想更新所有的⾏,那么去掉WHERE⼦句即可。为了数据的安全性,最好是添加WHERE⼦句。-- UPDATE与SELECT结合使⽤UPDATE table_nameSET (column1, column2, column3) = (SELECT col1, col2 FROM other_table_nameWHERE some_col = 'some_value')WHERE some_column = 'other_value';-- UPDATE与FROM结合使⽤(要看DBMS是否⽀持)UPDATE table_name AS t1SET col1 = 1, col2 = 2FROM other_table_name AS t2WHERE _col = _col;-- UPDATE与JOIN结合使⽤UPDATE t1 INNER JOIN t2 ON 1 = 1SET _col = 'some_col_value', _col = 'other_col_value'WHERE ion_col = 'condition_value';UPDATE t1 LEFT JOIN t2 ON 1 = 1SET _col = 'some_col_value', _col = 'other_col_value'WHERE ion_col = 'condition_value'; 2、SQL删除数据关键字:DELETE FROM,某些SQL实现中,可以省略FROM关键字,不过建议还是提供FROM关键字⽅式:有两种删除⽅式删除指定的⾏删除所有的⾏⽰例:DELETE FROM table_nameWHERE some_col = 'some_value'; DELETE语句不需要指出列名或者通配符,若没有指定WHERE关键字,那么是删除所有的⾏。其实,若想删除表中所有⾏,不要使⽤DELETE,可以使⽤TRUNCATE TABLE语句,它完成相同的⼯作,并且速度要快,因为它不记录数据的变动。 3、SQL更新和删除操作原则除⾮更新或者删除所有⾏,否则的话必须使⽤WHERE⼦句。保证每个表都有主键。在更新或者删除之前,最好是先SELECT检索指定的数据,保证WHERE⼦句过滤的数据正确。使⽤强制实施引⽤完整性的数据库,以防误删与其他表相关联的数据。DMBS应该约束防⽌不带WHERE⼦句的更新或删除操作。
2023年8月3日发(作者:)
SQL的更新和删除
1、SQL更新数据关键字:UPDATE⽅式:有两种⽅式进⾏更新更新表中指定的⾏更新表中所有的⾏⽰例:UPDATE table_nameSET some_column = 'some_value',other_column = 'other_value'WHERE unique_column = 'unique_value' 上述⽰例⽰更新指定⾏,若想更新所有的⾏,那么去掉WHERE⼦句即可。为了数据的安全性,最好是添加WHERE⼦句。-- UPDATE与SELECT结合使⽤UPDATE table_nameSET (column1, column2, column3) = (SELECT col1, col2 FROM other_table_nameWHERE some_col = 'some_value')WHERE some_column = 'other_value';-- UPDATE与FROM结合使⽤(要看DBMS是否⽀持)UPDATE table_name AS t1SET col1 = 1, col2 = 2FROM other_table_name AS t2WHERE _col = _col;-- UPDATE与JOIN结合使⽤UPDATE t1 INNER JOIN t2 ON 1 = 1SET _col = 'some_col_value', _col = 'other_col_value'WHERE ion_col = 'condition_value';UPDATE t1 LEFT JOIN t2 ON 1 = 1SET _col = 'some_col_value', _col = 'other_col_value'WHERE ion_col = 'condition_value'; 2、SQL删除数据关键字:DELETE FROM,某些SQL实现中,可以省略FROM关键字,不过建议还是提供FROM关键字⽅式:有两种删除⽅式删除指定的⾏删除所有的⾏⽰例:DELETE FROM table_nameWHERE some_col = 'some_value'; DELETE语句不需要指出列名或者通配符,若没有指定WHERE关键字,那么是删除所有的⾏。其实,若想删除表中所有⾏,不要使⽤DELETE,可以使⽤TRUNCATE TABLE语句,它完成相同的⼯作,并且速度要快,因为它不记录数据的变动。 3、SQL更新和删除操作原则除⾮更新或者删除所有⾏,否则的话必须使⽤WHERE⼦句。保证每个表都有主键。在更新或者删除之前,最好是先SELECT检索指定的数据,保证WHERE⼦句过滤的数据正确。使⽤强制实施引⽤完整性的数据库,以防误删与其他表相关联的数据。DMBS应该约束防⽌不带WHERE⼦句的更新或删除操作。
发布评论