mysql 序列问题...
mysql不像oracle那样需要单独创建sequence
但也提供了2种方法来实现,第一种是auto_increment属性
第二种方法是单独建一张表来维护这些值...
请教下这2种方法在维护数据库方面的优劣,假设每个表的序列都是独立的...
用第一种就可以了
第一种系统自动维护
第二种要自己取得这个值,再往别的表里面插入值
oracle里面的sequence,其实这样要自己每次调用nextval来取值,而在mysql里更方便,因为
你可以直接利用mysql里面的auto_increment设置列就可以了,一样的功能。
但是NUMERIC类型的字段不能使用auto_increment属性
原来oracle的脚本中数字类型全部使用的NUMBER,转成mySQL应该对应为NUMERIC
如果要使用auto_increment属性的话,必须是int类型,而int类型最大支持 2147483647
不知道bigint支不支持,稍后试一下...
oracle里面用NUMBER定义,一般这样 NUMBER(20)等等,这个就表示整型啦
对应可以用mysql下的int或bigint等
bigint使用中和int有什么区别么?
毕竟bigint是mysql扩展的,不是标准SQL数据类型?
number(10)可以转换成int(10)么?
int(10)的上限貌似没有number(10)大
如无特殊原因,一般来说,应该直接使用 auto_increment
(某些特殊情况,比如两个表共用一个 序列号,则只能用第二种方法了)
可以是 bigint,
SQL code
Code highlighting produced by Actipro CodeHi
相关问答:
Winform+MySQL做项目,在注重性能的情况下,我该如何去完成这类型的项目呢!
请各位给以提示。
你这个范围太广了,我说2点重要的吧
1.WINFORM程序是单独运行的CS程序,和BS不同,BS的压力始终都在SERVER上的,对C ......
MySql中插入当前时间的该怎么写啊?
now()
SQL code:
sql里是:
getdate()
引用
now()
学习
SQL code:
select now();
SQL code:
TODAY()
?
SQL code:
select now();
/* ......
我现在学习MYSQL,问下mysql储存过程如何建立和使用,最好写成$sql="sql语句",$re=mysql_query($sql);谢谢
建议你先自己看一下文档中的例子。
http://dev.mysql.com/doc/refman/5.1/zh/stored-pro ......
select * from table where '123456789' like '%'+字段表+'%'
这句sql在sqlserver下通过,在mysql下有报错,mysql下如何实现这样的查询呢
SQL code:
select * from table whe ......
大家好:
我是搞C的, 现在想用C 连接MYSQL,但是怎么也连接不了,我的代码如下:
#include <stdio.h>
#include "C:\Program Files\MySQL\MySQL Server 5.0\include\mysql.h"
......