关于MySQL表设计应该注意的问题
关于MySQL表设计应该注意的问题
转自 http://blog.chinaunix.net/u/29134/showart_1316574.html
1、慎重选择表名。
有两种选择:
按照多数开发语言的命名规则。比如(myCustomer)。
按照多数开源思想命名规则。比如(my_customer)。
按照咱们中国人的思想。比如(我的客户)。
第一种有个缺点,很容易忘掉大写的字母。
第二种则比较好,每个WORD间用下划线连接,避免遗忘。
第三种建议不要用,虽然很好记。不觉得解析这个表的时候还需要编码转化吗?我个人理解,大家可以补充。
2.关于编码的设定。
A. GBK/GB2312.(适用于纯中文存储)。
B. UTF8.(适用于中英文混合存储)。
C. LATIN1。(适用于纯英文存储)。
D. 其他的。
3.关于表引擎的选择。
A. MYISAM.(很多人说她的表级锁定会带来好多问题,其实只要设计好对应的表以及写好对应的SQL查询就没有那么大的问题。)
B. INNODB. (如果要用到事务,选择她不会错。至于多数人讲的MASTER/SLAVE结构上用INNODB在MASTER的选择是否正确,就要看你怎么用了。不能一味的疯狂使用INNODB。除非你想要确保非常高可用性,
)
C. CSV. (以前我写过文章,关于这个引擎。个人觉得最主要的是来存储少量数据以及从EXCEL到MYSQL的转换方面会很有用。当然只要涉及到规则数据的导入,她就可以办到。)
D. BLACKHOLE. (觉得最完美的用处在于MASETR/SLAVE上面,并且MASTER是一个临时的专门负责写的机器。不过缺点也很多,会与MYISAM或者INNODB或者其他的引擎有所冲突,这点自己要做个权衡)。
E.  
相关文档:
1、普通索引
普通索引(由关键字KEY或INDEX定义的索引)的唯一任务是加快对数据的访问速度。因此,应该只为那些最经常出现在查询条件(WHEREcolumn=)或排序条件(ORDERBYcolumn)中的数据列创建索引。只要有可能,就应该选择一个数据最整齐、最紧凑的数据列(如一个整数类型的数据列)来创建索引。
2、唯一索引
......
MySQL的每个数据库目录中有一个文件db.opt,该文件主要 用来存储当前数据库的默认字符集和字符校验规则。
eg.default-character-set=latin1
default-collation=latin1_swedish_ci
该文件中存储的是创建数据库时默认的字符集和字符集校验规则,则该数据库在以后创建表时如果没有指定字符集和校验规则,则该表的这两个 ......
MySQL 4.1.12安装篇
[相关软件下载:]
Mysql 4.1.12-win32 -
For Windows ( Mysql 4.1.12-win32.exe ) -- 数据库服务
下载地址:
http://cdgwbn.downloadsky.com:8080/down/mysql-4.1.12-win32.zip
Connector/ODBC
- MySQL ODBC driver ( MyODBC-3.51.11-1-win.exe ) -- 数据源
下载地址:
http://down.21sun.ne ......
tomcat6.0 + JSP + mysql数据库连接池配置
环境:tomcat6.0 ,mySQL 5.021
把mysql驱动包分别放到%TOMCAT_HOME%/lib 和你的应用的WEB-INF\lib文件夹下面
1、修改%TOMCAT_HOME%/conf/server.xml,添加如下内容(部分参数请本地化):
<Context path="/web" docBase="web" ......