def iterate_csv
puts 'lets iterate!!'
CSV.foreach(@file) { |line|
begin
puts 'loop is on fire...'
# handle line here
rescue CSV::MalformedCSVError => e
puts e
# handle malformed row here...
next
end
}
end
显示
ErrorNr:1064。
如何解决此错误?
答案 0 :(得分:0)
试一下
create table roleusers(username varchar(10) not null primary key );
create table rolemaster(roleno int(2) not null primary key ,
rolename varchar(20));
create table roombed(roomnumber varchar(10),
bednumber varchar(10) not null primary key,
username varchar(10),
foreign key (username) references roleusers (username));
我已经添加了一个roleusers表,所以我可以给你一个有效的脚本。
编辑:对于初学者来说,您做错了什么是主键之前的逗号。
您添加到我们不知道的表上的外键必须引用另一个表上的键,因此在发布的示例中,我添加了一个Roleusers表设置username
作为主键,以便以后可以将其引用为外键键。
您还忘记了在用户名上正确定义varchar。如另一个答案所述。
希望这种解释有所帮助
答案 1 :(得分:0)
您忘记定义username varchar
的大小。
CREATE TABLE roombed
(
roomnumber VARCHAR(10),
bednumber VARCHAR(10) NOT NULL PRIMARY KEY,
username VARCHAR(10),
-- ^--^----------- This
FOREIGN KEY(username) REFERENCES roleusers(username)
);