前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >mysql数据库学习笔记(一)

mysql数据库学习笔记(一)

作者头像
全栈程序员站长
发布2022-06-30 10:32:53
2700
发布2022-06-30 10:32:53
举报
文章被收录于专栏:全栈程序员必看

数据库(DB):指长期保存在计算机的存储设备上,按照一定规则组织起来,可以被各种用户或应用共享的数据集合 数据库管理系统(DBMS):管理和操作数据库的大型软件,用于建立、适用和维护数据库, 对数据库进行同意管理和控制,以保证数据库的安全性和完整性。 比如:ORACLE /MYSQL等. 数据库系统(DBS):自在计算机系统中引入数据库候的系统, 通常由计算机硬件、软件、数据库管理系统和数据管理员组成.


授权新用户可以远程链接: mysql>grant all privileges on . to root@192.168.1.22 identified by ‘admin’;

远程连接 mysql>mysql -uroot -padmin -h 192.168.1.22 -D databaseName -P 3306 -D:表示链接数据库是哪一个。 -P:大写的p,表示mysql的端口号.

数据库是数据库对象的集合.

information_schema:主要存储系统中的一些数据库对象信息,如用户表信息、列信息、权限信息 字符集信息和分区信息等. performance_schema:主要存储数据库服务器性能参数 mysql:主要存储系统的用户权限信息 test:mysql自动创建的测试数据库,任何用户都可以适用

####创建数据库并制定编码为utf8 create database 数据库名称 character set utf8;

####查看数据库 show databases;

####使用数据 use 数据库名;

####查看使用那个数据库 select database();

####查看使用那个用户登录Mysql select user();

####删除某个数据库 drop database database_name;


####查看存储引擎 show engines;(show engins \G ;\G表示语义结束,同时显示结果更好一点) 或者 show variables like ‘have%’;

mysql引擎默认为Innodb

在my.ini中可以修改引擎。


####查看数据类型有哪些 help data types;

####查看int类型帮助 help int; help bigint; help decimal;

数据类型: 1.数值型:int/integer/bigint 2.浮点数类型:float/double 3.定点数类型:dec(M,D) / decimal(M,D); M是总位数;D表示小数点后的位数. float/double数据类型存储数据时存储的是最近似值 decimal存储的是字符串,在需要表示金额等货币的时候优先选择decimal数据类型

4.时间日期类型: date 4个字节 datetime 8个字节 timestamp 4个字节 time 3个字节 year 1个字节 如果表示年月日,一般使用date 如果表示年月日时分秒,一般使用datetime 如果需要经常插入或者更新日期为当前系统时间,一般会使用timestamp类型 如果表示时分秒,一般选择time 如果表示年,一般使用year。

代码语言:javascript
复制
如果存储的日期需要让不同时区的用户使用,则可以使用timestamp类型,
因为只有该烈性日期能够与时间时区相对应。

mysql> select curdate(),now(),now(),time(now()),year(now()) \G; *************************** 1. row *************************** curdate(): 2019-07-01 now(): 2019-07-01 21:12:34 now(): 2019-07-01 21:12:34 time(now()): 21:12:34 year(now()): 2019 1 row in set (0.00 sec)

5.字符串类型:char、varchar varchar可变的字符串数据类型.

6.文本字符串数据类型:tinytext/text/mediumtext/longtext

7.binary系列字符串类型:binary(M) varbinary(M)—–可变的二进制文件. 类是于varchar类型. 可以存储二进制数据(比如图片/音乐/视频)

8.存储文本是二进制的大文件 tinyblob/blob/mediumblob/longblob 与text类似,不过可以存储二进制数据.


表:由行和列组成,每一行表示一条唯一的记录,每一列表示这个表中的一个字段 列(属性列,cloumns),在创建的时候需要指定名字和数据类型. 索引(indexes) 指向的列中的数据不能重复 触发器(triggers)指用户定义的事物命令的集合, 当对一个表中的数据进行插入、更新或者删除时这组命令就会自动执行, 可以用来确保数据的完整性和安全性.

####创建表 create table table_name( 属性名 数据类型, 属性名 数据类型, …

代码语言:javascript
复制
属性名  数据类型
);

CREATE TABLE t_dept ( deptno int(11) DEFAULT NULL, dname varchar(20) DEFAULT NULL, loc varchar(40) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8

####查看表结构 desc table_name;

####查看创建表的语句 show create table table_name;

####删除表 drop table table_name; ####清空表中的数据 delete from table_name;

####修改表名 alter table old_table_name rename to new_table_name;

####增加字段(默认是在最后一个字段添加) alter table table_name add 属性名 属性类型;

####在第一个位置添加字段 alter table table_name add 属性名 属性类型 first;

####指定字段之后添加字段 alter table table_name add 属性名 属性类型 after 属性名;

####删除字段 alter table table_name drop 属性名;

####修改字段的数据类型 alter table table_name modify 属性名 新的数据类型;

####修改字段名称(在修改字段名称的时候也可以重新定义字段类型) alter table table_name change 旧属性名 新属性名 旧属性类型或者新的属性类型.

####修改字段的顺序(属性类型的时候可以重新定义) alter table table_name modify 属性名1 属性类型 first|after 属性名2;


表的约束: not null/default/unque/primary key/ auto_increment/foreign key

####创建表的时候指定多列为主键 create table table_name( 属性名 属性类型, … [constraint 约束名] primary key (属性名,属性名…) );

####创建表的时候指定外键 create table table_name( 属性名 属性类型, … constraint 外键约束名 foreign key(属性名1) references 表名(属性名2) ); 属性名1为子表中设置外键的字段名 属性名2为父表中设置主键约束的字段名.

外键指向另一张表的主键. ####创建表的时候指定主外键 mysql> create table t_dept( -> deptno int primary key, -> dname varchar(32), -> loc varchar(32) -> );

CREATE TABLE t_employee ( empno int(11) NOT NULL AUTO_INCREMENT, ename varchar(20) DEFAULT NULL, job varchar(25) DEFAULT NULL, sal double(10,2) DEFAULT NULL, deptno int(11) DEFAULT NULL, PRIMARY KEY (empno), KEY fk_deptno (deptno), CONSTRAINT fk_deptno FOREIGN KEY (deptno) REFERENCES t_dept (deptno) ) ENGINE=InnoDB DEFAULT CHARSET=utf8


mysql索引:

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/100798.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年7月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库管理
数据库管理(Database Management Center,DMC)是一个高效,安全,可靠的数据库一站式管理平台。DMC 提供可视化的库管理、实例会话管理、SQL 窗口、SQL 安全审计、SQL 变更审批、实时监控、操作审计等数据库管理能力,集成诊断优化和数据可视化分析能力,从而简化和规范数据库管理操作、降低数据库运维门槛、提升运维效率。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档