MySQL的format函数

mysql的format函数,可以格式化数据为整数或者浮点数。

mysql> select format(100.31111,2);
+---------------------+
| format(100.31111,2) |
+---------------------+
| 100.31              |
+---------------------+
1 row in set (0.00 sec)
 
mysql> select format(100.31111,0);
+---------------------+
| format(100.31111,0) |
+---------------------+
| 100                 |
+---------------------+
1 row in set (0.00 sec)
 
mysql> select format(100.51111,0);
+---------------------+
| format(100.51111,0) |
+---------------------+
| 101                 |
+---------------------+
1 row in set (0.00 sec)

继续阅读

MySQL用命令导出导入数据库

MySQL的的简单数据库备份,
一般来说,都是把一个库mysqldump成一个.sql的脚本文件
当然这个对于小数据来讲的。

导出:

#mysqldump -uroot -p123 db_name > db_bak.sql

上面这条命令的意思是:
数据库用户名为root, 密码为123
要导出的数据库是db_name
导出的SQL文件叫db_bak.sql且此文件在当成目录生成

导入:

#mysql -uroot -p123
mysql> use new_db;
mysql> set names utf8;
mysql> source db_bak.sql;

上面命令的意思是:
登录到mysql服务器
选择要导入的数据库(use new_db)
设置字符编码,不要问为什么,这个是为了防止乱码
编码最好一致,不然会出现莫名的错误
例如:gbk, gb2312, utf8 …
最后一步就是导入了,source db_bak.sql
db_bak.sql这个文件在当前目录。可以使用绝对路径来指明

继续阅读

Java连接MySQL简单例子

例子比较简单,直接看代码

本地MySQL信息:
用户名:root
密码:空
数据库名:blog
其中一个表:wp_posts
 
import java.sql.*;
 
public class JDBCTest {
	public static void main(String[] args){
 
       try { 
	        // 加载驱动程序
	        Class.forName("com.mysql.jdbc.Driver");
 
	        // 连续数据库
	        Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/blog", "root", "");
 
	        // statement用来执行SQL语句
	        Statement statement = conn.createStatement();
 
	        // 要执行的SQL语句
	        String sql = "select post_title, post_date from wp_posts";
 
	        // 结果集
	        ResultSet rs = statement.executeQuery(sql);
 
	        while(rs.next()) {
		         // 输出结果
		         System.out.println(rs.getString("post_title") + "\t" + rs.getString("post_date"));
	        }
 
	        rs.close();
	        conn.close();
 
       } catch(ClassNotFoundException e) {
 
	        System.out.println("Sorry,can`t find the Driver!"); 
	        e.printStackTrace();
 
       } catch(SQLException e) {
 
    	   e.printStackTrace();
 
       } catch(Exception e) {
 
    	   e.printStackTrace();
 
       } 
	} 
}

继续阅读

数据库中的事务是什么

Q:数据库中的事务是什么?

A:事务(transaction)是作为一个单元的一组有序的数据库操作。如果组中的所有操作都成功,则认为事务成功,即使只有一个操作失败,事务也不成功。如果所有操作完成,事务则提交,其修改将作用于所有其他数据库进程。如果一个操作失败,则事务将回滚,该事务所有操作的影响都将取消。

继续阅读

MySQL导入txt文本文件

假如你有一个txt文件(D:\aa.txt),数据格式如下:
11,aaa
22,bbb
33,ccc
44,ddd

想把这个文本文件的数据导到表t中,表t原始如下:
table t:

id c
1 abc
2 efg
3 hij

操作步骤:
只要是运用了MYSQL的LOAD DATA LOCAL INFILE命令
进入MYSQL命令操作界面,选中所要操作的数据库
然后再运行下面命令

mysql> LOAD DATA LOCAL INFILE 'd:/aa.txt' INTO TABLE t FIELDS TERMINATED BY ',' 
    -> LINES TERMINATED BY '\n' (id, c);

操作完之后的表t如下:

id c
1 abc
2 efg
3 hij
111 aaa
222 bbb
333 ccc

继续阅读

MySQL视图简单实例

视图的优点

  1. 视图能简化用户的操作
  2. 视图机制可以使用户以不同的方式查询同一数据
  3. 视图对数据库重构提供了一定程度的逻辑独立性
  4. 视图可以对机密的数据提供安全保护

下面用ECSHOP的数据库作实例

创建视图:

CREATE VIEW goods_view AS 
SELECT g.goods_id, g.goods_name, g.cat_id, c.cat_name FROM `ecs_goods` AS g 
LEFT JOIN ecs_category AS  c  ON g.cat_id=c.cat_id WHERE 1

查询视图:

SELECT goods_id, goods_name, cat_id, cat_name FROM goods_view WHERE 1

修改视图:

ALTER VIEW goods_view AS 
SELECT g.goods_id, g.goods_name, c.cat_name FROM `ecs_goods` AS g 
LEFT JOIN ecs_category AS  c  ON g.cat_id=c.cat_id WHERE 1

删除视图:

DROP VIEW goods_view

查询视图信息:

SHOW CREATE VIEW goods_view

继续阅读

Python操作MySQL简单实例

运行下面的代码,你需要准备:
python运行环境及MySQLdb的python库
MySQL及一个名字“test”的数据库+”table1″表

#!/usr/bin/python
#Filename: aa.py
import os, sys, string
import MySQLdb
 
con = MySQLdb.connect(host='localhost',user='root',passwd='',db='test')
cursor = con.cursor()
 
sql = "SELECT * FROM table1 WHERE 1"
 
cursor.execute(sql)
data = cursor.fetchall()
 
if data:
  for rec in data:
    print rec[0], rec[1]
 
cursor.close()
con.close()

继续阅读