问题1:如何清空数据库所有表的数据,只保留表结构?
步骤一:执行脚本,查找此数据库包括的所有表
select CONCAT('truncate TABLE ',table_schema,'.',table_name) from information_schema.TABLES where table_schema ='test数据库名';
步骤二.将查询到的结果全选,复制到txt文档中,保存成.sql文件
步骤三.导入此脚本,可以清空此表数据。如果执行失败,是表之间存在关联关系,存在关联关系的表数据先不清空。
truncate TABLE shnh0428.act_evt_log;
DELETE FROM sys_alarm WHERE START_DATE<'2021-07-26';
问题2:如何对数据库的json串的某个字段进行更新
UPDATE bi_port_instance set SPECIAL_STR = json_set(SPECIAL_STR,"$.portNum",'32') where SPECIAL_STR = json_set(SPECIAL_STR,"$.portNum",'50032') and ASSTS_ID='C2C78285F90A4F3A93006FE916866055';
update 表名 set 字段名=json_set(字段名,“$.特定名”,‘改成啥’) where 条件
将某一字段全部改成小写 UPDATE st_position_region(表名) SET ID(字段名) = LOWER(ID) ; 将某一字段全部改成大写 :UPPER
常用的查询语句:
SELECT 字段名 FROM 表1,表2 … WHERE 表1.字段 = 表2.字段 AND 其它查询条件GROUP BY 字段名 HAVING COUNT(字段名)>1。
常用备份数据sql语句如下:
备份整个数据库:
mysqldump -u root -h host -p dbname > backdb.sql
备份数据库中的某个表:
mysqldump -u root -h host -p dbname tbname1, tbname2 > backdb.sql
备份多个数据库:
mysqldump -u root -h host -p --databases dbname1, dbname2 > backdb.sql
问题3:查询bi_assets表中基础设施的全部数据,有关联表bi_equipment_lib的FIRST_TYPE='基础设施'
select bi.* FROM bi_equipment_lib bel
LEFT JOIN bi_assets bi on bel.ID = bi.EQUIP_LIB_ID
where bel.FIRST_TYPE = '基础设施' and bi.ACTIVE_FLAG=1
如何删除查询到的数据?
问题4:如何导出数据库表名及对应的注释?
(1)(mysql)
SELECT
TABLE_NAME 表名,
TABLE_COMMENT 表名注释
FROM
information_schema.`TABLES`
where table_schema = 'dcim4_yc'
(2)如何导出数据库表名及对应的注释?(postgresql)
select relname as tabname,cast(obj_description(relfilenode,'pg_class') as varchar) as comment from pg_class c
where relname in (select tablename from pg_tables where schemaname='public' and position('_2' in tablename)=0);
select * from pg_class;
问题5:数据库连接失败。因为项目统一修改的dev的配置文件
问题6:查看数据库的编码格式: show variables like '%CHARACTER%'
问题4:查看数据库版本?
(1)mysql -V (2)mysql --version (3)mysql -u root -p输入root密码bai进去即可查看
数据库版本问题:MySQL-this is incompatible with sql_mode=only_full_group_byhttps://blog.csdn.net/Number_oneEngineer/article/details/111606908?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-0&spm=1001.2101.3001.4242
问题5:安装postgrepsql数据库,出现的问题及解决方法
1.查看postgrepsql的版本命令:pg_dump -v;
2.备份数据库出现与服务器数据库不一致的情况;
图1
PostgreSQL 9.6
第一步:添加RPM源,获取下载地址
PostgreSQL官网地址:https://yum.postgresql.org/
https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
PS:如果安装过程出现错误,或提示已加载,但是无法提示没有相关依赖包,则可以先清除yum缓存清理yum缓存:yum clean的参数有headers, packages, metadata, dbcache, plugins, expire-cache, rpmdb, all
yum clean headers #清理/var/cache/yum的headers清理
yum clean packages #清理/var/cache/yum下的软件包
yum clean metadata
rpm -aq| grep postgres