数据库

MySQL是什么?

妖精的绣舞 提交于 2020-03-10 02:30:58
在学习MySQL之前,首先需要了解数据库和SQL。 如果您已经知道数据库和SQL,那么可以直接跳转到下一章节的学习。 1. 数据库简介 当您想收听最喜欢的歌曲时,可以从智能手机上打开播放列表。在这种情况下,播放列表是数据库就是从数据库中读取出来的。 当您拍摄照片并将其上传到微博,朋友圈等,这样的社交网络中的帐户时,您的照片库就有可能存储在一个数据库中。 当您浏览电子商务网站购买鞋子,衣服等时,您使用购物车就是数据库应用。 数据库无处不在。 那么什么是数据库? 根据定义,数据库只是一个结构化的数据集合。 数据本质上相互关联,例如,产品属于产品类别并与多个标签相关联。这就是为什么要使用关系数据库。 在关系数据库中,我们使用表对产品,类别,标签等数据进行建模。 表包含列和行。它就像一个电子表格(Excel)。 表可以涉及的使用有:一对一,一对多,多对一关系等关系。 因为我们要处理大量的数据,所以需要一种方法来定义数据库,表等,并更有效地处理数据。 另外,我们可以将数据转换成数据信息。 所以就需要SQL来处理了。 2. SQL - 数据库的语言 SQL代表结构化查询语言( Structured Query Language )。SQL是用于访问数据库的标准化语言。 ANSI/SQL定义了SQL标准。当前版本的SQL是 SQL:2003 。每当我们引用SQL标准时,指的就是当前的SQL版本。

Ubuntu下远程访问MySQL数据库

*爱你&永不变心* 提交于 2020-03-10 02:00:17
MySQL远程访问的命令 格式: mysql -h主机地址 -u用户名 -p用户密码 示例: yanggang@host:~$ mysql -h192.168.1.11 -uroot -p123456 ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.1.11' (111) 出现错误!无法连接远程的MySQL数据库 MySQL远程连接数据库,有两种方式: mysql.sock和TCP/IP,前者比后者连接访问速度更快,但仅限于同一台本机, 详见 上述错误,是没有远程访问权限导致的 解决方法: 1 在目标服务器上( 192.168.1.11 ),修改mysql的my.cnf文件: sudo vi /etc/mysql/my.cnf 2 注释掉bind-address,屏蔽其只对本地监听 #bind-address = 127.0.0.1 3 启动MySQL服务,使其修改的配置生效, 详见 sudo restart mysql 配置完了服务器的数据访问权限,此时还是不能远程访问MySQL数据库 这是因为现在还没有对服务器上的数据库或表赋予访问权限(GRANT) 4 在服务器上,登录MySQL数据库 mysql -u root -p123456 5 对数据库top800赋予权限 grant all

基于LayuiIM框架的聊天项目

拈花ヽ惹草 提交于 2020-03-10 00:18:39
1.介绍 技术架构:Springboot+websocket+MySQL+LayuiIM 注意事项: 此项目仅供交流学习,不可用于商业用途,更不可出售本项目源代码。如果出现问题本人概不负责。另外本项目的websocke架构不够完善,所以不建议使用在实际的项目中。 本项目的LayuIM代码未上传,LayuiIM代码是Layui收费的项目,如有需要可以去购买。 本项目所有前端主要JS和后台主要接口都加有注释,所以很容易看得懂 另外本项目如有不足之处,尽请谅解,也欢迎指出。 2.项目截图 1.聊天窗口界面 2.好友列表界面 3.聊天记录界面 4.收到消息提醒样式 5.整体样式: 3.安装教程 1.首先拉取拉取代码 仓库地址 git pull https://gitee.com/zyy_dawn/Layui-IM.git 2.将项目中的数据库文件夹下的layuiim.sql导入到MySQL数据库,数据库名称为layuiim。 4.使用idea打开项目,运行项目 5.从数据库的userinfo表中 选择一个userid(最好是SY1571476959767947449), 然后在 一个 浏览器中访问: http://localhost:8080/layuiim/1571476959767947449 然后再选择一个userid,最好是(SY1571476959767947441), 然后在

MySQL索引事务

