我在帮一个朋友帮忙,他的常规程序员病假了,他给了我一份临时工作。
我正在尝试使用 RAD Studio XE7 Delphi 和 MyDac 为他创建一个数据库。我退休了,自从我使用 Delphi 和那是 XE3 以来已经有一段时间了。我可以创建数据库没问题,但我的表有问题。它告诉我在执行之前的最后一行有语法错误。我无法显示他想要的实际字段,但我在几年前创建了一个表,还为我的妻子使用了一个非常旧版本的 MyDac。我尝试使用我的旧代码,并得到相同的结果。
这是代码:
Form1.MyCommand1 := TMyCommand.Create(nil);
try
Form1.MyCommand1.Connection := Form1.MyConnection1;
Form1.MyCommand1.SQL.Add('CREATE TABLE films (');
Form1.MyCommand1.SQL.Add(' series varchar(25) default NULL, ');
Form1.MyCommand1.SQL.Add(' id int(11) default NULL, ');
Form1.MyCommand1.SQL.Add(' dvd_no int(11) default NULL, ');
Form1.MyCommand1.SQL.Add(' title varchar(40) default NULL, ');
Form1.MyCommand1.SQL.Add(' actor1 varchar(30) default NULL, ');
Form1.MyCommand1.SQL.Add(' actor2 varchar(30) default NULL, ');
Form1.MyCommand1.SQL.Add(' director varchar(40) default NULL, ');
Form1.MyCommand1.SQL.Add(' writer varchar(40) default NULL, ');
Form1.MyCommand1.SQL.Add(' season varchar(30) default NULL, ');
Form1.MyCommand1.SQL.Add(' episodes varchar(30) default NULL, ');
Form1.MyCommand1.SQL.Add(' year varchar(4) default NULL, ');
Form1.MyCommand1.SQL.Add(' genre varchar(30) default NULL, ');
Form1.MyCommand1.SQL.Add(' rating varchar(15) default NULL, ');
Form1.MyCommand1.SQL.Add(' comment longtext default NULL, ');
Form1.MyCommand1.SQL.Add(' seen char(1) default NULL, ');
Form1.MyCommand1.SQL.Add(' multisession char(1) default NULL, ');
Form1.MyCommand1.SQL.Add(');');
Form1.MyCommand1.Execute;
finally
Form1.MyCommand1.Free;
end;
老实说,我已经忘记了“Form1.MyCommand1.SQL.Add(');'); 行的实际用途。我尝试过多次修改它,但没有运气。
我显然在这里做错了什么,但正如我所说,已经很长时间了,80岁了,灰色的细胞已经不是以前的样子了!
任何人都可以帮我一把吗?