MYSQL基础篇


一、SQL查询语言

1.DDL

DDL语言又称为数据定义语言,主要的操作有create、drop、alter、show。

创建一个student数据库

create database if not exists student;

查询该数据库的创建信息

show create database student;

删除数据库

drop database if exists student;

在对数据库中的表进行一系列操作时首先需要指定一个库

use student;

创建表

create table 表名(字段名 字段类型 字段约束 COMMENT "注释");

在student这个库下创建一个grade表

create table grade (id char(20) primary key COMMENT "学生学号",
                    name varchar(20) not null COMMENT "学生姓名",
                    age int not null COMMENT "学生年龄",
                    grade int not null COMMENT "学生成绩");

查询grade表的字段信息

desc grade;

查询grade表的创建信息

show create table grade;

字段约束有五种:

  1. 主键约束:字段不能为空且不能重复 primary key
  2. 外键约束:该字段在另外的表中一定存在 references grade(age)
  3. 唯一约束:这一列字段不允许重复
  4. 非空约束:字段值不能为空
  5. 默认值约束:给定一个默认值 default

删除grade这个表

drop table grade;

修改表的字段类型:修改grade表的年龄字段类型为char(10)

alter table grade modify age char(10);

修改表的字段名称:修改grade表的id字段为sid字段

alter table grade change id sid char(20);

给grade表添加字段id_card

alter table grade add id_card char(18) unique;

指定字段的添加位置:将card字段添加到name字段的后面

alter table grade add card char(
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
要在MySQL数据库中存储圆形要素,需要使用空间数据类型和空间函数。 MySQL支持几种空间数据类型,包括POINT、LINESTRING、POLYGON、MULTIPOINT、MULTILINESTRING、MULTIPOLYGON和GEOMETRYCOLLECTION。其中,圆形可以用POLYGON类型来表示。一个简单的圆形可以表示为一个由多边形组成的正多边形,多边形的边数越多,表示的圆形越接近圆形。 例如,以下代码创建了一个圆形的多边形: ``` SET @center = GeomFromText('POINT(116.397428 39.90923)'); SET @radius = 1000; SET @poly = CONCAT('POLYGON((', X(@center) + @radius * COS(RADIANS(45)),' ', Y(@center) + @radius * SIN(RADIANS(45)),',', X(@center) + @radius * COS(RADIANS(135)),' ', Y(@center) + @radius * SIN(RADIANS(135)),',', X(@center) + @radius * COS(RADIANS(225)),' ', Y(@center) + @radius * SIN(RADIANS(225)),',', X(@center) + @radius * COS(RADIANS(315)),' ', Y(@center) + @radius * SIN(RADIANS(315)),',', X(@center) + @radius * COS(RADIANS(45)),' ', Y(@center) + @radius * SIN(RADIANS(45)),'))'); ``` 在MySQL中,可以使用空间函数进行圆形的操作,例如计算两个圆形之间的距离、判断一个点是否在圆形内等。 以下是一个例子,计算一个点是否在圆形内: ``` SET @center = GeomFromText('POINT(116.397428 39.90923)'); SET @radius = 1000; SET @point = GeomFromText('POINT(116.383668 39.902188)'); SELECT Contains( GeomFromText(CONCAT('POLYGON((', X(@center) + @radius * COS(RADIANS(45)),' ', Y(@center) + @radius * SIN(RADIANS(45)),',', X(@center) + @radius * COS(RADIANS(135)),' ', Y(@center) + @radius * SIN(RADIANS(135)),',', X(@center) + @radius * COS(RADIANS(225)),' ', Y(@center) + @radius * SIN(RADIANS(225)),',', X(@center) + @radius * COS(RADIANS(315)),' ', Y(@center) + @radius * SIN(RADIANS(315)),',', X(@center) + @radius * COS(RADIANS(45)),' ', Y(@center) + @radius * SIN(RADIANS(45)),' ))'), @point ); ``` 如果返回值为1,则表示点在圆形内,否则不在。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值