ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

MySQL_1

2022-09-03 16:31:46  阅读:252  来源: 互联网

标签:name -- age 数据类型 MySQL into id


MySQL

1. 注释

2. 单行注释

  • --:两个横线后面就是注释

  • 在Navicat中,ctrl+/ 快速注释

  • 在Navicat中按ctr+shiftl+/选中SQL代码取消注释

3.常用数据类型

  • 整数: int,有符号范围(-2147483648 ,2147483647),无符号范围(0,4294967295),如: int unsigned,代表设置一个无符号的整数;

  • 小整数: tinyint,有符号范围(-128,127),无符号范围(0,255),如: tinyintunsigned,,代表设置一个无符号的小整数

  • 小数: decimal,如decimal(5,2)表示共存5位数,小数占2位,不能超过2位;整数占3位,不能超过三位;

  • 字符串: varchar,如varchar(3)表示最多存3个字符,一个中文或一个字母都占一个字符;

  • 日期时间: datetime,范围(1000-01-01 00:00:00~9999-12-31 23:59:59),如"2020-01-01 12:29:59'。

4.数据库中的元素

  • 数据库-----database
  • 表----table
  • 字段(列)---field
  • 记录(行)---record

5.创建表

  • 语法:create table表名(字段名字段类型,字段名字段类型)
-- 例1:创建表a,字段要求;name(姓名),数据类型: varchar(字符串),长度为10
CREATE TABLE a (name varchar (10));
  • 创建两个字段的表
-- 例2:创建表 b,字段要求: name(姓名),数据类型为varchar(字符串),长度为10;
-- height(身高),数据类型为 decimal(小数),一共5位,其中3位整数,2位小数。
CREATE TABLE b(
name varchar(10),
height DECIMAL(5,2)
);
  • 创建三个字段的表
-- 例3:创建表c,字段要求如下:-- id:数据类型为int(整数)3
-- name姓名:数据类型为varchar (字符串)长度为20,
-- age 年龄:数据类型为tinyint unsigned《无符号小整数);
CREATE TABLE c(
id int,
name VARCHAR(20),
age TINYINT UNSIGNED
);

6.插入数据

  • 语法: insert into表名values(值,值,值);