耗尽温柔 提交于 2020-03-10 00:10:51
索引 什么是索引 索引是一种特殊的文件,包含着对数据表里所有记录的引用指针。可以对表中的一列或多列创建索引,并指定索引的类型,各类索引有各自的数据结构实现。 索引的作用 数据库中的表、数据、索引之间的关系,类似于书架上的图书、书籍内容和书籍目录的关系。 索引所起的作用类似书籍目录,可用于快速定位、检索数据。 索引对于提高数据库的性能有很大的帮助 使用场景 要考虑对数据库表的某列或某几列创建索引,需要考虑以下几点: 数据量较大,且经常对这些列进行条件查询。 该数据库表的插入操作,及对这些列的修改操作频率较低。 索引会占用额外的磁盘空间。 满足以上条件时,考虑对表中的这些字段创建索引,以提高查询效率。 反之,如果非条件查询列,或经常做插入、修改操作,或磁盘空间不足时,不考虑创建索引。 使用 创建主键约束(PRIMARY KEY)、唯一约束(UNIQUE)、外键约束(FOREIGN KEY)时,会自动创建对应列的索引。 查看索引 show index from 表名 ; 创建索引 对于非主键、非唯一约束、非外键的字段,可以创建普通索引 create index 索引名 on 表名 ( 字段名 ) ; 删除索引 drop index 索引名 on 表名 ; 事务 事务的概念 事务指逻辑上的一组操作,组成这组操作的各个单元,要么全部成功,要么全部失败。 在不同的环境中,都可以有事务

JDBC(二)

醉酒当歌 提交于 2020-03-09 23:07:01
JDBC开发步骤: 1.先创建数据库表(做一些简单的增删改查操作) 2.创建工程 : 右键–> New -->Java Project 3.导入JDBC需要的jar包(oracle的驱动jar) 4.创建各个包: 实体包(entity): 对应数据库表,一个表对应一个实体类。具体操作:属性,构造方法,get()和set(),toString 如:Student.java User.java Book.java Room.java 工具包(util/tools) :公共的类(FrameUtil,BaseFrame),数据库管类(JDBCManager) 如:JDBCManager.java: 静态代码块注册驱动,获取数据库连接(getConnection()),关闭数据库(close()) *视图包(view/ui):*界面 如:LoginFrame.java RegisterFrame.java StudentInfoTableFrame.java AdddStudentInfoDialog.java *数据访问层(dao):*对数据库做增删改查的操作 如:StudentDao.java UserDao.java BookDao.java 常用方法:1.获取所有的信息列表:getStudentList() 2.删除信息:deleteStudentWithSid(int sid) 3

21分钟MySQL基础入门

我是研究僧i 提交于 2020-03-09 20:52:29
这里持续更新修正 开始使用 我下面所有的SQL语句是基于 MySQL 5.6+ 运行。 MySQL 为关系型数据库(Relational Database Management System),一个关系型数据库由一个或数个表格组成, 如图所示的一个表格: 表头(header) : 每一列的名称; 列(col) : 具有相同数据类型的数据的集合; 行(row) : 每一行用来描述某个人/物的具体信息; 值(value) : 行的具体信息, 每个值必须与该列的数据类型相同; 键(key) : 表中用来识别某个特定的人\物的方法, 键的值在当前列中具有唯一性。 登录MySQL mysql -h 127.0.0.1 -u 用户名 -p mysql -D 所选择的数据库名 -h 主机名 -u 用户名 -p mysql> exit # 退出 mysql> quit # 退出 创建数据库 对于表的操作需要先进入库 use 库名; -- 创建一个名为 samp_db 的数据库,数据库字符编码指定为 gbk create database samp_db character set gbk; drop database samp_db; -- 删除 库名为samp_db的库 show databases; -- 显示数据库列表。 use samp_db; -- 选择创建的数据库samp_db

最近花了几个夜晚帮师妹整了一个企业网站

喜你入骨 提交于 2020-03-09 20:37:59
背景: 话说年前有个师妹泪眼汪汪,楚楚动情 地找我帮她弄个企业网站。 不过那时候,每天都苦B地闪着:“加班中,相信不用多久 升职加薪,当上总经理,出任CEO,迎娶白富美,走上人生巅峰,想想还有点小激动呢”。 所以每夜都懒懒地累到不想动,一直拖延到年后,回到广州才动有了写代码的冲动。 想想毕竟是自家师妹,承诺过的还是要还的,所以打算认真负责的花些时间把它整出来。 技术选型: 1:时间考量: 首先这是一个义务型的网站,所以会考虑时间不能占用太多, 尽量满足基础功能,比较异想天开的功能先忽略。 整体前后沟通和小调整,历长1-2周,实际编码时间,大概24小时内,换算起时间,那也是三个工作日,六个夜晚啊。 2:技术选型: MVC还是WebForm: A:时间不能占用过多,开发周期不能拉长。 B:个人能临时提供的服务器是2003,只有.NET 2.0,后期可能会转移到对方购买的虚拟主机,所以部署要方便。 C:友好的URL并不是对方在乎的。 所以综合考虑:WebForm。 像MVC,它的优点是:提供简单友好的URL,对外是一个好的唬头,MVC架构分层思想对新手是一种引导。 3:数据库选型:MSSQL?Access?Sqlite? 用MSSQL,在这种简单的企业站里,大财小用了。 Access:拥有最弱的并发限制,64K,这个在我以前QBlog系列文章里,把它优化上天了,后来还是离开了。

