数据库
不要做程序员的小松鼠
愉快的调bug......
展开
-
MysqlInnodb锁
MysqlInnodb锁乐观锁具体流程读取数据对数据操作事务提交,校验数据读取后是否被修改时间戳判断:数据更新同时更新时间戳版本判断:数据更新升版校验无误写入,否则回滚特点:实际上没有使用数据库的锁适用于乐观的场景,及对数据竞争冲突较少的情况(读频繁)悲观锁共享锁(S)大家都可以加锁,无论是否已经加了共享锁加了锁之后,谁也不能修改,直到所有...原创 2019-11-01 09:30:01 · 258 阅读 · 0 评论 -
docker学习整理四 拉起mysql容器学习简单使用
前几篇文章已经学了简单docker使用,现在用拉起mysql容器的小例子具体操作下。docker拉起mysql容器拉取mysql镜像docker pull mysql后台启动mysql容器docker run -d mysql此时我们用docker ps查看是看不到的,用docker ps -a查看可以,说明该容器在拉起过程,发生了一些错误,可以查看该容器日志。docker logs ...原创 2019-04-23 21:40:22 · 243 阅读 · 0 评论 -
The database profile could not be loaded. Check log for details
dbvisualizer 连数据库怎么都连不上!报错:The database profile could not be loaded. Check log for details。。。。检查了一遍mysql,用workbench可以登上,那密码什么的应该没错。检查了dbvisualizer的配置,应该没有问题,之前用过。。。。思考。。。我用的免安装版,路径有中文!去掉中文原创 2016-10-31 11:09:36 · 3918 阅读 · 0 评论 -
Mysql C API 使用(二)简单的sql语句执行&dbvisualizer设置自动提示
初始化及连接成功简单的sql语句执行查询://查询 if (mysql_query(conn, "select * from newtable")){ print_error(conn, "mysql_query() error"); } else{ MYSQL_RES *res_set; res_set = mysql_store_result(conn); //生成原创 2016-11-08 20:18:25 · 6814 阅读 · 0 评论 -
Mysql C API 使用(一)
本文使用使用mysql 5.7.11+vs2013完成下载安装mysql,可以参考我的博文。将头文件所在目录include添加到项目的包含目录。将库目录放到项目的库目录。向链接器->输入中添加:libmysql.lib;mysqlclient.lib;重点:如果安装的数据库是64位的,把项目属性的平台设为x64代码#include #include static char *ho原创 2016-11-07 19:35:31 · 2122 阅读 · 0 评论 -
个人学习笔记——数据库:范式
第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。简单说,第二范式在第一范式基础上消除了部分依赖,第三范式在第二范式的基础上消除了传递依赖。部分函数依赖:设X,Y是关系R的两个属性集合,存在X→Y,若X’是X的真子集,存在X’→Y,则称Y部分函数依赖于X。 例如 学生表(学号,课程号,年级,学生宿舍)关系中原创 2015-10-11 16:58:38 · 806 阅读 · 0 评论 -
MySQL Workbench 6.3.6 在windows下的 安装与使用(一)
MySQL Workbench是可视化数据库设计、管理的工具,它同时有开源和商业化的两个版本。该软件支持Windows和Linux系统。 应该是GUI TOOLS的升级版。去官网下载压缩包,解压,找到Workbench.exe,打开。启动mysql服务 点击Local instance MySQL 输入密码登录登录后界面 输入测试语句,点击闪电图标,执行语句原创 2016-04-11 16:33:51 · 20040 阅读 · 0 评论 -
Sqlite 不支持的sql语句
1 TOP这是一个大家经常问到的问题,例如在SQLSERVER中可以使用如下语句来取得记录集中的前十条记录:SELECT TOP 10 * FROM [index] ORDER BY indexid DESC; 但是这条SQL语句在SQLite中是无法执行的,应该改为:SELECT * FROM [index] ORDER BY indexid DESC limit 0,10;转载 2016-04-14 19:53:12 · 1327 阅读 · 0 评论 -
MySql5.7.11 for Windows 安装(二)
安装之后,首先创建data文件夹(旧版本本来就有),管理员打开cmd,cd到bin文件夹,输入 mysqld –initialize-insecure –user=mysql,data文件夹就愉快的生成了。安装后退出之后,再次登录时候,遇到密码处回车,就会出错 这就相当于忘记root密码-关闭服务 net stop mysql我们在my.ini中添加一行代码,在[mysqld]下面添加:原创 2016-04-07 20:36:23 · 838 阅读 · 0 评论 -
MySql5.7.11 for Windows 安装精简版(一)
从官网下载压缩包,我下载的是64位的。解压。精简: -Bin下只保留 mysqladmin.exe mysqld.exe mysql.exe Share目录下 保留charsets english 没有data文件夹一会告诉怎么生成添加环境变量,mysql bin文件夹的路径 (如:C:\Program Files\MySQL\MySQL Server 5.6\bin )添加到P原创 2016-04-07 19:54:24 · 12093 阅读 · 2 评论 -
个人学习笔记——数据库:主键和外键
1.主键:关系数据库中,一条记录中有若干属性,若某一个属性组能唯一标识一条记录,这个属性组就是主键。学生表(学号,姓名,性别,班级)每个学生的学号是唯一的,学号是主键成绩表(学号,课程号,成绩)一个属性无法标记这个表,但是学号和课程号两个就可以标记,所以学号和课程号的属性组可以标记这个表。2.外键:如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键。A表中的一个字原创 2015-10-11 11:38:02 · 743 阅读 · 0 评论 -
Sqlite中文乱码问题
向Sqlite中写中文时候,sqlite是用的UTF-8编码的,所以要转码// 获取到的中文数据的转码 但是你从数据库中读数据又要转回来:// 获取到的中文数据的转码 #include "atlbase.h"void Change(string &str) { int len = MultiByteToWideChar(CP_UTF8,0,str.data(),-1,N原创 2016-03-30 21:21:46 · 10042 阅读 · 0 评论 -
VS2013下使用sqlite3
下载sqlite3的源码包和动态链接库( sqlite-dll-win32-x86-3090200.zip)下载地址在cmd下运行下面代码 ”D:\Tools\Microsoft Visual Studio 12.0\VC\bin\lib.exe” /MACHINE:IX86 /DEF:D:\Tools\sqlite\SQLite3.def /OUT:D:\Tools\sqlite\SQLite原创 2015-12-19 11:33:36 · 5892 阅读 · 0 评论