通俗易懂的数据库设计三大范式

2014-7-28 liyangweb.com 李杨 MySQL

  为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。

  在实际开发中最为常见的设计范式有三个:

  1.第一范式

阅读全文>>

标签: mysql 三范式

评论(0) 浏览(1794)

mysql中过滤某个字段重复的数据

2014-6-9 liyangweb.com 李杨 MySQL

在使用sql查询中,经常需要去重,去重分两种,一种比较简单的是整条数据都重复,直接使用distinct关键字就可以搞定,如:

select distinct user_name from log

这样可以将log表中所有的user_name取出来,并不会出现重复,

但是如果要同时多查一些其他字段,distinct就不好使了,如:

阅读全文>>

标签: mysql distinct sql去重

评论(0) 浏览(1968)

MySQL数据库MyISAM存储引擎转为Innodb

2014-5-5 liyangweb.com 李杨 MySQL

之前公司的数据库存储引擎全部为MyISAM,数据量和访问量都不是很大,所以一直都没什么问题。但是最近出现了MySQL数据表经常被锁的情况,直接导致了用户连接网站时超时而返回502,于是决定把存储引擎转为Innodb的,以解决MyISAM的表锁问题。下面将操作步骤记录一下。
1、导出my_table数据库的表结构

  1. mysqldump -d -uxxx -p my_data > my_table.sql

其中-d参数表示不导出数据,只导出表结构

阅读全文>>

标签: MyISAM转Innodb

评论(1) 浏览(1680)

群发“站内信”根据不同用户量,不同的数据库设计原理

2014-4-11 liyangweb.com 李杨 MySQL

  在很多网站系统(如CMS系统,SNS系统等),都有“站内信”的功能。
  “站内信”不同于电子邮件,电子邮件通过专门的邮件服务器发送、保存。而“站内信”是系统内的消息,说白了,“站内信”的实现,就是通过数据库插入记录来实现的。
  “站内信”有两个基本功能。一:点到点的消息传送。用户给用户发送站内信;管理员给用户发送站内信。二:点到面的消息传送。管理员给用户(指定满足某一条件的用户群)群发消息。点到点的消息传送很容易实现,本文不再详述。下面将根据不同的情况,来说说“站内信”的群发是如何实现的。
  第一种情况,站内的用户是少量级别的。(几十到上百)

阅读全文>>

标签: 数据库设计

评论(0) 浏览(5773)

mysql字段中带空格的值的查询方法

2014-1-10 liyangweb.com 李杨 MySQL

当我们在使用sql查询的时候,如果数据库中的这个字段的值含有空格(字符串内部,非首尾),或者我们查询的字符串中间有空格,而字段中没有空格。那么我们很有可能就什么都查不到。假如有下面的一张表:

阅读全文>>

标签: SQL mysql

评论(0) 浏览(14604)

SQL取出某字段中所有值为整数的数据

2014-1-6 liyangweb.com 李杨 MySQL

假如有下列表格

num

id  value
 1  100
 2  32.12
 3  45
 4  98.1

如何从表格中取出所有值为整数的数据呢?

灵活的利用取余,轻松搞定:

阅读全文>>

标签: SQL mysql

评论(2) 浏览(4140)

SQL入门教程(总结+目录)

2013-11-20 liyangweb.com 李杨 MySQL

经过一个多月的奋战,得益于丰富的互联网资源,《SQL入门教程》共34篇已经全部发布完成,喜欢可以帮助到广大初学者。

下面我将34篇文章的链接总结起来,方便大家翻阅。

阅读全文>>

标签: mysql SQL入门教程

评论(1) 浏览(2455)

SQL入门教程(34) Delete

2013-11-20 liyangweb.com 李杨 MySQL

在某些情况下,我们会需要直接由数据库中去除一些资料。这可以藉由 DELETE FROM 指令来达成。它的语法是:
DELETE FROM "表格名" WHERE { 条件}
以下我们用个实例说明。假设我们有以下这个表格:

阅读全文>>

标签: mysql SQL入门教程

评论(0) 浏览(2106)

SQL入门教程(33) Update

2013-11-19 liyangweb.com 李杨 MySQL

我们有时候可能会需要修改表格中的资料。在这个时候,我们就需要用到 UPDATE  指令。这个指令的语法是:
UPDATE "表格名"
SET "栏位1" = [ 新值]
WHERE {条件}  
最容易了解这个语法的方式是透过一个例子。假设我们有以下的表格:

阅读全文>>

标签: mysql SQL入门教程

评论(0) 浏览(2280)

SQL入门教程(32) Insert Into

2013-11-18 liyangweb.com 李杨 MySQL

到目前为止,我们学到了将如何把资料由表格中取出。但是这些资料是如何进入这些表格的呢?这就是这一页 ( INSERT INTO)  和下一页 (UPDATE) 要讨论的。
基本上,我们有两种作法可以将资料输入表格中内。一种是一次输入一笔,另一种是一次输入好几笔。我们先来看一次输入一笔的方式。
依照惯例,我们先介绍语法。一次输入一笔资料的语法如下:
INSERT INTO " 表格名" (" 栏位1", " 栏位2", ...) VALUES (" 值1", " 值2", ...)  
假设我们有一个架构如下的表格:

阅读全文>>

标签: mysql SQL入门教程

评论(0) 浏览(2130)

Powered by emlog 冀ICP备13011830号-1