--往表c插入一条记录
INSERT into c VALUES (0,"张飞',30);
  • 指定字段插入,语法:insert into表名(字段名,字段名) values(值,值);

    --例2:表c 插入一条记录,只设置id 和姓名name
    INSERT into c (id,name) values (3,'曹操');
    
    --例2:表c插入一条记录,只设置id和姓名ageINSERT into c (id,age) values (4,100);
    

7.插入多条记录

  • 多条insert语句,用分号隔开

    -- 例3:表c插入三条记录,写三条 insert语句,语句之间用分号隔开
    INSERT into c values (5,"周瑜',50);
    INSERT into c (id,name) values (6,'鲁肃");
    INSERT into c (name) values ('诸葛亮');
    
  • —条insert插入多条记录

  • 语法:insert into表名values(值,值).(值,值).(值,值);

    -- 例4:表c 插入多条记录,用一条 insert语句,数据之间用逗号隔开
    insert into c values (10,"张三',10),
    (11,‘李四',20),
    (12,'王五',30);
    

8. select查询表

  • 语法: select * from表名;
    • 查询表的所有字段
-- 查询表c的所有字段
select from c;
  • 指定字段名查询
  • 语法:select字段名,字段名from表名;
-- 查询表c的id字段
select id from c;
-- 查询表c的id和age字段
select id,age from c;
-- 查询表c的所有字段,但顺序自定义
select name,id , age from c;

9.update修改数据

  • 语法:update表名set字段=值,字段=值where条件
  • 如果没有where条件代表修改表中所有的记录
-- 例1:修改表c,所有人的年龄(age字段)改为50
update c set age = 50;
  • 带有条件的update语句
-- 例2:修改表 c,
-- id为3的记录,
-- 姓名(name字段)改为‘狄仁杰‘,年龄(age字段)改为20
update c set name ='狄仁杰',age = 20 where id = 3;
  • 另外的例子
-修改name为刘备的记录为李白
update c set name = '李白’ where name = '刘备';
-- id大于10的记录,长一岁
update c set age = age + 1 where id > 10;

10. delete删除记录

  • 语法:'delete from表名where条件'
-- 例1:删除表c中 id 为6的记录
DELETE from c where id = 6;
-- 例1:删除表c 中name为诸葛亮的记录
DELETE from c where name = '诸葛亮';
-- 删除年龄大于50的记录
DELETE from c where age > 50;
-- 删除id小于3的记录
delete from c where id < 3;
-- 删除所有记录
DELETE from c;

11.truncate table删除表的数据

  • truncate table 表名
-- 删除表c中所有的记录
truncate table c;

image-20220901171515894

12.小结

    • insert
    • delete
    • update
    • select

13.删除表

  • 语法—: drop table表名
-- 删除表a
drop table a;
  • 语法二: drop table if exists表名
--如果表a存在,就删除表a ,如果不存在,什么也不做DROP table if EXISTS a;
--如果表b存在,就删除表b,如果不存在,什么也不做DRoP table if EXISTS b;

字段的约束

一、常用约束介绍

  • 主键(primary key):值不能重复,auto_increment代表值自动增长;
  • 非空(not null):此字段不允许填写空值;
  • 惟一(unique):此字段的值不允许重复;
  • 默认值(default):当不填写此值时会使用默认值,如果填写时以填写为准。

二、创建带约束字段的语法格式

create table 表名(
    字段名 数据类型 约束,
    字段名 数据类型 约束
...
);

三、主键与自增长

  • 带有primary key(主键)的字段,值不能重复;
  • auto_increment为自增长;
    • 值会系统自动维护,自动增长
  • 语法
create table 表名(
	字段名 数据类型 primary key auto_increment,
    字段名 数据类型 约束
    ...
);
-- 例1:创建表d,字段要求如下:
-- id:数据类型为
-- int unsigned(无符号整数) ,primary key(主键), auto_increment(自增长);
-- name姓名:数据类型为varchar (字符串)长度为10;
-- age年龄:数据类型为int(整数)﹔
create TABLE d (
id int UNSIGNED PRIMARY key auto_increment,name varchar (10),
age int);
INSERT into d (name,age) values ('张飞',30);
-- 插入的时候指定了id的值
INSERT into d (id,name,age) values (6,'曹操',30);
-- 不指定id的值
INSERT into d (rame,age) values ('周瑜',30);select * from d;
-- 如果不指定字段,主键自增长字段的值可以用占位符,0或者nu11
INSERT into d VALUES (0,'康熙',30);
INSERT into d VALUES (NuLL,'溥仪',50);

16. 非空

  • 非空not null
    • 这个字段必须有值,如果没有值,insert插入会失败
-- 例1:创建表e,字段要求如下:
-- id:数据类型为int unsigned(无符号整数)﹔
-- name 姓名:数据类型为varchar(字符串)长度为10, not nu11(非空),
-- age 年龄:数据类型为int(整数〉﹔
CREATE table e (
id int UNSIGNED,
name var char(10) not nu11,age int);

insert into e values (1,'张三',20);
insert into e (id,age) values (1,20);
-- name非空 错误
select * from e;

17.唯一

  • 唯—unique
    • 字段的约束为唯一,表示字段的值不能重复
-- 例1:创建表f,字段要求如下:
-- id:数据类型为int(整数)
-- name姓名:数据类型为varchar (字符串)长度为10,unique(唯一);
-- age年龄:数据类型为int(整数〉﹔
CREATE TABLE f (
id int,
name var char(10) UNIQUE,
age int);
insert into f VALUES (1,'张三',20);
insert into f VALUES (2,'李四',20);
select * from f;

18.默认值

  • default值
    • 当一个字段有默认值约束,插入数据时,如果指定了值,那么默认值无效,如果没有指定值,会使用默认值
-- 例1:创建表g,字段要求如下:
-- id:数据类型为int(整数);
-- name 姓名:数据类型为varchar (字符串)长度为10;
-- age年龄:数据类型为int(整数),default(默认值) 30;
CREATE TABLE g (
	id int,
	name varchar (10),
    age int DEFAULT 30);
insert into g values ( 1,.'张三',20) ;
-- 插入的时候不指定age的值
insert into g (id, name) values (2,'李四');

select *from g;

标签:name,--,age,数据类型,MySQL,into,id
来源: https://www.cnblogs.com/lzy5967/p/16652917.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有