mysql全文检索

以base_person为例,基于InnoDB

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
CREATE TABLE `base_person` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`address` text,
`bp_attention` tinyint(4) NOT NULL DEFAULT '0',
`birthday` varchar(10) DEFAULT NULL,
`t_create_time` datetime NOT NULL,
`t_creator` bigint(20) NOT NULL,
`t_deleted` bit(1) NOT NULL,
`domicile` text,
`family_relation` varchar(2) DEFAULT NULL,
`bp_foreign` tinyint(4) NOT NULL DEFAULT '0',
`id_card` varchar(30) NOT NULL,
`bp_id_card_image` longtext,
`id_type` varchar(2) NOT NULL,
`bp_image` longtext,
`marital_status` varchar(2) DEFAULT NULL,
`t_modifier` bigint(20) NOT NULL,
`t_modify_time` datetime NOT NULL,
`name` varchar(50) NOT NULL,
`nation` varchar(16) DEFAULT NULL,
`occupation` varchar(30) DEFAULT NULL,
`phone` varchar(20) NOT NULL,
`political_status` varchar(2) DEFAULT NULL,
`province_id` bigint(20) DEFAULT NULL,
`sex` varchar(2) DEFAULT NULL,
`age` int(11) NOT NULL,
`company_address` varchar(255) NOT NULL,
`company_name` varchar(255) NOT NULL,
`culture` varchar(255) NOT NULL,
`id_card_validity` varchar(255) DEFAULT NULL,
`nationality` varchar(255) NOT NULL,
`position` varchar(255) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `base_person_uindex` (`id_card`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

阅读更多

mysql全文检索

以base_person为例,基于InnoDB

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
CREATE TABLE `base_person` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`address` text,
`bp_attention` tinyint(4) NOT NULL DEFAULT '0',
`birthday` varchar(10) DEFAULT NULL,
`t_create_time` datetime NOT NULL,
`t_creator` bigint(20) NOT NULL,
`t_deleted` bit(1) NOT NULL,
`domicile` text,
`family_relation` varchar(2) DEFAULT NULL,
`bp_foreign` tinyint(4) NOT NULL DEFAULT '0',
`id_card` varchar(30) NOT NULL,
`bp_id_card_image` longtext,
`id_type` varchar(2) NOT NULL,
`bp_image` longtext,
`marital_status` varchar(2) DEFAULT NULL,
`t_modifier` bigint(20) NOT NULL,
`t_modify_time` datetime NOT NULL,
`name` varchar(50) NOT NULL,
`nation` varchar(16) DEFAULT NULL,
`occupation` varchar(30) DEFAULT NULL,
`phone` varchar(20) NOT NULL,
`political_status` varchar(2) DEFAULT NULL,
`province_id` bigint(20) DEFAULT NULL,
`sex` varchar(2) DEFAULT NULL,
`age` int(11) NOT NULL,
`company_address` varchar(255) NOT NULL,
`company_name` varchar(255) NOT NULL,
`culture` varchar(255) NOT NULL,
`id_card_validity` varchar(255) DEFAULT NULL,
`nationality` varchar(255) NOT NULL,
`position` varchar(255) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `base_person_uindex` (`id_card`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

阅读更多

sqlite入门指南

工具

  • sqlite3

常见命令

登录数据库

方式一

1
sqlite3 middleware.db

其中middleware.db为数据库文件名

阅读更多

mysql导出表结构及数据

导出数据库为dbname的表结构(其中用户名为user,密码为pwd,ip为host,端口为port,生成的脚本名为db.sql)

1
mysqldump -hhost -Pport -uuser -ppwd -d dbname >db.sql;

导出数据库为dbname某张表(test)结构

1
mysqldump -hhost -Pport -uuser -ppwd -d dbname test >db.sql;

导出数据库为dbname所有表结构及表数据(不加-d)

1
mysqldump -hhost -Pport -uuser -ppwd dbname >db.sql;

导出数据库为dbname某张表(test)结构及表数据(不加-d)

1
mysqldump -hhost -Pport -uuser -ppwd dbname test >db.sql;

解决Mysql Workbeach 1175 错误

背景

1
2
3
使用MySQL Workbench进行批量更新时,报如下错误
Error Code: 1175
You are using safe...without a WHERE that uses a KEY column

打开Workbench的菜单[Edit]->[Preferences…]

切换到[SQL Editor]页面

把[Forbid UPDATE and DELETE statements without a WHERE clause (safe updates)]之前的对勾去掉

点击[OK]按钮

最后记得要重启一下sql editor,建立一个新的连接就可以了

事务的概念及事务的4个特性

概念

1
事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。

特性

1
事务具有4 个特性:原子性(Atomicity )、一致性(consistency )、隔离性( Isolation )和持续性(Durability )。这4 个特性也简称为ACID 特性。

原子性

1
事务是数据库的逻辑工作单位,事务中包括的诸操作要么都做,要么都不做。

一致性

1
事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。

隔离性

1
一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。

持续性

1
持续性也称永久性(Perfnanence ) ,指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其执行结果有任何影响。

jdbc访问11g数据库

修改url参数,注意10g与11g的区别

1
2
3
4
#10g
jdbc:oracle:thin:@ip:port:sid
#11g
jdbc:oracle:thin:@ip:port/sid