zoukankan      html  css  js  c++  java
  • MySQL CRUD使用之小总结

    总结一下最近碰到的一些关于MySQL CRUD方面的语句。

    • 在使用pymysqlexecutemany方法时,需要注意的几个问题:

      1、在写sql语句时,不管字段为什么类型,占位符统一使用%s,且不能加上引号。例如:

      sql="insert into tablename (id,name) values (%s,%s)"
      

      2、添加的数据的格式必须为list[tuple(),tuple(),tuple()]或者tuple(tuple(),tuple(),tuple())。例如:

      values=[(1,"zhangsan"),(2,"lisi")]或者values=((1,"zhangsan"),(2,"lisi"))
      

      3、最后,通过executemany插入cursor.executemany(sql,values)

    • mysql从两个表中找出相同记录的数据并把两个表中的数据都删除掉

      delete table1,table2 from table1 left join table2 on table1.id=table2.id where table1.id=1
      
    • mysql在一个表中新增一个字段(字段名后面增加一个字段名1):

      alter table 表名 add 字段名1 varchar(255) after 字段名;
      
    • mysql格式化某个字段的日期:

      select DATE_FORMAT(出生日期, "%Y-%m-%d") as 出生日期 from 表名 where id=1;
      
    • mysql替换一个表中某个字段存在的空格:

      update 表名 set content = replace(content, ' ', '');
      
    • mysql查询 24 小时内的sql语句:

      select * from 表名 where 创建时间 >=(NOW() - interval 24 hour);
      
    • mysql查询某一个数据库的某个表中的字段名

      select table_name, column_name, data_type, character_maximum_length, column_comment
      from information_schema.`COLUMNS` 
      where table_schema = '数据库名' 
        and table_name = '表名'
      order by ordinal_position;
      

          补充-->
          在涉及到需要批量更新数据比较困难时,可以先删除旧的数据,然后插入新的数据,这是一种思路。注意:

    • 在删除主表中的含有外键的记录时,需要先删除从表的这条外键所在记录,然后删除主表中的这条记录就OK了。
    • 而在插入新的记录时,应该先再主表中插入记录,然后在从表中插入记录就OK。

          后续碰到其他会陆续更新。

    转载请备明出处:洪荒少男~

  • 相关阅读:
    linux下shell显示-bash-4.1#不显示路径解决方法
    update chnroute
    An error "Host key verification failed" when you connect to other computer by OSX SSH
    使用dig查询dns解析
    DNS被污染后
    TunnelBroker for EdgeRouter 后记
    mdadm详细使用手册
    关于尼康黄的原因
    Panda3d code in github
    Python实例浅谈之三Python与C/C++相互调用
  • 原文地址:https://www.cnblogs.com/sirxy/p/11226125.html
Copyright © 2011-2022 走看看