我使用的CREATE TABLE(MYSQL PERL)语句不起作用

问题描述 投票:-5回答:1

我的代码如下。代码运行正常到CREATE TABLE语句。

#!/usr/local/bin/perl
print "Content-type: text/html\n\n";

use DBI;


$dbh = DBI->connect("DBI:mysql:DBNAME:DatabaseHost", "DATABASE", 

"PASSWORD");


$dbh->do("CREATE TABLE IF NOT EXISTS tt1 (
id INT(4) NOT NULL AUTO_INCREMENT, 
name VARCHAR(10), 
surname VARCHAR(10),
company_name VARCHAR(20),
building_number VARCHAR(4),
address VARCHAR(100),
postcode VARCHAR(6)
)");

print "table created";
mysql perl
1个回答
6
投票

为了在列上使用AUTO_INCREMENT,必须将其声明为表的主键。

$dbh->do("CREATE TABLE IF NOT EXISTS tt1 (
id INT(4) NOT NULL AUTO_INCREMENT PRIMARY KEY, 
name VARCHAR(10), 
surname VARCHAR(10),
company_name VARCHAR(20),
building_number VARCHAR(4),
address VARCHAR(100),
postcode VARCHAR(6)
)");
© www.soinside.com 2019 - 2024. All rights reserved.