Oracle数据类型

本秂侑毒 提交于 2020-03-09 20:37:39
数据类型 参数 描述 char(n) n=1 to 2000字节 定长字符串,n字节长,如果不指定长度,缺省为1个字节长(一个汉字为2字节),单位是字节 nchar n=1 to 2000字节 根据字符集而定的固定长度字符串,最大长度2000字节,单位是字符(一个汉字为一个字符) varchar2(n) n=1 to 4000字节 可变长的字符串,具体定义时指明最大长度n, 这种数据类型可以放数字、字母以及ASCII码字符集(或者EBCDIC等数据库系统接受的字符集标准)中的所有符号。 如果数据长度没有达到最大值n,Oracle 8i会根据数据大小自动调节字段长度, 如果你的数据前后有空格,Oracle 8i会自动将其删去。VARCHAR2是最常用的数据类型。 可做索引的最大长度3209。 nvarchar2 n=1 to 4000字节 根据字符集而定的可变长度字符串,最大长度4000字节 number(m,n) m=1 to 38 n=-84 to 127 可变长的数值列,允许0、正值及负值,m是所有有效数字的位数,n是小数点以后的位数。 如:number(5,2),则这个字段的最大值是999.99,如果数值超出了位数限制就会被截取多余的位数。 如:number(5,2),但在一行数据中的这个字段输入575.316,则真正保存到字段中的数值是575.32。 如:number(3

ORACLE基本数据类型

五迷三道 提交于 2020-03-09 20:06:54
ORACLE基本数据类型(亦叫内置数据类型 built-in datatypes)可以按类型分为: 字符串类型、数字类型、日期类型、LOB类型、LONG RAW& RAW类型、ROWID & UROWID类型。 字符串类型的数据可依编码方式分成数据库字符集(CHAR/VARCHAR2/CLOB/LONG)和国际字符集(NCHAR/NVARCHAR2/NCLOB)两种。 数据库中的字符串数据都通过字符集将字符转换为数字后(二进制),才存储到数据块中。 通过不同的编码集转换,即便是相同的字符,也可能会转换成不同的二进制编码。 这也是产生乱码的原因。数据库的编码格式一般是在创建数据库时指定的。当然也可以修改数据库的编码。 查看数据库视图所包含的数据类型:SELECT * FROM DBA_TYPES WHERE OWNER IS NULL. 一 字符串类型 字符串数据类型还可以依据存储空间分为固定长度类型(CHAR/NCHAR) 和可变长度类型(VARCHAR2/NVARCHAR2)两种. 所谓固定长度:是指虽然输入的字段值小于该字段的限制长度, 但是实际存储数据时,会先自动向右补足空格后,才将字段值的内容存储到数据块中。 这种方式虽然比较浪费空间,但是存储效率较可变长度类型要好。同时还能减少数据行迁移情况发生。 所谓可变长度:是指当输入的字段值小于该字段的限制长度时

Oracle基本数据类型总结

让人想犯罪 __ 提交于 2020-03-09 20:06:17
此博文参考:https://www.cnblogs.com/HDK2016/p/7071708.html ORACLE基本数据类型(亦叫内置数据类型 built-in datatypes)可以按类型分为:字符串类型、数字类型、日期类型、LOB类型、LONG RAW& RAW类型、ROWID & UROWID类型。 在讲叙字符串类型前,先要讲一下编码。字符串类型的数据可依编码方式分成数据库字符集(CHAR/VARCHAR2/CLOB/LONG)和国际字符集(NCHAR/NVARCHAR2/NCLOB)两种。数据库中的字符串数据都通过字符集将字符转换为数字后(二进制),才存储到数据块中。通过不同的编码集转换,即便是相同的字符,也可能会转换成不同的二进制编码。这也是产生乱码的原因。数据库的编码格式一般是在创建数据库时指定的。当然也可以修改数据库的编码。 查看数据库视图所包含的数据类型:SELECT * FROM DBA_TYPES WHERE OWNER IS NULL. 一 字符串类型 字符串数据类型还可以依据存储空间分为固定长度类型(CHAR/NCHAR) 和可变长度类型(VARCHAR2/NVARCHAR2)两种. 所谓固定长度:是指虽然输入的字段值小于该字段的限制长度,但是实际存储数据时,会先自动向右补足空格后,才将字段值的内容存储到数据块中。这种方式虽然比较浪费空间