• sql表的相关操作


    表

    创建数据表及内容格式(表名区分大小写)

    1. create table t1(id int, name varchar(20));
    2. #创建表后,数据表中会多两个文件,(table名)t1.frm,存放表结构(frame),t1.abd存放表索引和数据,以为使用的时innodb data存储引擎(软件,用来存取数据,在内存和磁盘之间)
    3. #varchar表示字符数据,但是VARCHAR可以保存可变长度的字符串,后面(20)是代表字符串的长度
    4. MariaDB [sanchaung]> create table t2 (id int ,name varchar(20)) engine=myisam;
    5. #指定引擎
    6. [root@localhost sanchaung]# ls
    7. t2.frm t2.MYD t2.MYI
    8. #frm存放表结构
    9. #MYD存放数据 data myisam
    10. #MYI存放索引 index
    11. ​
    12. #创建临时表,show tables不会显示
    13. create temporary table sanchaung(id int);
    14. #查询临时表
    15. select * from sanchuang;
    16. #插入数据
    17. insert into sanchuang(id) calues(1),(2),(3)

    临时表的特点

    show tables是看不到的,只能当前的终端用户可以使用,其它的终端用户不能看到,Mysql给每个登陆的用户创建了一个session,临时表是隔离的,当用户退出mysql时临时表会被删除,临时表一般都是放在内存里面。

    innodb存储引擎的特点:支持事物,支持行级别的锁(一行一行的锁),支持外键

     

    根据已有的表创建新表

     

    1. MariaDB [mysql]> create table sancahung.user like mysql.user;
    2. #根据mysql的user表新建sancahung的user表,有框架,没有内容
    3. ​
    4. MariaDB [mysql]> create table user2 as select user,host from mysql.user;
    5. MariaDB [mysql]> select * from user2;
    6. +-------+-----------------------+
    7. | user | host                 |
    8. +-------+-----------------------+
    9. | ;oijc | %                     |
    10. | lhc   | %                     |
    11. | liuhc | %                     |
    12. | yxc   | %                     |
    13. | root | 127.0.0.1             |
    14. | root | ::1                   |
    15. |       | localhost             |
    16. | root | localhost             |
    17. |       | localhost.localdomain |
    18. | root | localhost.localdomain |
    19. +-------+-----------------------+
    20. #根据已有的表创建新表,可以指定字段保存表里面的哪些内容

    显示数据表

    MariaDB [sanchaung]> show tables;

    数据表插入内容

    1. MariaDB [song]> insert into t8(id,salary,name) values(123,200000.2,'cali');
    2. Query OK, 1 row affected (0.03 sec)
    3. ​
    4. MariaDB [song]> select * from t8;
    5. +------+-----------+------+
    6. | id   | salary   | name |
    7. +------+-----------+------+
    8. |  123 | 200000.20 | cali |
    9. +------+-----------+------+

    查看数据表的内容

    1. MariaDB [song]> select * from t6;
    2. +------+-----------+
    3. | id   | salary   |
    4. +------+-----------+
    5. |    1 | 200000.12 |
    6. +------+-----------+

    查看数据表的内容格式(列名不区分大小写)

    1. MariaDB [sanchaung]> desc t1;
    2. +-------+-------------+------+-----+---------+-------+
    3. | Field | Type       | Null | Key | Default | Extra |
    4. +-------+-------------+------+-----+---------+-------+
    5. | id   | int(11)     | YES |     | NULL   |       |
    6. | name | varchar(20) | YES |     | NULL   |       |
    7. +-------+-------------+------+-----+---------+-------+

    统计表内数据大小

    1. MariaDB [song]> select id,salary,length(name),char_length(name) from t8;
    2. +------+-----------+--------------+-------------------+
    3. | id   | salary   | length(name) | char_length(name) |
    4. +------+-----------+--------------+-------------------+
    5. |  123 | 200000.20 |            4 |                 4 |
    6. +------+-----------+--------------+-------------------+
    7. #length 是在内存中占几个字节
    8. #char_length 是有多少个字符

     

    统计表内列字段的包含内容的数量count

    1. #格式 select count(字段名) from 表名;
    2. select count(id) from sc;
    3. #查看sc表的id列有多少个数据
    4. select count(*) from sc:
    5. #统计sc表中有多少行

    统计表内列字段内容的总和sum

    1. #格式 select sum(字段名) from 表名;
    2. select sum(amount) from pen;
    3. #查看pen表中amount字段这一列数据的总和

    统计表内列字段内容的平均avg

    删除表

    drop table 表名 

    删除表中的行

    delete from 表名 where 字段名=要删除的字段

    delete和truncate 的区别?

    1. delete删除表里的数据的时候是一行一行的删除,删除后会产生二进制日志,可以根据日志恢复。

    2. truncate删除数据特别快,整个表锁定操作然后删除,不会记录二进制日志,不能恢复,一般用来删大表

    3.  

    查看警告信息

    show warnings;
  • 相关阅读:
    HttpServlet学习中的常见问题(个人珍藏笔记)
    MySQL学习笔记24
    电容笔和Apple pencil有什么区别?Ipad好用电容笔排行榜
    MySQL进阶篇4——锁+InnoDB引擎+MySQL管理
    物联网 MQTT 协议
    C 风格文件输入/输出---直接输入/输出---(std::fread)---(std::fwrite)
    智能合约,数据资产变现金的一把金钥匙?
    STM32H7 Azure RTOS
    TDengine支持多种写入协议,四种写入方式提效大全
    2014-2020年国有大型商业银行和全国股份制商业银行绿色信贷数据
  • 原文地址:https://blog.csdn.net/a1991376352/article/details/125608498