SQL入门到删库

SQL特点:

  1. SQL是综合的而且易学的语言,只有少量的关键字,每一个SQL语句都是关键字组成的,目的就是能够有效读写。
  2. SQL不是特定数据库的专有语言,几乎所有的数据库系统都支持SQL。
  3. SQL简单但是可以进行非常复杂和高级的数据库操作。

SQL组成:

  1. 数据定义语言(data definition language,DDL)
  2. 数据操纵语言(data manipulation language,DML)
  3. 数据控制语言 (data control language,DCL)
  4. 嵌入式和动态SQL规则
  5. SQL调用和会话规则

 

SQL函数列表官方文档地址:SQL FUNC

基本函数列表:

名字描述
ABS()返回绝对值
ACOS()返回弧余弦
ADDDATE()将时间值(间隔)添加到日期值
ADDTIME()加时
AES_DECRYPT()用AES解密
AES_ENCRYPT()使用AES加密
AND&&逻辑与
ANY_VALUE()仅通过值拒绝抑制完整组
ASCII()返回最左边字符的数值
ASIN()回弧正弦
=赋值(作为SET语句,或作为SET从句UPDATE声明)
:=赋值
ASYMMETRIC_DECRYPT()使用私钥或公钥解密密文
ASYMMETRIC_DERIVE()从非对称密钥导出对称密钥
ASYMMETRIC_ENCRYPT()使用私钥或公钥加密明文
ASYMMETRIC_SIGN()从摘要生成签名
ASYMMETRIC_VERIFY()验证签名是否匹配摘要
ATAN()返回弧切线
ATAN2()ATAN()返回两个参数的弧切线
AVG()返回参数的平均值
BENCHMARK()重复执行表达式
BETWEEN ... AND ...检查一个值是否在值的范围内。
BIN()返回包含数字的二进制表示形式的字符串。
BIN_TO_UUID()将二进制UUID转换为字符串
BINARY将字符串转换为二进制字符串
BIT_AND()按位返回
BIT_COUNT()返回设置的位数。
BIT_LENGTH()参数的返回长度(以位为单位)
BIT_OR()按位返回或
BIT_XOR()按位返回XOR
&按位和
~位反演
|按位或
^位异或
CAN_ACCESS_COLUMN()仅限于内部使用
CAN_ACCESS_DATABASE()仅限于内部使用
CAN_ACCESS_TABLE()仅限于内部使用
CAN_ACCESS_VIEW()仅限于内部使用
CASE案例算子
CAST()将某一价值作为某种类型
CEIL()返回不小于参数的最小整数值。
CEILING()返回不小于参数的最小整数值。
CHAR()返回传递的每个整数的字符
CHAR_LENGTH()返回参数中的字符数
CHARACTER_LENGTH()Char_Length()的同义词
CHARSET()返回参数的字符集
COALESCE()返回第一个非空参数。
COERCIBILITY()返回字符串参数的排序规则矫顽力值。
COLLATION()返回字符串参数的排序规则。
COMPRESS()以二进制字符串的形式返回结果
CONCAT()返回连接字符串
CONCAT_WS()用分离器返回级联
CONNECTION_ID()返回连接的连接ID(线程ID)
CONV()不同数基间的转换数
CONVERT()将某一价值作为某种类型
CONVERT_TZ()从一个时区转换到另一个时区
COS()返回余弦
COT()返回余切
COUNT()返回的行数的计数。
COUNT(DISTINCT)返回许多不同值的计数。
CRC32()计算循环冗余校验值
CREATE_ASYMMETRIC_PRIV_KEY()创建私钥
CREATE_ASYMMETRIC_PUB_KEY()创建公钥
CREATE_DH_PARAMETERS()生成共享DH秘密
CREATE_DIGEST()从字符串生成摘要
CUME_DIST()累积分布值
CURDATE()返回当前日期
CURRENT_DATE()CURRENT_DATECURDATE()的同义词
CURRENT_ROLE()返回当前活动角色
CURRENT_TIME()CURRENT_TIMECURTIME()的同义词
CURRENT_TIMESTAMP()CURRENT_TIMESTAMP现在的同义词()
CURRENT_USER()CURRENT_USER已验证的用户名和主机名。
CURTIME()返回当前时间
DATABASE()返回默认(当前)数据库名称
DATE()提取日期或日期时间表达式的日期部分。
DATE_ADD()将时间值(间隔)添加到日期值
DATE_FORMAT()指定格式日期
DATE_SUB()从日期减去时间值(间隔)
DATEDIFF()减去两个日期
DAY()DAYOFMONTH()的同义词
DAYNAME()返回工作日的名称
DAYOFMONTH()返回月份的日期(0-31)
DAYOFWEEK()返回参数的工作日索引
DAYOFYEAR()交还一年中的一天(1-366)
DECODE()解码使用ENCODE()加密的字符串
DEFAULT()返回表列的默认值
DEGREES()将弧度转换为度
DENSE_RANK()当前行在其分区内的秩,没有间隙
DES_DECRYPT()解密字符串
DES_ENCRYPT()加密字符串
DIV整数除法
/除法算子
ELT()在索引号处返回字符串
ENCODE()编码字符串
ENCRYPT()加密字符串
=等算子
<=>空安全等于运算符
EXP()提高到.的力量
EXPORT_SET()返回一个字符串,以便对于值位中的每一个位,您得到一个ON字符串,对于每个未设置的位,您得到一个OFF字符串。
EXTRACT()提取日期的一部分
ExtractValue()使用XPath表示法从xml字符串中提取值
FIELD()后继参数中第一个参数的索引(位置)
FIND_IN_SET()第二个参数中第一个参数的索引(位置)
FIRST_VALUE()窗口框架第一行参数的值
FLOOR()返回不大于参数的最大整数值。
FORMAT()返回格式化为指定小数位数的数字。
FORMAT_BYTES()用单位将字节计数转换为值
FORMAT_PICO_TIME()用单位将时间(以皮秒为单位)转换为值
FOUND_ROWS()对于SELECT WITE子句,如果没有限制子句,则返回的行数。
FROM_BASE64()解码Base 64编码的字符串并返回结果
FROM_DAYS()将日号转换为日期
FROM_UNIXTIME()将Unix时间戳格式化为日期
GeomCollection()从几何构造几何集合
GeometryCollection()从几何构造几何集合
GET_DD_COLUMN_PRIVILEGES()仅限于内部使用
GET_DD_CREATE_OPTIONS()仅限于内部使用
GET_DD_INDEX_SUB_PART_LENGTH()仅限于内部使用
GET_FORMAT()返回日期格式字符串
GET_LOCK()得到一个指定的锁
>大于运算符
>=大于或等于运算符
GREATEST()返回最大的参数
GROUP_CONCAT()返回连接字符串
GROUPING()区分超级聚合汇总行和常规行
GTID_SUBSET()如果子集中的所有GTID也在SET中,则返回true;否则为false。
GTID_SUBTRACT()返回集合中不位于子集中的所有GTID。
HEX()十进制或字符串值的十六进制表示
HOUR()抽出时间
ICU_VERSION()ICU库版本
IF()IF/Else构造
IFNULL()空if/Else构造
IN()检查一个值是否在一组值中。
INET_ATON()返回IP地址的数值
INET_NTOA()从数值返回IP地址
INET6_ATON()返回IPv 6地址的数值。
INET6_NTOA()从数值返回IPv 6地址
INSERT()在指定位置插入不超过指定字符数的子字符串
INSTR()返回子字符串第一次出现的索引。
INTERNAL_AUTO_INCREMENT()仅限于内部使用
INTERNAL_AVG_ROW_LENGTH()仅限于内部使用
INTERNAL_CHECK_TIME()仅限于内部使用
INTERNAL_CHECKSUM()仅限于内部使用
INTERNAL_DATA_FREE()仅限于内部使用
INTERNAL_DATA_LENGTH()仅限于内部使用
INTERNAL_DD_CHAR_LENGTH()仅限于内部使用
INTERNAL_GET_COMMENT_OR_ERROR()仅限于内部使用
INTERNAL_GET_VIEW_WARNING_OR_ERROR()仅限于内部使用
INTERNAL_INDEX_COLUMN_CARDINALITY()仅限于内部使用
INTERNAL_INDEX_LENGTH()仅限于内部使用
INTERNAL_KEYS_DISABLED()仅限于内部使用
INTERNAL_MAX_DATA_LENGTH()仅限于内部使用
INTERNAL_TABLE_ROWS()仅限于内部使用
INTERNAL_UPDATE_TIME()仅限于内部使用
INTERVAL()返回小于第一个参数的索引。
IS对布尔值进行测试
IS_FREE_LOCK()指定的锁是否空闲?
IS_IPV4()参数是否为ipv 4地址
IS_IPV4_COMPAT()参数是否为与ipv 4兼容的地址。
IS_IPV4_MAPPED()参数是否为ipv 4映射的地址。
IS_IPV6()参数是否为IPv 6地址
IS NOT对布尔值进行测试
IS NOT NULL非零值检验
IS NULL零值检验
IS_USED_LOCK()是否正在使用命名锁;如果为真,则返回连接标识符。
IS_UUID()参数是否为有效的UUID
ISNULL()测试参数是否为空
JSON_ARRAY()创建JSON数组
JSON_ARRAY_APPEND()将数据附加到JSON文档
JSON_ARRAY_INSERT()插入JSON数组
JSON_ARRAYAGG()将结果集作为单个JSON数组返回
->在计算PATH之后,从JSON列返回值;等效于JSON_EXCTION()。
JSON_CONTAINS()JSON文档是否包含路径上的特定对象
JSON_CONTAINS_PATH()JSON文档是否包含路径上的任何数据
JSON_DEPTH()JSON文档的最大深度
JSON_EXTRACT()从JSON文档返回数据
->>在计算PATH并取消引用结果之后,从JSON列返回值;等效于JSON_UNQUERE(JSON_EXCTION()。
JSON_INSERT()将数据插入JSON文档
JSON_KEYS()JSON文档中的键数组
JSON_LENGTH()JSON文档中的元素数
JSON_MERGE()(反对8.0.3)合并JSON文档,保留重复的键。JSON_Merge_PREPRE()的弃用同义词
JSON_MERGE_PATCH()合并JSON文档,替换重复键的值
JSON_MERGE_PRESERVE()合并JSON文档,保留重复键
JSON_OBJECT()创建JSON对象
JSON_OBJECTAGG()将结果集作为单个JSON对象返回
JSON_PRETTY()以人类可读的格式打印JSON文档
JSON_QUOTE()引用JSON文档
JSON_REMOVE()从JSON文档中删除数据
JSON_REPLACE()替换JSON文档中的值
JSON_SEARCH()JSON文档中的值路径
JSON_SET()将数据插入JSON文档
JSON_STORAGE_FREE()部分更新后JSON列值的二进制表示中释放的空间
JSON_STORAGE_SIZE()用于存储JSON文档二进制表示的空间
JSON_TABLE()将JSON表达式中的数据作为关系表返回
JSON_TYPE()JSON值类型
JSON_UNQUOTE()取消引用JSON值
JSON_VALID()JSON值是否有效
LAG()分区内行滞后当前行的参数值
LAST_DAY返回这个月的最后一天进行辩论。
LAST_INSERT_ID()最后一次插入的AUTOINCREMENT列的值
LAST_VALUE()窗口框最后一行的参数值
LCASE()lower()的同义词
LEAD()分区中当前行中的行引号参数的值。
LEAST()返回最小的参数
LEFT()返回指定的最左边字符数
<<左移
LENGTH()返回字符串的长度(以字节为单位)。
<小于算子
<=小于或相等算子
LIKE简单模式匹配
LineString()从点值构造列串
LN()返回参数的自然对数
LOAD_FILE()加载命名文件
LOCALTIME()LOCALTIME现在同义词()
LOCALTIMESTAMPLOCALTIMESTAMP()现在同义词()
LOCATE()返回子字符串第一次出现的位置。
LOG()返回第一个参数的自然对数
LOG10()返回参数的基数-10对数。
LOG2()返回参数的基-2对数。
LOWER()返回小写的参数
LPAD()返回字符串参数,左填充指定的字符串。
LTRIM()移除前导空间
MAKE_SET()返回一组以逗号分隔的字符串,这些字符串在位集中具有相应的位。
MAKEDATE()创建一年中的一年和一天的日期
MAKETIME()从小时、分钟、秒开始创造时间
MASTER_POS_WAIT()块,直到从服务器读取并应用到指定位置的所有更新为止。
MATCH执行全文搜索
MAX()返回最大值
MBRContains()一个几何的MBR是否包含另一个几何的MBR
MBRCoveredBy()一个MBR是否被另一个MBR覆盖
MBRCovers()一个MBR是否包括另一个MBR
MBRDisjoint()两个几何图形的MBR是否不相交
MBREquals()两个几何图形的MBR是否相等
MBRIntersects()两个几何的MBR是否相交
MBROverlaps()两个几何图形的MBR是否重叠
MBRTouches()两个几何图形的MBR是否接触
MBRWithin()一个几何的MBR是否在另一个几何的MBR内
MD5()计算MD5校验和
MICROSECOND()从参数返回微秒
MID()返回从指定位置开始的子字符串。
MIN()返回最小值
-负算子
MINUTE()从辩论中返回一分钟
MOD()返回余数
%MOD模算子
MONTH()交还已过日期后的月份。
MONTHNAME()返回月份名称
MultiLineString()从LineString值构造多重LineString
MultiPoint()从点值构造多点
MultiPolygon()从多边形值构造多边形
NAME_CONST()使列具有给定的名称
NOT!否定价值
NOT BETWEEN ... AND ...检查某个值是否不在值的范围内。
!=<>不相等算子
NOT IN()检查某个值是否不在一组值中。
NOT LIKE简单模式匹配的否定
NOT REGEXPREGEXP的否定
NOW()返回当前日期和时间
NTH_VALUE()窗口第N行参数的取值
NTILE()其分区内当前行的桶号。
NULLIF()如果expr1=expr2返回NULL
OCT()返回包含数字八进制表示的字符串。
OCTET_LENGTH()长度()的同义词
OR||逻辑OR
ORD()返回参数最左边字符的字符代码
PASSWORD()计算并返回密码字符串
PERCENT_RANK()百分比秩值
PERIOD_ADD()将一个期间加到一年的一个月中。
PERIOD_DIFF()返回期间之间的月数。
PI()返回pi的值
+加法算子
Point()从坐标构造点
Polygon()从LineString参数构造多边形
POSITION()find()的同义词
POW()将引发的参数返回到指定的电源
POWER()将引发的参数返回到指定的电源
PS_CURRENT_THREAD_ID()当前线程的性能架构线程ID
PS_THREAD_ID()给定线程的性能架构线程ID
QUARTER()从日期参数返回季度
QUOTE()转义在sql语句中使用的参数
RADIANS()返回参数转换为弧度
RAND()返回一个随机浮点值。
RANDOM_BYTES()返回随机字节向量
RANK()在其分区内的当前行的等级,并有空白处。
REGEXP字符串是否匹配正则表达式
REGEXP_INSTR()匹配正则表达式的子字符串启动索引
REGEXP_LIKE()字符串是否匹配正则表达式
REGEXP_REPLACE()替换匹配正则表达式的子字符串
REGEXP_SUBSTR()返回匹配正则表达式的子字符串
RELEASE_ALL_LOCKS()释放所有当前命名锁
RELEASE_LOCK()释放指定的锁
REPEAT()重复指定次数的字符串
REPLACE()替换指定字符串的出现
REVERSE()反转字符串中的字符
RIGHT()返回指定的最右边字符数。
>>右移
RLIKE字符串是否匹配正则表达式
ROLES_GRAPHML()返回表示内存角色子图的GraphML文档
ROUND()绕过争论
ROW_COUNT()更新的行数。
ROW_NUMBER()其分区内的当前行数
RPAD()追加指定次数的字符串
RTRIM()移除尾随空间
SCHEMA()数据库()的同义词
SEC_TO_TIME()将秒转换为“hh:mm:ss”格式
SECOND()返回第二个(0-59)
SESSION_USER()user()的同义词
SHA1()SHA()计算sha-1 160位校验和
SHA2()计算sha-2校验和
SIGN()返回论点的符号
SIN()返回参数的正弦
SLEEP()睡几秒钟
SOUNDEX()返回Soundex字符串
SOUNDS LIKE比较音
SPACE()返回指定空格数的字符串。
SQRT()返回参数的平方根
ST_Area()返回多边形或多边形区域
ST_AsBinary()ST_AsWKB()从内部几何格式转换为WKB
ST_AsGeoJSON()从几何图形生成GeoJSON对象
ST_AsText()ST_AsWKT()从内部几何格式转换为Wkt
ST_Buffer()在给定距离内返回点的几何形状
ST_Buffer_Strategy()生成ST_Buffer()的策略选项
ST_Centroid()返回质心为点
ST_Contains()一个几何学是否包含另一个几何学
ST_ConvexHull()返回几何凸壳
ST_Crosses()一个几何是否与另一个几何学交叉
ST_Difference()两个几何图形的返回点集差
ST_Dimension()几何尺寸
ST_Disjoint()一种几何是否与另一种不相交
ST_Distance()一个几何学与另一个几何学的距离
ST_Distance_Sphere()地球上两个几何之间的最小距离
ST_EndPoint()绳串终点
ST_Envelope()几何返回MBR
ST_Equals()一种几何学是否等于另一种几何学
ST_ExteriorRing()多边形回归外环
ST_GeoHash()生成地理哈希值
ST_GeomCollFromText()ST_GeometryCollectionFromText()ST_GeomCollFromTxt()从Wkt返回几何集合
ST_GeomCollFromWKB()ST_GeometryCollectionFromWKB()从WKB返回几何集合
ST_GeometryN()从几何集合返回N次几何
ST_GeometryType()返回几何类型名称
ST_GeomFromGeoJSON()从GeoJSON对象生成几何学
ST_GeomFromText()ST_GeometryFromText()从Wkt返回几何
ST_GeomFromWKB()ST_GeometryFromWKB()从WKB返回几何
ST_InteriorRingN()多边形的第N个内环
ST_Intersection()两个几何图形的返回点集相交
ST_Intersects()一种几何是否与另一种几何相交
ST_IsClosed()几何是否是封闭的和简单的
ST_IsEmpty()占位符函数
ST_IsSimple()几何是否简单
ST_IsValid()几何是否有效
ST_LatFromGeoHash()从地理哈希值返回纬度
ST_Latitude()返回点纬度
ST_Length()回程长度
ST_LineFromText()ST_LineStringFromText()从Wkt构造LineString
ST_LineFromWKB()ST_LineStringFromWKB()从WKB构造LineString
ST_LongFromGeoHash()从地哈希值返回经度
ST_Longitude()返回点经度
ST_MakeEnvelope()两点周围矩形
ST_MLineFromText()ST_MultiLineStringFromText()从Wkt构造多列串
ST_MLineFromWKB()ST_MultiLineStringFromWKB()从WKB构造多列字符串
ST_MPointFromText()ST_MultiPointFromText()从Wkt构造多点
ST_MPointFromWKB()ST_MultiPointFromWKB()从WKB构造多点
ST_MPolyFromText()ST_MultiPolygonFromText()用Wkt构造多边形
ST_MPolyFromWKB()ST_MultiPolygonFromWKB()从WKB构造多边形
ST_NumGeometries()几何集合中几何图形的返回数
ST_NumInteriorRing()ST_NumInteriorRings()多边形内环的返回数
ST_NumPoints()LineString中的返回点数
ST_Overlaps()一个几何学与另一个几何学重叠
ST_PointFromGeoHash()将地理哈希值转换为点值
ST_PointFromText()Wkt构造点
ST_PointFromWKB()从WKB构造点
ST_PointN()从LineString返回N点
ST_PolyFromText()ST_PolygonFromText()用Wkt构造多边形
ST_PolyFromWKB()ST_PolygonFromWKB()从WKB构造多边形
ST_Simplify()返回简化几何
ST_SRID()返回几何空间参考系统ID
ST_StartPoint()绳串起点
ST_SwapXY()交换X/Y坐标的返回参数
ST_SymDifference()两个几何图形的返回点集对称差
ST_Touches()一个几何图形是否触及另一个几何图形
ST_Transform()几何变换坐标
ST_Union()两个几何图形的返回点集并
ST_Validate()返回验证几何
ST_Within()一个几何学是否在另一个几何学中
ST_X()返回点的X坐标
ST_Y()返回点的Y坐标
STATEMENT_DIGEST()计算语句摘要散列值
STATEMENT_DIGEST_TEXT()计算规范化语句摘要
STD()返回总体标准差
STDDEV()返回总体标准差
STDDEV_POP()返回总体标准差
STDDEV_SAMP()返回样品标准差
STR_TO_DATE()将字符串转换为日期
STRCMP()比较两个字符串
SUBDATE()使用三个参数调用Date_sub()的同义词
SUBSTR()返回指定的子字符串
SUBSTRING()返回指定的子字符串
SUBSTRING_INDEX()在分隔符出现的指定次数之前,从字符串返回子字符串。
SUBTIME()减除次数
SUM()还和
SYSDATE()返回函数执行的时间。
SYSTEM_USER()user()的同义词
TAN()返回参数的切线
TIME()提取传递的表达式的时间部分。
TIME_FORMAT()格式如时间
TIME_TO_SEC()返回转换为秒的参数
TIMEDIFF()减时
*乘法算子
TIMESTAMP()对于单个参数,该函数返回日期或日期时间表达式;对于两个参数,返回参数的和。
TIMESTAMPADD()向日期时间表达式添加间隔
TIMESTAMPDIFF()从日期时间表达式中减去间隔
TO_BASE64()返回转换为基-64字符串的参数。
TO_DAYS()返回转换为天的日期参数。
TO_SECONDS()返回从0开始转换为秒的日期或日期时间参数。
TRIM()拆卸前导和尾随空间
TRUNCATE()截断到指定的小数位数
UCASE()上()的同义词
-更改论点的符号
UNCOMPRESS()解压缩的字符串
UNCOMPRESSED_LENGTH()压缩前返回字符串的长度
UNHEX()返回包含数字十六进制表示的字符串。
UNIX_TIMESTAMP()返回Unix时间戳
UpdateXML()返回替换的XML片段
UPPER()转换为大写
USER()客户端提供的用户名和主机名。
UTC_DATE()返回当前的UTC日期
UTC_TIME()返回当前的UTC时间
UTC_TIMESTAMP()返回当前的UTC日期和时间。
UUID()返回通用唯一标识符(UUID)
UUID_SHORT()返回整数值通用标识符。
UUID_TO_BIN()将字符串UUID转换为二进制
VALIDATE_PASSWORD_STRENGTH()确定密码的强度
VALUES()定义插入期间使用的值
VAR_POP()返回总体标准方差
VAR_SAMP()返回样本方差
VARIANCE()返回总体标准方差
VERSION()返回指示MySQL服务器版本的字符串。
WAIT_FOR_EXECUTED_GTID_SET()等待到给定的GTID在从服务器上执行。
WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS()等待到给定的GTID在从服务器上执行。
WEEK()返回周号
WEEKDAY()返回工作日索引
WEEKOFYEAR()返回日期的日历周(1-53)
WEIGHT_STRING()返回字符串的权重字符串
XOR逻辑异或
YEAR()退年
YEARWEEK()归还年度和每周

操作符列表

名字描述
AND&&逻辑与
=赋值(作为SET语句,或作为SET从句UPDATE声明)
:=赋值
BETWEEN ... AND ...检查一个值是否在值的范围内。
BINARY将字符串转换为二进制字符串
&按位和
~位反演
|按位或
^位异或
CASE案例算子
DIV整数除法
/除法算子
=等算子
<=>空安全等于运算符
>大于运算符
>=大于或等于运算符
IS对布尔值进行测试
IS NOT对布尔值进行测试
IS NOT NULL非零值检验
IS NULL零值检验
->在计算PATH之后,从JSON列返回值;等效于JSON_EXCTION()。
->>在计算PATH并取消引用结果之后,从JSON列返回值;等效于JSON_UNQUERE(JSON_EXCTION()。
<<左移
<小于算子
<=小于或相等算子
LIKE简单模式匹配
-负算子
%MOD模算子
NOT!否定价值
NOT BETWEEN ... AND ...检查某个值是否不在值的范围内。
!=<>不相等算子
NOT LIKE简单模式匹配的否定
NOT REGEXPREGEXP的否定
OR||逻辑OR
+加法算子
REGEXP字符串是否匹配正则表达式
>>右移
RLIKE字符串是否匹配正则表达式
SOUNDS LIKE比较音
*乘法算子
-更改论点的符号
XOR逻辑异或

 

创建数据库格式

create {database | schema} [if not exists] db_name
[default] character set [=] character_name
| [default] collate [=] collation_name

如图所示

[]里面的内容是可选项,例如 if not exists是可选的

| 分隔选项,例如database和schame可以任意选一个

default用于指定默认值

character set用于指定数据库字符集

collate用于指定字符集的校对规则

if not exists用于判断这个数据库是否存在,存在就不创建不报错,如果不指定该选项就会报错

 

选择数据库格式

use db_name;

如图所示

只有选择指定的数据库后才能对该数据库进行一系列操作

 

修改数据库格式

alter {database | schema} [db_name]
alter_specification...

如图所示

 

删除数据库格式

drop {database | schema} [if exists] db_name;

如图所示

如果没有 if exists而且该数据库不存在的话,就会发生错误

 

查看数据库格式

show {databases | schemas}
[link 'pattern' | where expr]

如图所示

 

create table 语句的语法比较多,但是还是主要由 表创建定义 表选项 分区选项组成。

表创建定义主要由表列的名字 列的定义 空值声明 完整性约束或者表索引项组成。

表索引项主要定义表的索引 主键 外键。

表的定义都被放在圆括号中,各个列间彼此用逗号分离。

 

创建表基本格式

create [temporary] table tb_name
(
字段名1 数据类型 [列级完整性约束条件] [默认值]
[,字段名2 数据类型 [列级完整性约束条件] [默认值]] 
[,.....]
[,表级完整性约束条件]
)[engine=引擎类型];

如图所示:

表还可以分成临时表和持久表,若在create table中添加temporary创建的便是临时表,否则创建的便是持久表。

持久表一旦创建便会一直存在,多个用户或者程序可以同时使用。

临时表只对创建的用户可见,当断开数据库时便会被删除。

auto_increment可以为表中的数据类型为整型的列设置自增属性,从1开始递增,每一个表唯一,必须被索引。

通过pramary key设置主键,主键在表中必须唯一,一定要为not null。

 

向表中添加新列

上图给tb_student表添加列city代表城市,不为空 默认为北京 ,添加在地址列的后面。

当然也可以使用first,把列添加到地址列的前面。

 

修改列的数据类型

上图将address列修改为了newaddress列,将数据类型修改为了varchar,允许为null,默认值是北京。

如果将一种类型转化为另外一种类型,可能会丢失原来的数据。

如果要修改的类型和原来的类型不兼容的话,该命令将得不到执行。

如果长度变短的话,可能数据会被截断。

 

修改或者删除列的默认值

 

修改列的数据类型

 

删除列

一旦删除,原本存放的内存也会一起删除。

 

给表添加字段

 

删除表的字段

 

添加主键

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值