15. 数据库
小师兄.
语言学习开发路上的一个初学者。
展开
-
MYSQL复习(七)处理重复数据、SQL注入、数据导出,数据导入
1、处理重复数据(1)防止表中重复数据下表中无索引及主键,所以该表允许出现多条重复记录。CREATE TABLE person_tbl( first_name CHAR(20), last_name CHAR(20), sex CHAR(10));为了避免数据重复出现方法一:可以采用添加主键方式如果你设置了双主键,那么那个键的默认值不能为NULL,可设置为NOT NUL...原创 2018-05-17 10:41:39 · 510 阅读 · 0 评论 -
linux下mysql导入导出sql文件
window下1.导出整个数据库mysqldump -u 用户名 -p 数据库名 > 导出的文件名mysqldump -u dbuser -p dbname > dbname.sql2.导出一个表mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名mysqldump -u dbuser -p dbname users> dbname_user...转载 2019-04-22 13:39:44 · 575 阅读 · 0 评论 -
数据库学习(六)联合查询union
联合查询union一个翻译问题的解释:在mysql的手册中,将连接查询(Join)翻译为联合查询;而联合查询(union),没有明确翻译。但:在通常的书籍或文章中,join被翻译为“连接”查询;而union才被翻译为联合查询。基本概念将两个具有相同字段数量的查询语句的结果,以“上下堆叠”的方式,合并为一个查询结果。图示如下:可见:1,两个selec...原创 2019-01-29 17:37:03 · 1593 阅读 · 0 评论 -
数据库学习(五)子查询
子查询基本含义一个select语句,就是一个查询语句:select字段或表达式from数据源where XX条件判断;上述select部分,from部分,where部分,往往都是一些“数据”或数据的组合;比如:from部分,当然就是“表”,或“表的连接结果”,他们也是数据,只是通常为“表数据”;则,这些数据部分,也可以通过一种“预先”的查询结果来代替,比如...原创 2019-01-28 19:52:42 · 450 阅读 · 1 评论 -
数据库学习(四)连接查询
基本概念:就是将两个或两个以上的表,“连接起来”,当做一个数据源,并从中去取得所需要的数据;到底怎么连接?将每一个表的每一行数据两两之间相互对接起来,每次对接的结果都是连接结果的“一行”数据;示例:先看原始数据:然后,将他们进行“连接”:他们其实这样这样的方式连接起来的结果数据:这种没有条件的连接,也可以写成这样:select * from...原创 2019-01-22 20:11:08 · 270 阅读 · 0 评论 -
数据库学习(三)基本查询
基本查询基本语法形式select [all | distinct]字段或表达式列表 【from子句】【where子句】【group by子句】【having】【order by子句】 【limit子句】字段或表达式列表字段必然是来源于“数据源”(表);每个字段或表达式,都可以对其“取别名”:XX as别名from子句:就是数据源;where子句:是对数据源的每...原创 2019-01-22 20:05:54 · 280 阅读 · 0 评论 -
数据库学习(二)数据操作语言:
1、插入数据(增):insert into表名 (字段1,字段2,....)values (值a1,值a2,....),(值b1,值b2,....),(...);replace into表名 (字段1,字段2,....)values (值a1,值a2,....),(值b1,值b2,....),(...);insert into表名set字段1=值1,字段2=值2,......原创 2019-01-22 20:02:36 · 211 阅读 · 0 评论 -
数据库学习(一)三范式
数据库(表)设计3范式:第一范式(1NF):原子性,让每个数据不可再分;第二范式(2NF):唯一性(每行数据不重复),消除部分依赖;定义主键,就做到唯一性;部分依赖就是其他字段只依赖主键的“部分字段”。第三范式(3NF):独立性,消除传递依赖。主键--->字段A,字段B,字段C...又出现:字段A-->字段B此时就出现了传递依赖:主键---&...原创 2019-01-22 19:59:25 · 140 阅读 · 0 评论 -
MYSQL复习(六)索引、临时表、复制表、序列使用
1、索引(1)普通函数创建索引这是最基本的索引,它没有任何限制。它有以下几种创建方式:CREATE INDEX indexName ON mytable(username(length)); 如果是CHAR,VARCHAR类型,length可以小于字段实际长度;如果是BLOB和TEXT类型,必须指定 length。修改表结构(添加索引)ALTER table tableName ADD INDEX...原创 2018-05-16 20:40:06 · 1130 阅读 · 0 评论 -
C语言链接数据库(MYSQL)
一、解释一下函数功能和用法1.mysql_real_connect函数原型:MYSQL *mysql_real_connect(MYSQL *mysql, const char *host, const char *user, const char *passwd, const char *db, unsigned int port, const char *unix_socket, unsign...转载 2018-05-16 19:23:36 · 417 阅读 · 0 评论 -
MYSQL复习(五)正则表达式
1、正则模式(应用于 REGEXP 操作符)SELECT column_listFROM table_nameWHERE string_column REGEXP pattern;(1)操作模式模式描述^匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或 '\r' 之后的位置。$匹配输入字符串的结束位置。如果...原创 2018-05-16 15:58:02 · 1097 阅读 · 0 评论 -
MYSQL复习(四)排序、分组、连接、NULL处理
1、排序(使用 ORDER BY 语句)(1)语法以下是 SQL SELECT 语句使用 ORDER BY 子句将查询数据排序后再返回数据:SELECT field1, field2,...fieldN table_name1, table_name2...ORDER BY field1, [field2...] [ASC [DESC]]你可以使用任何字段来作为排序的条件,从而返回排序后的查询结...原创 2018-05-16 15:43:04 · 213 阅读 · 0 评论 -
MYSQL复习(三)子句(WHERE、UPDATE、DELETE、LIKE、UNION)
本文参考了 http://www.runoob.com/ 点击打开链接学习网的MYSQL数据库知识1、WHERE子句(1)语法:以下是 SQL SELECT 语句使用 WHERE 子句从数据表中读取数据的通用语法:SELECT field1, field2,...fieldN FROM table_name1, table_name2...[WHERE condition1 [AND [OR]]...原创 2018-05-16 11:04:18 · 1177 阅读 · 0 评论 -
MYSQL复习(二)公共表表达式(CTE)
1、MYSQL公共表表达式(CTE):理解:公用表表达式是一个命名的临时结果集,仅在单个SQL语句(例如SELECT,INSERT,UPDATE或DELETE)的执行范围内存在。语法:WITH 公用表名 (column_list) AS ( // column_list涉及到的列名(可选) 查询语句)SELECT * FROM 公用表名;或WITH cte_name (colum...原创 2018-05-15 20:35:03 · 2293 阅读 · 0 评论 -
MYSQL复习(一)安装、创建、修改
1、安装: Centos 系统 yum 命令安装 MySql:yum install mysqlyum install mysql-serveryum install mysql-develWindows系统下安装装MySQL:直接根据安装包,点击.exe文件即可:检查命令:mysqld.exe --console设置用户密码:-u root password "new_password";登...原创 2018-05-14 21:22:27 · 107 阅读 · 0 评论 -
数据库通信协议(Oracle\Sqlserver\Mysql\Sybase\DB2)
1.Oracle-tns-tcp1521(默认端口)协议tns通信协议参考地址:http://wenku.baidu.com/view/0ba5df6925c52cc58bd6bedc.htmlhttp://wenku.baidu.com/view/2864c568011ca300a6c39052.html2.MySQL-mysql-tcp3306(默认端口)协议mysql通信协议参考地址:htt...原创 2018-05-18 20:28:00 · 12285 阅读 · 0 评论 -
MySQL索引背后的数据结构及算法原理
摘要本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MySQL时主要打交道的索引,至于哈希索引和全文索引本文暂不讨论。文章主要内容分为三个部分。第...转载 2019-06-10 16:15:40 · 110 阅读 · 0 评论