首页 > 数据库 >针对表的SQL语句、针对记录的SQL语句、存储引擎、数据类型、创建表的完成语法

针对表的SQL语句、针对记录的SQL语句、存储引擎、数据类型、创建表的完成语法

时间:2023-07-11 16:22:39浏览次数:41  
标签:语句 int create SQL 数据类型 t1 表名 table id

针对表的SQL语句

  有表的前提是先有库

什么是表?

  表相当于文件,表中的一条记录就相当于文件的一行内容,不同的是,表中的一条记录有对应的标题,称为表的字段

select database();查看当前所在库

use   库名; 使用库

1.查看表

  show tables;查看那所有表

  show create table  t1;查看表结构

  describe t1;格式化之后的表结构

  desc t1;同上

2.创建表

  create table t1 (id int,name varchar(20),age int);

3.修改表

  alter table 旧表名 rename 新表名

4.删除表

  drop table  表名;

针对记录的SQL语句

select、insert、update、delete

1. 查看表中的数据

  select * from t1;

  select id from t1;

  select id ,name from t1;

  select id,name,age from t1;

2.增加数据

  insert into t1 values (1,‘kevin’,18);单条增加数据,并且是全字段增加

  insert  into t1  values (2,‘tank’,20),(3,‘oscar’,21),(4,‘jack’,22);

  insert into t1 (id ,name)values (5,‘jerry’);

3.修改数据

  update 表名 set 字段名=‘字段值’where 条件;

  update t1 set name=‘kevin’ where age=18;

  update t1 set name=‘jason1’ , age=19 where id=2;

  update t1 set name=‘jason’,age=20,k=v,k1=v1 where id=3

  update t1 set name=‘aaa’,全表改 ,工作不能使用

4.删除数据

  delete from t1 where id=1

  delete from t1 where id=1 and name=‘kevin’;

存储引擎

  存储数据的方式

MySQL 中有哪些存储方式

  show engines;或者 show engines\G

  总共支持九种存储引擎

需要掌握:

  myisam:它是MySQL5.5以前的版本默认的存储引擎,它的存取速度更快,但数据相对innodb不够安全

  innodb;它是MySQL5.6以前的版本默认的存储引擎,他的存取速度相对于myisam更慢,但数据相对于更安全

需要了解:

  memory:他的数据在内存中存储,断电数据丢失

验证以上三者存储引擎所产生文件;

create table t2 (id int)engine=MyISAM

create table t3 (id int)engine=InnoDB

create table t4 (id int)engine=MEMORY

  MyISAM:

   产生三个文件

   .frm:这个文件存表结构

   .MYD:这个文件存数据

   .MYI:这个文件存数据索引 index》》类似于书的目录》》加快查询速度

  InnoDB:

   产生两个文件

   .frm:这个文件存表结构

   .ibd :存索引和数据

  MYMORY:

   产生一个文件

   .frm:存表结构

数据类型

1.整型

  tinyint、smallint、mediumint、int、bigint

  不同类型存储的范围不一样

存储范围比较

  tinyint:1个字节----8位----2**8----256----0-255----—128-127

  smallint:2个字节----16----2**16----65536----0-65535----—32768-32767

  int:4个字节

  bigint:8个字节

默认情况下整型是否带-号

  create table 表名(id tinyint);

  create table 表名(id smallint);

  create table 表名(id int);

  create table 表名 (id bigint);

   insert into 表名 values(999);

  insert into 表名 values(-129);

ps:默认整型是带符号的

2.浮点型

  小数

float、double、decimal

语法格式:

  float(255,30);255表示存储位数,30代表的是小数位数

  double(255,30);255表示存储位数,30代表的是小数位数

  decimal(65,30);65表示存储位数,30代表的是小数位数

  decimal(8,2)表示最大范围999999.99

三者区别:

  create table 表名(id float(255,30));

  create table 表名 (id double(255,30));

  create table 表名 (id decimal(65,30));

 ps:精准度不一样,decimal》》double》》float

3.字符串

char(4)、varchar(4)

这两个都是用来存储字符串的

char(4):定长的,他就存4位,如果没有超过4位,空格填充到4位,超出报错或者最大存4位

varchar(4):可变长的,不超4位,有几位存几位,超4位报错或者最大存4位

验证

  create table 表名 (id int,name char(4));

  create table 表名(id int, name varchar(4));

想要报错,必须设置成严格模式

查看严格模式:

  1.select @@sql_mode;

  2.show variables like ‘%mode%’ 模糊查询,变量中带有mode的

设置严格模式:

  1.永久修改:需要改配置文件

  2.临时修改:

    set global

    sql_mode=‘STRICT_TRANS_TABLES,PAD_CHAR_TO_FULL_LENGTH’;

研究定长和变长

  insert into 表名 values(2,‘k’);

  insert into 表名 values(2,‘k’);

验证长度:

  select char _length(name) from 表名;

  select char_length(name) from 表名;

ps:大多数情况使用varchar(),存储数据是固定的就用char()

4.日期类型

datetime、date、time、year

  create table t14 (id int,
          reg_time datetime,
          update_time date,
          delete_time time,
          birth year
          );

  insert into 表名 values (1,‘2023-10-01 11:11:11,‘2023-10-01’,‘11:11:11’,'2023');

