king

mysql快速学习数据库和数据表列表篇(十四)

king Mysql 2018-05-21 2133浏览 0

数据库和数据表列表篇


PERL 实例

# 获取当前数据库中所有可用的表。


1

2

3

4

my @tables =$dbh->tables ( );

foreach $table (@tables){

print "Table Name $table\n";

}

PHP 实例:


1

2

3

4

5

$db_list =mysql_list_dbs($con);

while ($db = mysql_fetch_object($db_list))

{

echo $db->Database . "<br/>";

}

MySQL 序列

MySQL序列是一组整数:1, 2, 3, ...

MySQLAUTO_INCREMENT 来定义列。

mysql> CREATE TABLEinsect

-> (

-> id INT UNSIGNED NOT NULLAUTO_INCREMENT,

SQL中的LAST_INSERT_ID() 函数来获取最后的插入表中的自增列的值。

PERL实例

使用mysql_insertid 属性来获取 AUTO_INCREMENT 的值。实例如下:

$dbh->do("INSERT INTO insect (name,date,origin)

VALUES('moth','2001-09-14','windowsill')");

my $seq =$dbh->{mysql_insertid};

PHP实例

PHP 通过 mysql_insert_id ()函数来获取执行的插入SQL语句中 AUTO_INCREMENT列的值。


1

2

3

mysql_query("INSERT INTO insect   (name,date,origin)

VALUES('moth','2001-09-14','windowsill')",$conn_id);

$seq = mysql_insert_id($conn_id);

重置序列

删除了数据表中的多条记录,并对剩下数据的AUTO_INCREMENT列进行重新排列,那么你可以通过删除自增的列,然后重新添加来实现。

mysql> ALTER TABLEinsect DROP id;

mysql> ALTER TABLEinsect

-> ADD id INT UNSIGNED NOT NULLAUTO_INCREMENT FIRST,

-> ADD PRIMARY KEY (id);

一般情况下序列的开始值为1,但如果你需要指定一个开始值100

-> id INT UNSIGNEDNOT NULL AUTO_INCREMENT = 100,

或在表创建成功后,通过以下语句来实现:

mysql> ALTER TABLE tAUTO_INCREMENT = 100;


继续浏览有关 mysql 的文章
发表评论