5.枚举类型

enum、set

enum:多选一

  create table 表名 (id int,hobby enum(‘tangtou’,‘hejiu’,‘xijiao’))

  insert into 表名values(1,‘tangtou’)

set:多选多

  create table 表名 (id int,hobby set(‘tangtou’,‘hejiu’,‘xijiao’))

  insert into 表名values(1,‘tangtou’,‘hejiu’,‘xijiao’)

整型中的数字代表什么意思

char(4)和varchar(4)中的数字表示存储长度

整型的存储范围与括号中数字没有关系,与关键字int tinyint、smallint等关键有关

  create table t11 (id int(3));
  insert into t11 values(99999);

整型中括号中的数字代表的是数据展示的位数

  create table t12 (id int(3) zerofill);
  insert into t12 values(9);

  create table t13 (id int(11) zerofill);
  insert into t13 values(9);

创建表的完成语法结构

create table 表名(

        字段名 数据类型 约束条件 约束条件 约束条件,

        字段名1 数据类型 约束条件 约束条件 约束条件,

        字段名2 数据类型 约束条件 约束条件 约束条件

        );

create table t17 (
        id int,
        name varchar(16),
        age int
        );

注意事项:

1. 字段名和数据类型是必须要写的
2. 约束条件是可选的,有就写,没有不写
3. 最后一个字段的末尾不能加逗号

 

标签:语句,int,create,SQL,数据类型,t1,表名,table,id
From: https://www.cnblogs.com/shanghaipudong/p/17545065.html

相关文章

  • centos7 用docker搭建Mysql主从
    安装Docker和DockerCompose:安装预置:sudoyumupdateyuminstallpython3-pipsudoyumgroupinstall"DevelopmentTools"sudoyuminstallepel-releasesudoyuminstallopenssl-devellibffi-develpython3-devel安装docker:yumremovedockerdocker-clientdocker-......
  • postgresql序列重复问题处理
    问题在执行数据插入时,postgresql提示morethanoneowned sequence found错误。这个和之前文章中写的序列编号错乱不同,是由数据表的一个列生成了多个序列导致的。(常见于两个数据库的拷贝、同步等操作)。如果查看序列,会发现序列中有很多重复的项目,可以执行语句:SELECT'DROPSE......
  • 编译安装MySQL8及常见错误处理
    初稿。。。1.下载https://downloads.mysql.com/archives/community/选择对应版本->选择sourcecode->系统版本一定要选all->拉至最下方-选择mysql-boost-8.0.xx.tar.gz(不下载带有boost的压缩包,需自行安装boost)图片后续添加。 2.解压tar-zxfmysql-boost-8.0.25.tar.gz......
  • HIVE sql 初识笔记
    一、sql1.向hive里的某张表添加数据loaddatalocalinpath'/home/ocdp/hfb/sex.txt'OVERWRITEintotableTD_NP_ENUM_COC_BATCH1_DAY_COLUMN_013;2.查询select*fromTD_NP_ENUM_COC_BATCH1_DAY_COLUMN_013ast;3.清空表truncatetableTD_NP_ENUM_COC_BATCH1_DAY_C......
  • sqlserver数据库清除备份集记录
    1、 通过维护计划清除备份集记录, SqlServer数据库备份到服务器,及删除           https://www.qyyshop.com/info/467759.html 通过维护计划删除没有的或者历史的记录.  ......
  • sqlserver数据库执行维护计划报错
    1、https://blog.csdn.net/Wu7z_/article/details/107506710?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-2-107506710-blog-119634976.235%5Ev38%5Epc_relevant_default_base&depth_1-u......
  • python pandas链接mysql数据库报错
    1. ModuleNotFoundError:Nomodulenamed'mysql'需要安装链接驱动,比如 pipinstallmysqlclient#或pipinstallpymysql#或pipinstallmysql-connector-python2.pandas的 pd.read_sql(ad_first_query,conn)报错: executereturnself.connectable.executio......
  • docker部署mssql
    docker部署SQLServer2022参考微软官方文档Docker:为Linux上的SQLServer安装容器-SQLServer|MicrosoftLearn(安装的是开发人员版)1.请求映像dockerpullmcr.microsoft.com/mssql/server:2022-latest注意:server:xx,xx表示对应的版本(https://hub.docker.com/r/mi......
  • sqlserver报错 "代理XP“组件已作为此服务器安全配置的一部分被关闭。系统管理员可以
    1、https://blog.csdn.net/fallingflower/article/details/128915014想为SQLServer数据库设置自动备份,点击维护计划向导的时候报错“代理XP"组件已作为此服务器安全配置的一部分被关闭。系统管理员可以使用sp_configure来启用"代理XP”。有关启用"代理XP"的详细信息,请参阅SQL......
  • postgresql 统计表数据量并整理表
    selectt1.relnameas表名,pg_size_pretty(pg_relation_size(relid))as大小,(selectcast(reltuplesasINTEGER)frompg_classwhererelkind='r'andrelname=t1.relname)as记录数frompg_stat_user_tablesast1whereschemaname=......